Dhcp
Dhclient 不更新 /etc/resolv.conf
在 Linux Mint 上,當我查看該
/etc/resolv.conf
文件時,第一條評論指出該/etc/resolv.conf
文件是由resolvconf(8)
.~ $ cat /etc/resolv.conf # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
解釋
resolvconf(8)
手冊頁:resolvconf 程序由 dhclient 等 DHCP 客戶端執行
我跑
dhclient wlan0
。~ $ dhclient wlan0
Dhclient 應該導致
resolvconf
程序更新/etc/resolv.conf
。該/var/lib/dhcp/dhclient.leases
文件驗證我是否能夠租用名稱伺服器的 IP 地址 (192.168.0.6)。~ $ cat /var/lib/dhcp/dhclient.leases lease { interface "wlan0"; . . . option domain-name-servers 192.168.0.6; . . . }
但是,該
/etc/resolv.conf
文件未更新。該/etc/resolv.conf
文件的名稱伺服器為 127.0.1.1。~ $ cat /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 127.0.1.1 search software.eng.apl
中沒有列出名稱伺服器
/etc/network/interfaces
。~ $ cat /etc/network/interfaces # interfaces(5) file used by ifup(8) and ifdown(8) auto lo iface lo inet loopback
我不確定我在這裡缺少什麼
/etc/resolv.conf
來使用從 DHCP 伺服器租用的名稱伺服器來更新文件。DHCP 伺服器是使用 DHCPD 的 Linux CentOS 機器。
Mint 和其他現代發行版
mdns
預設附帶,它使用本地“分散”包裝器包裝正常公共 DNS,從而為您的本地網路啟用 zeroconf 支持。基本上,本地 DNS 伺服器解析它發現的本地網路中的名稱,然後回退到(現在代理的)公共 DNS 以進行公共 Internet 解析,即本地網路之外的名稱。總而言之,您
resolv.conf
是正確且適合這種情況的,如果mdns
在訪問您的 ISP 的名稱伺服器時遇到問題,您應該查看其配置 - 當然,如果您不關心 zeroconf 支持,禁用mdns
(然後可能還有Avahi) 讓您resolv.conf
以傳統方式進行管理。