
我正在使用 Linux Mint,其輸出nm-tool
為:
DNS: xxx.xxx.xxx.xxx
DNS: xxx.xxx.xxx.xxx
從哪裡nm-tool
取得這些 DNS IP?
來自作業系統檔案系統中的哪個檔案?
答案1
正如@terdon 評論的那樣,nm-tool
似乎是一個過時的實用程式。
nm-tool
與之通訊NetworkManager
可以從許多可能的來源取得 DNS IP:
- 如果任何網路介面已設定為使用 DHCP,則來自 DHCP 回應(每個 NIC 的 DHCP 回應資料可以作為
/var/lib/NetworkManager/
目錄中的檔案提供) - 來自檔案(
/etc/NetworkManager/system-connections/
如果已設定)(NetworkManager 的「本機」配置儲存後端) - 來自檔案
/etc/network/interfaces
(NetworkManager 的 Debian/Ubuntu 唯讀向後相容於配置儲存後端) - 來自任何 NetworkManager VPN 連接外掛程式(如果正在使用任何 VPN 連線)(VPN 可能會建議自己的 DNS 伺服器,類似於 DHCP,但可能會使用不同的協定來提供資訊)
- 來自任何每個使用者網路配置設定(例如,在具有每個使用者 WiFi 配置的筆記型電腦上),使用使用者選擇的桌面環境提供的任何配置儲存後端進行儲存。例如,
dconf
對於現代 GNOME 3 使用~/.config/dconf/user
.
NetworkManager
然後可以將目前的 DNS 伺服器位址集寫入:
/etc/resolv.conf
如果resolvconf
沒有安裝套件則直接進入- into
/etc/resolvconf/run/interface/NetworkManager
ifresolvconf
已安裝(允許 NetworkManager-aware 和-unaware VPN 解決方案共存,只要兩者都使用resolvconf
而不是直接修改/etc/resolv.conf
) systemd-resolved
或者如果正在使用它可能會直接配置。
如果resolvconf
正在使用,它將更新/etc/resolv.conf
和/或後者的配置(system-resolved
如果後者正在使用)。它還將運行任何腳本/etc/resolvconf/update.d
並/etc/resolvconf/update-libc.d
通知任何有興趣了解系統範圍 DNS 解析器設定何時更改並提供通知程序腳本的進程。
如果正在使用 IPv6 並且rdnssd
已安裝守護程序,則也可以接收附加到 IPv6 路由器通告封包的 IPv6 DNS 伺服器資訊(如果 IPv6 路由器管理員選擇提供該資訊)。根據發行版的不同,rdnssd
可能預設直接使用resolvconf
或修改/etc/resolv.conf
。
如果你有足夠新的 Mint 版本,它可能正在使用網路計劃就像現代 Ubuntu 所做的那樣,它為所有網路配置設定(包括 DNS 設定)添加了一個可能的來源:/etc/netplan/*.yaml
檔案。
所以...是的,這相當複雜!