关于为什么 DNS resolv.conf 停止工作的问题

Nat*_*ate 4 linux dns debian vpn resolv.conf

我有一个关于为什么我的 DNS 设置混乱的问题。我已经解决了这个问题(我认为),但我很好奇为什么会发生这种情况。我的 Linux Mint 18.3 笔记本电脑一直运行完美。我最近从校外将 PulseSecure to VPN 安装到我大学的安全网络中。这几天效果很好。然后突然间,我家里的互联网停止了。无线已连接,但无法解析主机。经过一番谷歌搜索(从另一台计算机)后,我发现我可以 ping 通我的网关、一些 IP 地址和 Google DNS 8.8.8.8,但不能 ping 通网站名称。

我遵循了一些互联网建议并检查了我的 resolv.conf 文件并看到

~ $ cat /etc/resolv.conf
search colostate.edu
nameserver 129.82.103.91
nameserver 129.82.103.79
Run Code Online (Sandbox Code Playgroud)

这些是 CSU 内部 IP 地址。我在 resolv.conf 中添加了两行

nameserver 8.8.8.8
nameserver 8.8.4.4
Run Code Online (Sandbox Code Playgroud)

然后,为了确保更改生效,我打开了家庭互联网的网络连接,转到 IPv4 设置,将方法更改为仅自动 DHC 地址,并将 DNS 服务器设置为 8.8.8.8(再次按照我找到的互联网建议)。目前一切进展顺利,尽管感觉有点迟缓。

我注意到,当我刚才通过pulse secure登录我的VPN时,resolv.conf又恢复到原来的形式

search colostate.edu
nameserver 129.82.103.91
nameserver 129.82.103.79
Run Code Online (Sandbox Code Playgroud)

就像刚刚被覆盖一样。我担心我的互联网现在将不再工作,我每次都必须修复这个问题。

Rui*_*iro 5

使用某些 VPN 软件解决方案和 之间存在一个已知的交互问题resolvconf

resolvconf变成/etc/resolv.conf符号链接并使用另一个位置来解析 下的 DNS /run/resolvconf/resolv.conf

在您的情况下,VPN 会删除并替换/etc/resolv.conf,而不考虑当前设置。每次使用 VPN 后都必须恢复此类符号链接,或者作为替代方法,删除该包resolvconf作为临时措施。

我也会向 VPN 软件制造商提交错误。

  • 请参阅“man resolvconf”。基本上,您的系统有一个实用程序脚本,用于收集并保留来自各种来源(静态设置、DHCP、活动 VPN 连接)的 DNS 设置,并在您激活/停用网络连接或 VPN 时选择最合适的设置。看来您的 PulseSecure VPN 跳过了此机制,而是直接重写 `/etc/resolv.conf`。这并不理想:它应该将其 DNS 设置提交给 `resolvconf` 脚本,并且只有 `resolvconf` 脚本应该修改实际的 `/etc/resolv.conf` 文件。 (2认同)