DNS解析需要无线链接吗?

DNS解析需要无线链接吗?

我有一台运行 Ubuntu 18.04 的联想 Thinkpad X220。它有一个以太网端口和一个无线网卡。就网络而言,一切都是在安装过程中使用默认设置自动配置的。在最终设置中,DNS 解析仅在无线接口处于活动状态并连接时才有效。在以前的 Ubuntu 版本下,DNS 可以通过有线或无线链路进行解析,具体取决于哪个处于活动状态。

我花了很多时间试图了解 Linux 网络是如何配置和管理的,查看了大量文件并运行了大量查询,但坦率地说,我不想深入研究只有服务器管理员才感兴趣的这么多细节。我知道网络子系统功能齐全且灵活,但我的用例非常简单,我在这里被细节淹没了。救命!!

我已经到达了可以在输出中看到这一点的地步systemd-resolve --status

 Link 3 (wlp3s0)
      Current Scopes: DNS
       LLMNR setting: yes
MulticastDNS setting: no
      DNSSEC setting: no
    DNSSEC supported: no
         DNS Servers: 172.28.16.1

Link 2 (enp0s25)
      Current Scopes: none
       LLMNR setting: yes
MulticastDNS setting: no
      DNSSEC setting: no
    DNSSEC supported: no

我认为这解释了为什么 DNS 解析是通过无线 (wlp3s0) 而不是有线链路 (enp0s25) 进行的。但是我怎样才能改为使用有线链路(或同时使用有线链路)呢?我可以更改一些配置文件或发出一些 systemd-resolve 命令让它考虑使用 enp0s25 进行 DNS 解析吗?

更新:ifconfig 和 arp 的输出:

mark@MESX220:~$ ifconfig -a
enp0s25: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.28.16.48  netmask 255.255.255.0  broadcast 172.28.16.255
        inet6 fe80::f2de:f1ff:fe91:692b  prefixlen 64  scopeid 0x20<link>
        ether f0:de:f1:91:69:2b  txqueuelen 1000  (Ethernet)
        RX packets 4444447  bytes 6308844438 (6.3 GB)
        RX errors 0  dropped 62  overruns 0  frame 0
        TX packets 1932598  bytes 156360177 (156.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 20  memory 0xf2500000-f2520000  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 303309  bytes 15241987 (15.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 303309  bytes 15241987 (15.2 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.28.16.168  netmask 255.255.255.0  broadcast 172.28.16.255
        inet6 fe80::85c3:619d:5f54:95df  prefixlen 64  scopeid 0x20<link>
        ether 08:11:96:58:82:bc  txqueuelen 1000  (Ethernet)
        RX packets 63862  bytes 20011006 (20.0 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2859  bytes 572860 (572.8 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

mark@MESX220:~$ arp -a
? (172.28.16.70) at dc:3a:5e:fc:e4:15 [ether] on enp0s25
POPLARDS (172.28.16.16) at 00:11:32:0e:f6:02 [ether] on enp0s25
? (172.28.16.32) at 00:15:99:ed:da:64 [ether] on enp0s25
router.asus.com (172.28.16.1) at 38:2c:4a:aa:75:18 [ether] on enp0s25
? (172.28.16.33) at 70:5a:0f:9e:c1:06 [ether] on enp0s25
? (172.28.16.70) at dc:3a:5e:fc:e4:15 [ether] on wlp3s0
? (172.28.16.144) at 34:38:b7:2a:1e:e0 [ether] on enp0s25
router.asus.com (172.28.16.1) at 38:2c:4a:aa:75:18 [ether] on wlp3s0
? (172.28.16.64) at c8:3a:6b:ac:6e:66 [ether] on wlp3s0
? (172.28.16.64) at c8:3a:6b:ac:6e:66 [ether] on enp0s25

答案1

好的,我终于明白问题出在哪里了。我为有线接口设置了一个静态 IP 地址,但我没有提供 DNS 解析地址。我添加了一个 DNS 地址(我的路由器)并重新启动了接口,现在即使无线接口关闭,它也能顺利地解析 DNS。

我猜我以为系统会认为它可以通过网关地址解析 DNS。以前的版本似乎就是这样工作的。

相关内容