当前位置: 首页>>技术教程>>正文


dns – 为什么我的 resolv.conf 文件每次都会重新生成?

,

问题描述

我的 /etc/resolv.conf 文件每次都会重新生成,使我在重新连接 3G 调制解调器时失去 Google DNS 服务器。

为了更改 DNS 设置,我查看了 http://code.google.com/intl/fr-FR/speed/public-dns/docs/using.html

我的 dhclient.conf 相当大(58 行),所以我将其发布在 pastebin 上。

但是,这是整个 dhclient.conf,没有注释行或空行:

option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;
send host-name "<hostname>";
request subnet-mask, broadcast-address, time-offset, routers,
    domain-name, domain-name-servers, domain-search, host-name,
    netbios-name-servers, netbios-scope, interface-mtu,
    rfc3442-classless-static-routes, ntp-servers;
prepend domain-name-servers 8.8.8.8, 8.8.4.4;

我使用 wvdial 而不是网络管理器。

最佳回答

在12.04中,默认安装了resolvconf。以下是如何针对一些常见用例进行 DNS 配置更改的快速摘要:

对于使用 ifup 的静态配置,请使用 /etc/network/interfaces 中的 dns-nameserversdns-search 条目。

对于使用 NetworkManager 的静态配置,选择 Automatic (DHCP) addresses only Method 并在连接编辑器的 Additional DNS serversAdditional search domains 字段中输入地址和域名。

要覆盖 resolvconf 的默认配置,请在 /etc/resolvconf/resolv.conf.d/ 中使用 baseheadtail 。仅在这些文件中输入地址和域名作为临时措施,因为它们实际上属于其他地方,如上所述。

不建议禁用 resolvconf,但您可以将符号链接 /etc/resolv.conf 替换为常规文件。

有关详细信息,请参阅 St\xe9phane Graber 的 blog post

次佳回答

如果您只想将 Google DNS 服务器保留在 resolv.conf 中,则可以编辑\n /etc/dhcp3/dhclient.conf 并添加:

prepend domain-name-servers 8.8.8.8;
prepend domain-name-servers 8.8.4.4;

你所拥有的和我在这里展示的唯一区别是,根据你提到的文档,你在一行上有两个 name-servers 。

除非我遗漏了什么,否则你的 dhclient.conf 在这里不是问题。 \n此时,我假设问题与 wvdial 有关。

以下是来自 ubuntuforums 的尝试:

gksudo gedit /etc/ppp/peers/wvdial

删除参数 usepeerdns 并保存文件。\n代码:

gksudo gedit /etc/wvdial.conf

添加这些行:

check DNS = no
auto DNS = no

第三种回答

通过 CLI 设置名称服务器(无需 NetworkManger、使用静态地址或独立于连接)的最佳方法是:

安装 resolvconf 软件包。

跑步

sudo nano /etc/resolvconf/resolv.conf.d/head

(忽略可怕的警告。/etc/resolv.conf 是自动生成的,因此警告就在那里,因此在生成 /etc/resolv.conf 时它将被放入 /etc/resolv.conf 中。)到文件末尾,添加

 nameserver <ip_of_nameserver>

Ctrl x 并回答“是”以保存文件。最后,重新生成 /etc/resolv.conf,以便立即应用更改:

 sudo resolvconf -u

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/14371.html,未经允许,请勿转载。