我的本地网络上有一台服务器,我使用此 /etc/hosts 条目解析其名称:
192.68.0.4 localserver
这很有效,因此“ping localserver”或“ssh localserver”将解析为 192.68.0.4 并正常工作。现在,当我不在家时(即不在我的本地 wifi 网络上),我需要使用其 FQDN localserver.mydomain.com 访问服务器。
这在 Ubuntu 16.04 中运行良好。由于 /etc/hosts 条目仅指定了简单名称“localserver”,而不是完整的 FQDN“localserver.mydomain.com”,因此执行“ssh localserver.mydomain.com”将使用我所连接的任何网络上配置的任何 DNS 服务器(例如 Google Public、Cloudflare)来解析 localserver.mydomain.com 并获取其公共 IP。
问题是,这在 18.04 上不再有效,可能是因为 systemd-resolved。现在,甚至 localserver.mydomain.com 也会使用 /etc/hosts 解析为 192.168.0.4,这不好,因为我需要使用 DNS 将该 FQDN 解析为公共 IP,而不是 /etc/hosts。
有没有办法配置 sytsemd-resolved 来执行此操作?或者我必须切换回 dnsmasq?有时我需要访问