Dhcp

Dhclient 不更新 /etc/resolv.conf

  • January 12, 2022

在 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以傳統方式進行管理。

另見例如https://help.ubuntu.com/community/HowToZeroconf

引用自:https://unix.stackexchange.com/questions/359253