最近我的 DNS 设置停止工作。它们与我已经使用了一段时间的设置相同,我不知道发生了什么变化。现在每次我重新启动系统时,我都没有互联网连接,“无法访问该网站”我的浏览器出错,内容/etc/resolv.conf
被重置为:
# Generated by NetworkManager
nameserver 127.0.1.1
即使我从“DNS 服务器”字段中删除了以下 DNS 地址,自动生成的文件也不会给我留下工作配置。我必须编写一个脚本来在每次重新启动时更新 resolv.conf,这很好,并且可以工作,但它并不理想,因为我不喜欢不了解问题的真正所在。
我知道我的直接问题是 resolv.conf 文件在每次启动时都会被重置,而且我不知道如何阻止它。我不明白为什么它才刚刚开始发生,也不明白为什么如果没有新的 DNS 服务器出现在 resolv.conf 中,我的互联网就不再工作了。因为这以前不是问题,它似乎只是默认为我的 ISP 的 DNS,但情况似乎不再如此。
当前的设置:
答案1
您的 DNS 配置失败,因为当激活 protonVPN 时,它会删除您的原始/etc/resolv.conf
符号链接,并用自己的文件替换它。
不幸的是,当它发生故障时,它不会重新创建符号链接,从而有效地在/etc/resolv.conf
文件和 resolvconf/之间创建断开连接NetworkManager
。
要纠正这个问题,您必须运行以下命令每次使用(断开)VPN 后恢复 resolvconf 符号链接:
sudo rm /etc/resolv.conf
sudo ln -s /run/resolvconf/resolv.conf /etc/resolv.conf
我还会向 protonVPN 开具罚单,因为这是一个相对已知的问题,并且在某些 VPN 提供商的软件中很常见。
对于更熟悉 Linux 的人来说,另一种可能的(临时)解决方法是不依赖 NetWorkManager 和 resolvconf,并直接处理接口的手动配置。