使用 systemd-resolve 更改 DNS 名称服务器不会持久

使用 systemd-resolve 更改 DNS 名称服务器不会持久

首先我要说的是,我不确定我正在运行的是 Ubuntu 服务器还是 Ubuntu 桌面,也就是说,我的“服务器”是在 VPS 上运行的。

以下是输出lsb_release -a

No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.3 LTS
Release:    20.04
Codename:   focal

我正在尝试覆盖默认的 DNS 名称服务器,并且已经成功了一半。我已运行systemd-resolve --interface eth0 --set-dns 10.13.13.5 --set-domain test.test将 10.13.13.5 设置为域 test.test 的名称服务器,然后运行service systemd-resolved restart。然后我可以 ping test.test 域上的设备,让它们解析到正确的 IP 地址。

我可以通过执行以下操作来确认 10.13.13.5 名称服务器是否生效systemd-resolve --status

结果是这样的:

Link 2 (eth0)
      Current Scopes: DNS            
DefaultRoute setting: yes            
       LLMNR setting: yes            
MulticastDNS setting: no             
  DNSOverTLS setting: no             
      DNSSEC setting: no             
    DNSSEC supported: no             
  Current DNS Server: 10.13.13.5   
         DNS Servers: 213.133.100.100
                      213.133.98.98  
                      213.133.99.99  
          DNS Domain: test.test

但几分钟后,服务器将无法将域名解析为 test.test 域上的任何 IP 地址。--status上面的命令现在如下所示:

Link 2 (eth0)
      Current Scopes: DNS            
DefaultRoute setting: yes            
       LLMNR setting: yes            
MulticastDNS setting: no             
  DNSOverTLS setting: no             
      DNSSEC setting: no             
    DNSSEC supported: no             
  Current DNS Server: 213.133.98.98  
         DNS Servers: 10.13.13.5     
                      213.133.100.100
                      213.133.98.98  
                      213.133.99.99  
          DNS Domain: test.test        

很明显这里的问题是什么,Current DNS Server正在被改变......但我不确定是什么改变了它,我也不确定如何阻止它。

我的/etc/resolv.conf文件链接到/run/resolvconf/resolv.conf

lrwxrwxrwx 1 root root 29 May 19 15:30 /etc/resolv.conf -> ../run/resolvconf/resolv.conf

我想我可以稍微掌握它的工作方式,尽管它确实让我有点困惑...存根是 127.0.0.53,它是您在中指定的名称服务器的内部 DNS 解析器/run/systemd/resolve/resolv.conf,但我不确定这是否正确。

我将非常感谢任何帮助,因为要花几分钟来解决问题然后它们就停止工作了,这真是太烦人了!

提前致谢。

相关内容