NetworkManager 应该只询问“顶级”DNS 服务器

NetworkManager 应该只询问“顶级”DNS 服务器

我所在的 WLAN 正在通过其 DNS 服务器审查网站。

由于我不想受到审查,因此我对所有流量使用 VPN(OpenVPN、NetworkManager)。

如果我尝试解析一个域,NetworkManager 的 dnsmasq 会询问他们的 DNS 服务器和我的 (VPN)。现在的审查取决于哪个 DNS 服务器首先响应。

我该如何摆脱它? (IMO)(从技术上来说)无需询问他们的 DNS 服务器,因为 VPN 位于 WLAN“之上”。

[编辑]根据要求:

  • 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。

答案1

如果您不需要 LAN 中的 DNS 服务器,请在该 WLAN 上配置 ipv4.no-auto-dns。您不需要 VPN 来避开有限的 DNS 服务器,只需配置一个静态地址,如“ipv4.dns=8.8.8.8”。

最近的版本还具有 ipv4.dns-priority。如果您将 VPN 的优先级设置为负数,则不会添加其他连接的 DNS 服务器。然后,VPN 名称服务器将被独占使用。

man nm-settings

答案2

作为塔勒ipv4.dns-priority也就是说,您可以将VPN 连接的参数设置为负数。执行此操作时,仅使用 VPN DNS 设置,包括 DNS 服务器和搜索域。

该参数无法从网络设置 UI 进行配置,但您可以使用网络管理器命令行工具,纳米克利

$ nmcli connection modify <vpn_connection_name> ipv4.dns-priority -50

更多信息:

相关内容