我注意到这种奇怪的行为,我有一个只能使用静态 IP 地址的 wi-fi 网络。如果我设置 DHCP,则 DNS 解析失败,例如我可以 ping 8.8.8.8 但我无法上网或 ping www.google.com。它只发生在我的电脑上,并且只发生在 Ubuntu 分区上(使用 Win10 没问题)。我对其他 wi-fi 网络没有任何问题。我的电脑运行 16.04,一切都更新了。有什么提示吗?
更新
这些是 Ubuntu 命令的输出(不起作用)
$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
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: enp7s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
link/ether fc:3f:db:a2:6d:46 brd ff:ff:ff:ff:ff:ff
3: wlp19s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether c8:ff:28:93:26:32 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.100/24 brd 192.168.0.255 scope global dynamic wlp19s0
valid_lft 7193sec preferred_lft 7193sec
inet6 fe80::e9a0:6a46:1112:815/64 scope link
valid_lft forever preferred_lft forever
$ ip route
default via 192.168.0.1 dev wlp19s0 proto static metric 600
169.254.0.0/16 dev wlp19s0 scope link metric 1000
192.168.0.0/24 dev wlp19s0 proto kernel scope link src 192.168.0.100 metric 600
$ 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 127.0.1.1
这是来自ipconfig /all
Win10(工作)
Scheda LAN wireless Wi-Fi:
Suffisso DNS specifico per connessione:
Descrizione . . . . . . . . . . . . . : Realtek RTL8188EE 802.11 bgn Wi-Fi Adapter
Indirizzo fisico. . . . . . . . . . . : C8-FF-28-93-26-32
DHCP abilitato. . . . . . . . . . . . : Sì
Configurazione automatica abilitata : Sì
Indirizzo IPv6 locale rispetto al collegamento . : fe80::7d95:51a8:c887:792e%17(Preferenziale)
Indirizzo IPv4. . . . . . . . . . . . : 192.168.0.100(Preferenziale)
Subnet mask . . . . . . . . . . . . . : 255.255.255.0
Lease ottenuto. . . . . . . . . . . . : sabato 1 aprile 2017 10:12:04
Scadenza lease . . . . . . . . . . . : sabato 1 aprile 2017 12:12:18
Gateway predefinito . . . . . . . . . : 192.168.0.1
Server DHCP . . . . . . . . . . . . . : 192.168.0.1
IAID DHCPv6 . . . . . . . . . . . : 281607976
DUID Client DHCPv6. . . . . . . . : 00-01-00-01-1D-FD-6A-93-FC-3F-DB-A2-6D-46
Server DNS . . . . . . . . . . . . . : 192.168.0.1
NetBIOS su TCP/IP . . . . . . . . . . : Attivato
我也尝试将路由器恢复出厂设置,但没有任何运气.. 但我可能会发现一些有趣的东西,重置后,我尝试通过 LAN 电缆连接到路由器以更改设置,但无法使用 tplinkmodem.net 进行连接,但仅使用 192.168.1.1。我认为我的本地 DNS 解析有问题,但我不是专家.. 所以我在等待建议!
这个解决方案对我有用:https ://askubuntu.com/a/432374/373541
但是我不明白为什么。DHCP 以前在我的 Ubuntu 中一直有效。如果有人可以解释我在解决方案后做了什么,那就太好了。谢谢你
这在很大程度上取决于您的路由器。在运行 Win10(有效)时,检查您的计算机通过 DHCP 接收的网络参数
ipconfig /all
。在运行设置为 DHCP 的 Ubuntu 时(不起作用),对ip addr
,ip route
和cat /etc/resolv.conf
. 将两者与您的路由器配置进行比较,以查看差异可能来自何处。正如您的 /etc/resolv.conf 所说
nameserver 127.0.1.1
,这表明您正在 Ubuntu(默认)上运行 dnsmasq,因此您也必须检查 dnsmasq 配置。这并不容易,因为它是由网络管理器通过 dbus 动态管理的,所以没有可以读取的配置文件,遗憾的是似乎无法查询 dnsmasq 的当前配置。首先请求一个 dnsmasq 统计信息 reqort并扫描系统日志以查找来自 dnsmasq 的消息
编辑:对不起,我忘记了 dnsmasq。由于我不允许发表评论,我更新了我的答案。