在 Ubuntu 13.04 中连接到 VPN 时出现 DNS 问题

在 Ubuntu 13.04 中连接到 VPN 时出现 DNS 问题

我正在使用 vpnc 连接到 Cisco VPN 服务器。连接后,我的机器无法自动从新 VPN 更新 DNS 设置。我通过临时更改 /etc/resolv.conf 并使用正确的名称服务器和搜索域进行了测试,一切正常。这显然不是一个长期的解决方案,所以我在网络管理器中的 VPN 设置中添加了一个额外的 DNS 服务器和搜索域。有了这些设置,resolvconf 确实添加了搜索域,但没有添加 DNS IP,我仍然无法进行任何查找。

从这里开始,我下一步该如何进行配置或故障排除?

答案1

首先确保 /etc/resolvconf/resolv.conf.d 中的任何文件中没有以 开头的行nameserver。如果 /etc/resolvconf/resolv.conf.d/tail 是指向目标 的符号链接original,请使其指向/dev/null

第二步,断开 VPN。编辑/etc/NetworkManager/NetworkManager.conf

$ sudo gedit /etc/NetworkManager/NetworkManager.conf

并注释掉

dns=dnsmasq

(即添加一个,#使其看起来像下面这样)

#dns=dnsmasq

进而

sudo restart network-manager

答案2

尝试检查您的/etc/resolv.conf有符号链接到/运行/resolvconf/resolv.conf。它帮我解决了这个问题。

检查它是否有符号链接:

ls -la /etc/resolv.conf

示例输出(如果有符号链接):

lrwxrwxrwx 1 root root 27 Jun 30 22:22 resolv.conf -> /run/resolvconf/resolv.conf

否则,删除或备份现有的 /etc/resolv.conf,然后:

sudo ln -s /run/resolvconf/resolv.conf /etc/resolv.conf

相关内容