Dns
NetworkManager 應該只詢問“頂級”DNS 伺服器
我在一個 WLAN 中,它通過他們的 DNS 伺服器審查網站。
因為我不想被審查,所以我使用 VPN(OpenVPN,NetworkManager)來處理我的所有流量。
如果我嘗試解析域,NetworkManager 的 dnsmasq 會詢問他們的 DNS 伺服器和我的 (VPN)。現在審查取決於哪個 DNS 伺服器首先響應。
我該如何擺脫它?(IMO)(在技術上)沒有必要詢問他們的 DNS 伺服器,因為 VPN 位於 WLAN 的“頂部”。
$$ Edit $$按照要求:
- NetworkManager 使用 dnsmasq。
pgrep dnsmasq -a
2766 /usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts --bind-interfaces --pid-file=/var/run/NetworkManager/dnsmasq.pid --listen-address=127.0.1.1 --cache-size=0 --conf-file=/dev/null --proxy-dnssec --enable-dbus=org.freedesktop.NetworkManager.dnsmasq --conf-dir=/etc/NetworkManager/dnsmasq.d
cat /etc/resolv.conf
nameserver 127.0.1.1
- 我根本不使用 dhclient。
如果您不希望區域網路中的 DNS 伺服器,請在該 WLAN 上配置 ipv4.no-auto-dns。你不需要VPN來避開有限的DNS伺服器,只需配置一個像’ipv4.dns=8.8.8.8’這樣的靜態地址。
最近的版本也有 ipv4.dns-priority。如果您將 VPN 的優先級設置為負數,則不會添加來自其他連接的 DNS 伺服器。然後專門使用 VPN 名稱伺服器。
看
man nm-settings
正如thaller
ipv4.dns-priority
所說,您可以為 VPN 連接的參數設置一個負數。這樣做,只使用 VPN DNS 設置,包括 DNS 伺服器和搜尋域。此參數不可從網路設置 UI 配置,但您可以使用NetworkManager命令行工具nmcli 進行設置。
$ nmcli connection modify <vpn_connection_name> ipv4.dns-priority -50
更多資訊: