我现在知道这不是 DNS 问题,因为我甚至无法 ping 8.8.8.8。我添加了 tracepath 8.8.8.8 的输出。
我的机器运行的是最新版本的 14.04 Trusty。主板有两个以太网端口和一个 Wi-Fi 卡。两个以太网端口都已插入。一个直接插入路由器,具有静态 IP 地址。另一个插入网络交换机,是 DHCP。这台机器是全新安装的,从一开始就存在 DNS 问题。它位于德克萨斯州,我在丹佛,我通过 Teamviewer 远程控制它,所以我知道一些传出/传入流量可以通过。同一网络上的其他机器没有网络问题。
症状:
- 无法通过名称 (google.com) 或 IP (64.233.177.103) 加载网站
- 无法使用 sudo apt-get,连接服务器超时
- 无法 ping WAN IP。ping 8.8.8.8 没有响应,数据包丢失 100%。
- 可以 ping 通 LAN IP。
- 可以通过 LAN IP 在网络浏览器中加载路由器配置页面。
- 允许 Teamviewer 远程连接。UDP 似乎不起作用,TCP 可以正常工作,但我经常被踢出。
迄今为止采取的故障排除步骤:
- 电源循环机器
- 拔下/重新插入两根网线
- 通过网络设置 GUI 将两个端口的连接类型更改为 DHCP,然后改回静态。目前一个是静态的,另一个是 DHCP。
- 出厂默认路由器并升级至最新固件(Luxul XBR-4400)
- 重新启动网络服务
- 重新启动网络管理器
- 尝试通过 /etc/network/interfaces 手动添加静态 IP。使其与我通过 GUI 设置的 IP 相匹配。
- 根据此答案绕过本地名称服务器:我应该编辑 resolv.conf 文件来修复错误的 DNS 问题吗?
- 这涉及注释掉 /etc/NetworkManager/NetworkManager.conf 中的 dns=dnsmasq 行。
- 运行 Sudo restart network-manager 更改了我的 /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.0.1
search lan
更改为:
# 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 192.168.8.1
nameserver 75.75.75.75
nameserver 8.8.8.8
search lan
- 我仍然遇到完全相同的症状。DNS 和静态 IP 已通过 GUI 配置。
运行 nslookup www.google.com 后,输出看起来正常,因此 nslookup 似乎可以正常工作(与 Teamviewer 一起)。但是加载 www.google.com 或 www.google.com 的直接 IP(64.233.177.147)不起作用。
nslookup www.google.com 的输出:
Server: 192.168.8.1
Address: 192.168.8.1#53
Non-authoritative answer:
Name: www.google.com
Address: 64.233.177.147
Name: www.google.com
Address: 64.233.177.104
Name: www.google.com
Address: 64.233.177.99
Name: www.google.com
Address: 64.233.177.105
Name: www.google.com
Address: 64.233.177.103
Name: www.google.com
Address: 64.233.177.106
/etc/network/interfaces 的输出:
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
nmcli dev list iface eth0 的输出(eth0 是静态的)
GENERAL.DEVICE: eth0
GENERAL.TYPE: 802-3-ethernet
GENERAL.VENDOR: Realtek Semiconductor Co., Ltd.
GENERAL.PRODUCT: Motherboard
GENERAL.DRIVER: r8169
GENERAL.DRIVER-VERSION: 2.3LK-NAPI
GENERAL.FIRMWARE-VERSION: rtl8168g-2_0.0.1 02/06/13
GENERAL.HWADDR: FC:AA:14:E5:55:DD
GENERAL.STATE: 100 (connected)
GENERAL.REASON: 0 (No reason given)
GENERAL.UDI: /sys/devices/pci0000:00/0000:00:1c.3/0000:04:00.0/net/eth0
GENERAL.IP-IFACE: eth0
GENERAL.NM-MANAGED: yes
GENERAL.AUTOCONNECT: yes
GENERAL.FIRMWARE-MISSING: no
GENERAL.CONNECTION: /org/freedesktop/NetworkManager/ActiveConnection/3
CAPABILITIES.CARRIER-DETECT: yes
CAPABILITIES.SPEED: 1000 Mb/s
CONNECTIONS.AVAILABLE-CONNECTION-PATHS: /org/freedesktop/NetworkManager/Settings/{0}
CONNECTIONS.AVAILABLE-CONNECTIONS[1]: 29935289-bf46-4dcf-89a0-b282fa8b3f69 | Wired connection 2
WIRED-PROPERTIES.CARRIER: on
IP4.ADDRESS[1]: ip = 192.168.8.99/24, gw = 192.168.8.1
IP4.DNS[1]: 192.168.8.1
IP4.DNS[2]: 75.75.75.75
IP4.DNS[3]: 8.8.8.8
nmcli dev list iface eth1 的输出(eth1 是 DHCP)
GENERAL.DEVICE: eth1
GENERAL.TYPE: 802-3-ethernet
GENERAL.VENDOR: Intel Corporation
GENERAL.PRODUCT: Ethernet Connection I217-V
GENERAL.DRIVER: e1000e
GENERAL.DRIVER-VERSION: 2.3.2-k
GENERAL.FIRMWARE-VERSION: 0.13-4
GENERAL.HWADDR: FC:AA:14:E5:55:DB
GENERAL.STATE: 100 (connected)
GENERAL.REASON: 0 (No reason given)
GENERAL.UDI: /sys/devices/pci0000:00/0000:00:19.0/net/eth1
GENERAL.IP-IFACE: eth1
GENERAL.NM-MANAGED: yes
GENERAL.AUTOCONNECT: yes
GENERAL.FIRMWARE-MISSING: no
GENERAL.CONNECTION: /org/freedesktop/NetworkManager/ActiveConnection/2
CAPABILITIES.CARRIER-DETECT: yes
CAPABILITIES.SPEED: 1000 Mb/s
CONNECTIONS.AVAILABLE-CONNECTION-PATHS: /org/freedesktop/NetworkManager/Settings/{2}
CONNECTIONS.AVAILABLE-CONNECTIONS[1]: 117aa4b3-1265-468e-b07d-d3c8998b14ea | Wired connection 1
WIRED-PROPERTIES.CARRIER: on
IP4.ADDRESS[1]: ip = 192.168.8.141/24, gw = 192.168.8.1
IP4.DNS[1]: 192.168.8.1
IP4.DOMAIN[1]: lan
DHCP4.OPTION[1]: host_name = nimbus-NS150
DHCP4.OPTION[2]: domain_name = lan
DHCP4.OPTION[3]: expiry = 1439959400
DHCP4.OPTION[4]: broadcast_address = 192.168.8.255
DHCP4.OPTION[5]: dhcp_message_type = 5
DHCP4.OPTION[6]: dhcp_lease_time = 43200
DHCP4.OPTION[7]: ip_address = 192.168.8.141
DHCP4.OPTION[8]: subnet_mask = 255.255.255.0
DHCP4.OPTION[9]: dhcp_renewal_time = 21600
DHCP4.OPTION[10]: routers = 192.168.8.1
DHCP4.OPTION[11]: dhcp_rebinding_time = 37800
DHCP4.OPTION[12]: domain_name_servers = 192.168.8.1
DHCP4.OPTION[13]: network_number = 192.168.8.0
DHCP4.OPTION[14]: dhcp_server_identifier = 192.168.8.1
ifconfig -a 的输出:
eth0 Link encap:Ethernet HWaddr fc:aa:14:e5:55:dd
inet addr:192.168.8.99 Bcast:192.168.8.255 Mask:255.255.255.0
inet6 addr: fe80::feaa:14ff:fee5:55dd/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:331544 errors:0 dropped:2390 overruns:0 frame:0
TX packets:132548 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:43753936 (43.7 MB) TX bytes:67745643 (67.7 MB)
eth1 Link encap:Ethernet HWaddr fc:aa:14:e5:55:db
inet addr:192.168.8.141 Bcast:192.168.8.255 Mask:255.255.255.0
inet6 addr: fe80::feaa:14ff:fee5:55db/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:839361 errors:0 dropped:0 overruns:0 frame:0
TX packets:1113669 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:85882847 (85.8 MB) TX bytes:427516880 (427.5 MB)
Interrupt:20 Memory:f7e00000-f7e20000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:2373781 errors:0 dropped:0 overruns:0 frame:0
TX packets:2373781 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:623910191 (623.9 MB) TX bytes:623910191 (623.9 MB)
wlan0 Link encap:Ethernet HWaddr ac:fd:ce:47:1e:77
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
ping 我的路由器:
PING 192.168.8.1 (192.168.8.1) 56(84) bytes of data.
64 bytes from 192.168.8.1: icmp_seq=1 ttl=64 time=0.308 ms
64 bytes from 192.168.8.1: icmp_seq=2 ttl=64 time=0.227 ms
64 bytes from 192.168.8.1: icmp_seq=3 ttl=64 time=0.220 ms
^C
--- 192.168.8.1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1999ms
rtt min/avg/max/mdev = 0.220/0.251/0.308/0.043 ms
正在 ping 8.8.8.8:
nimbus@nimbus-NS150:~$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
^C
--- 8.8.8.8 ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 3022ms
跟踪路径 8.8.8.8
1?: [LOCALHOST] pmtu 1500
1: Luxul.lan 0.485ms
1: Luxul.lan 0.502ms
2: no reply
3: no reply
总结一下:LAN DNS 似乎运行良好。DNS 设置看起来正确(据我所知)。WAN DNS 不起作用。但是 Teamviewer 等远程桌面软件只能部分使用。
谢谢你的帮助,杰夫
答案1
首先:感谢您提出一个非常详尽的问题!:-)
另外几个(问题/评论):
- 交换机(LAN 接口所连接的地方)是否也连接到路由器?我之所以问这个问题,是因为 LAN 地址和 WAN 地址都在同一个“网络”192.168.8.x 中?这可能会造成数据包循环(即路由器从 LAN-ip 获得网络请求,希望通过最短路径将答案返回到主机,而作为 WAN-ip,PC 不知道该怎么做?)
- 您的“WAN DNS”工作正常,nslookup 有效吗?“WAN Ping”又是另外一回事。
其次,我会这样做:
将 WAN 接口置于 DHCP 上,编辑路由器以始终将相同的 IP 地址分配给所述 WAN 接口的 MAC 地址。
将 LAN 接口设置为静态,不要添加网关。这样,所有与互联网相关的流量都会被强制到 WAN 接口。
问候。