每个域的 DNS 服务器

每个域的 DNS 服务器

我的笔记本电脑运行的是 Ubuntu 20.10。它连接到一个具有相当正常互联网连接的网络 - 路由器提供 DHCP、DNS 等。

但是网络上的另一台主机(不是路由器)提供了到另一个网络的 VPN 连接。我已配置路由器,以便到该远程网络的流量通过提供 VPN 连接的主机反弹。这一切都正常。

现在,我正在尝试为该远程网络配置 DNS。出于各种原因(速度慢、不总是在线、不私密等等),我不希望所有 DNS 查询都通过 VPN 进行。但我想将特定域(称为example.com)的查询配置为通过 VPN 上的 DNS 服务器进行。

我仔细研究了路由器设置,但似乎无法在路由器上配置每个域的 DNS 服务器。所以我必须在笔记本电脑上进行配置。

在最新版本的 Ubuntu 中我该如何做?基本上我希望所有 DNS 查询都由我的 DHCP 租约中提供的 DNS 服务器处理,但 example.com 除外,我希望由 192.168.88.4 处理。

我该从哪里开始查找?据我所知,本地 DNS 服务器由 systemd-resolved 提供;我在其文档中没有看到任何关于特定域服务器的提及。

我知道我可以配置 dnsmasq 来执行此操作;我应该停止 systemd-resolved 并配置 dnsmasq 来提供本地 DNS 服务吗?在这种情况下,我该如何告诉 NetworkManager(或者现在是 netplan?)在获得 DHCP 租约时更新 dnsmasq 配置?

或者有没有办法直接告诉 NetworkManager 这个信息?

答案1

systemd-resolved有一个拆分 DNS可以执行此操作的功能。

https://fedoramagazine.org/systemd-resolved-introduction-to-split-dns/

相关内容