DNS 查找非常慢

DNS 查找非常慢

我使用的是 Ubuntu 16.04 LTS,当我访问网站/curl/wget/ping/等任何非 IP 地址的内容时,它需要很长时间(> 5 秒),而直接使用 IP 地址的任何操作几乎都是即时的(<10 毫秒,正如人们所预期的那样)。

当我 时cat /etc/NetworkManager/NetworkManager.conf,我得到:

[main]
plugins=ifupdown,keyfile,ofono
dns=dnsmasq

[ifupdown]
managed=false

我尝试过改为#dns=dnsmasq,但没有任何明显的效果。

cat /etc/network/interfaces也相当基础:

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

有点奇怪的是cat /etc/resolv.conf

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

nameserver 10.63.240.10
nameserver 127.0.1.1
search $companydomain$.com

nameserver 10.63.240.10是同事所没有的,也是上述 3 个文件对我们来说唯一的不同之处。我怀疑这是问题的根源,因为当我这样做时host www.stackexchange.com 10.63.240.10,我得到了:

;; connection timed out; no servers could be reached

将其注释掉并重新启动网络管理器可以暂时解决问题,但重新启动后仍会再次出现。

我还注意到在网络连接菜单中,列出了两个(似乎)自动生成的 Bridge 条目:br-8f98800bd128br-bd749c12d64c。如果我删除它们,它们会在重启后恢复。我前面提到的同事也没有这些。

我也尝试过如何在 Ubuntu 服务器中配置我的 DNS 设置?DNS 查询速度极慢,但问题仍然存在。

M.贝塞拉的建议,我运行了sudo updatedb; locate 10.63.240.10。这并没有给我任何输出。

米凯尔·舒尔茨建议我这样做nmcli device show,输出:

GENERAL.DEVICE:                         br-8f98800bd128
GENERAL.TYPE:                           bridge
GENERAL.HWADDR:                         02:42:50:5E:58:3B
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (connected)
GENERAL.CONNECTION:                     br-8f98800bd128
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/2
IP4.ADDRESS[1]:                         172.18.0.1/16
IP4.GATEWAY:                            
IP6.GATEWAY:                            

GENERAL.DEVICE:                         br-bd749c12d64c
GENERAL.TYPE:                           bridge
GENERAL.HWADDR:                         02:42:B1:85:6D:E3
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (connected)
GENERAL.CONNECTION:                     br-bd749c12d64c
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/3
IP4.ADDRESS[1]:                         172.19.0.1/16
IP4.GATEWAY:                            
IP6.GATEWAY:                            

GENERAL.DEVICE:                         docker0
GENERAL.TYPE:                           bridge
GENERAL.HWADDR:                         36:CA:3D:66:B7:03
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (connected)
GENERAL.CONNECTION:                     docker0
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/1
IP4.ADDRESS[1]:                         172.17.0.1/16
IP4.GATEWAY:                            
IP6.GATEWAY:                            

GENERAL.DEVICE:                         wlp3s0
GENERAL.TYPE:                           wifi
GENERAL.HWADDR:                         00:28:F8:9C:2A:4D
GENERAL.MTU:                            0
GENERAL.STATE:                          100 (connected)
GENERAL.CONNECTION:                     Crowdynews
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/0
IP4.ADDRESS[1]:                         10.0.0.27/24
IP4.GATEWAY:                            10.0.0.1
IP4.ROUTE[1]:                           dst = 169.254.0.0/16, nh = 0.0.0.0, mt = 1000
IP4.DNS[1]:                             8.8.8.8
IP4.DNS[2]:                             8.8.4.4
IP4.DOMAIN[1]:                          crowdynews.com
IP6.ADDRESS[1]:                         fe80::9264:b967:1c59:3e50/64
IP6.GATEWAY:                            

GENERAL.DEVICE:                         enp4s0
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         C8:5B:76:F1:1C:EC
GENERAL.MTU:                            1500
GENERAL.STATE:                          20 (unavailable)
GENERAL.CONNECTION:                     --
GENERAL.CON-PATH:                       --
WIRED-PROPERTIES.CARRIER:               off

GENERAL.DEVICE:                         lo
GENERAL.TYPE:                           loopback
GENERAL.HWADDR:                         00:00:00:00:00:00
GENERAL.MTU:                            65536
GENERAL.STATE:                          10 (unmanaged)
GENERAL.CONNECTION:                     --
GENERAL.CON-PATH:                       --
IP4.ADDRESS[1]:                         127.0.0.1/8
IP4.GATEWAY:                            
IP6.ADDRESS[1]:                         ::1/128
IP6.GATEWAY:                            

ip address印刷:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
   valid_lft forever preferred_lft forever
inet6 ::1/128 scope host 
   valid_lft forever preferred_lft forever
2: enp4s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
link/ether c8:5b:76:f1:1c:ec brd ff:ff:ff:ff:ff:ff
3: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:28:f8:9c:2a:4d brd ff:ff:ff:ff:ff:ff
inet 10.0.0.27/24 brd 10.0.0.255 scope global dynamic wlp3s0
   valid_lft 1660731sec preferred_lft 1660731sec
inet6 fe80::9264:b967:1c59:3e50/64 scope link 
   valid_lft forever preferred_lft forever
4: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default 
link/ether 02:42:f3:cd:08:8c brd ff:ff:ff:ff:ff:ff
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
   valid_lft forever preferred_lft forever
5: br-8f98800bd128: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default 
link/ether 02:42:50:5e:58:3b brd ff:ff:ff:ff:ff:ff
inet 172.18.0.1/16 brd 172.18.255.255 scope global br-8f98800bd128
   valid_lft forever preferred_lft forever
6: br-bd749c12d64c: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default 
link/ether 02:42:b1:85:6d:e3 brd ff:ff:ff:ff:ff:ff
inet 172.19.0.1/16 brd 172.19.255.255 scope global br-bd749c12d64c
   valid_lft forever preferred_lft forever

cat /etc/resolvconf/resolv.conf.d/head

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

nameserver 10.63.240.10

cat /etc/resolvconf/resolv.conf.d/base不产生任何输出。

我该如何解决?

答案1

该问题似乎是由于文件中的 DNS 服务器存在故障/etc/resolvconf/resolv.conf.d/head

编辑该head文件并删除该行nameserver 10.63.240.10,这样你的问题就应该解决了。

从终端运行sudo nano /etc/resolvconf/resolv.conf.d/head来编辑该文件,并确保该文件的唯一内容是:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

希望这能解决您的问题。

答案2

也许这可以帮助某些人(问题出在 DOCKER 上)。我在Ubuntu 22.04,经过很长时间更改网络相关配置后,解决方案才出现。

docker network prune

我有很多 docker 网络,这导致 DNS 查找速度很慢(我可以访问一些网站,但其他网站却超时了)

答案3

我遇到了同样的问题。为了解决这个问题,我更改了 DNS 服务器设置,现在一切都得到了快速解决(apt update、Firefox 启动、git 等)。

更改 DNS 服务器设置

如果你使用的是有线网络,请转到 Ubuntu 设置 > 网络 > 有线 > 选项 > IPv4。确保 IPv4 方法是自动 (DHCP),然后选择你的 DNS 服务器(我个人使用https://1.1.1.1/dns/)。您可以对 IPv6 执行相同操作,确保将有效的 IPv6 输入到 DNS 服务器。

有线配置

如果您使用的是无线连接,请转到 Ubuntu 设置 > 无线 > [YourWifi] > 选项并按照相同的说明进行操作。

相关内容