Linux

如果在主機上找到名為 bind9/dnsmasq 的名稱,則阻止 resolvconf 包分配 localhost

  • January 11, 2022

Resolvconf 是一個用於處理不同特定情況的軟體包,例如帶有 dhcp、vpn 的區域網路以及其他每個人都嘗試手動更改 /etc/resolv.conf 文件的情況。

它有一個算法,其中通過介面列表獲得最大優先級,例如 tun 和 dhcp 客戶端通過 ppp 連接。

/etc/resolvconf/interface-order

# interface-order(5)
lo.inet6
lo.inet
lo.@(dnsmasq|pdnsd)
lo.!(pdns|pdns-recursor)
lo
tun*
tap*
hso*
em+([0-9])?(_+([0-9]))*
p+([0-9])p+([0-9])?(_+([0-9]))*
eth*([^.]).inet6
eth*([^.]).ip6.@(dhclient|dhcpcd|pump|udhcpc)
eth*([^.]).inet
eth*([^.]).@(dhclient|dhcpcd|pump|udhcpc)
eth*
@(ath|wifi|wlan)*([^.]).inet6
@(ath|wifi|wlan)*([^.]).ip6.@(dhclient|dhcpcd|pump|udhcpc)
@(ath|wifi|wlan)*([^.]).inet
@(ath|wifi|wlan)*([^.]).@(dhclient|dhcpcd|pump|udhcpc)
@(ath|wifi|wlan)*
ppp*
*

我的問題是,如果你有 resolvconf 包並且你還安裝了一個像 NAMED BIND9 或 DNSMASQ 這樣的 DNS 伺服器,resolvconf 軟體會自動將最高優先級分配給 127.0.0.1..

好吧,我不希望這樣,我希望 resolvconf 包正常工作,就好像沒有安裝 bind9/dnsmasq 一樣。但是我在 resolvconf 軟體配置中找不到像“忽略本地 dns 作為可能的 dns 選擇”這樣的選項。

很好,經過一些嘗試,我找到了解決方案……

通過註釋 interface-order 文件中的所有 localhost 行,特別是這兩行:

# lo.@(dnsmasq|pdnsd)
# lo.!(pdns|pdns-recursor)

一切都按要求進行;)

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