我设置了 /etc/resolv.conf
domain example.local
nameserver 127.0.0.1
nameserver 192.168.1.108
但是,几天后..!?
变了!!
nameserver 192.168.1.1
192.168.1.1 是 DHCPD
如何停止改变它?
答案1
机器是否从 DHCP 获取 IP 地址?
如果是的话,resolv.conf
将由 DHCP 客户端移交,以反映其收到的租约中的详细信息。
查看您正在使用的 DHCP 客户端的手册页。例如,dhcpcd
有一个-R
标志可以阻止此行为。
答案2
您的机器上很可能安装了 dhcp-client 服务,它会使用/etc/resolv.conf
从 dhcp 服务器接收的值进行重写。
答案3
为了防止 dhcp 客户端重写你的设置,你也可以将其放入 dhclient.conf [ debian 中的 /etc/dhcp3,如果你使用 isc 的 dhcp3-client ]
supersede domain-name "your.domain.name";
supersede domain-name-servers 127.0.0.1, 192.168.1.108 ;
对于其他 dhcp 客户端来说,这可能看起来有所不同。
答案4
在我的 Debian Squeeze 上
打开文件:/etc/dhcp/dhclient.conf
$ sudo gedit /etc/dhcp/dhclient.conf
删除行中的注释:
# prepend domain-name-servers 127.0.0.1;
到
prepend domain-name-servers 8.8.8.8, 8.8.4.4;
注意结尾的分号