静态 IP 但动态名称服务器?

静态 IP 但动态名称服务器?

尝试更改 Ubuntu-13.04 服务器的名称服务器设置时我遇到了这种情况!

在/etc/网络/接口:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
    address    192.168.1.100
    netmask    255.255.255.0
    gateway    192.168.1.254
    dns-nameservers 10.1.1.20, 8.8.8.8
    dns-search null.local

/etc/resolv.conf:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 10.1.1.20
nameserver 8.8.8.8
search null.local

…所以我不得不更改 DNS 地址…

dns-nameservers 10.1.1.21 10.1.1.22

…然后回收 eth0 以便网络配置重建自身:

~$ sudo ifdown eth0 && sudo ifup eth0

但这是我得到的 /etc/resolv.conf:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 172.31.0.5
nameserver 10.1.1.21
nameserver 10.1.1.22
search wth.local null.local

仅供参考,172.31.0.5 位于“邻居”网络中,显然是“wth.local”域的 DNS/DHCP 服务器,我无法访问该域,而该域在我这边“泄漏”了信息!(这种情况是暂时的,但目前必须保持这种状态)

我无法解释并希望理解的是为什么?为什么如果我专门配置静态接口,DHCP 进程就会出现并干扰 DNS?这是一台服务器,我在另外两台服务器上进行了相同的更改,没有任何问题。

答案1

找到了!

由于 Ubuntu 服务器在安装时通过 DHCP 自动配置,因此它会创建/run/resolvconf/interface/eth0.dhclient包含有关域的信息的文件wth.local

domain wth.local
nameserver 172.31.0.5

配置静态 IP 不会删除该文件,当您使用以下命令重新启动网络时:

~$ sudo ifdown eth0 && sudo ifup eth0

,DNS 处理程序resolv.conf使用eth0.dhclienteth0.inet文件重建其文件!

我的猜测是,在我之前的 SA 没有费心去编辑文件resolv.conf;我在 3 台服务器上的 1 台上遇到了这个问题,我以为这是一个错误,13.04但是我在全新安装后复制了同样的问题14.04...

案子结了!

相关内容