Ubuntu
如何追踪 Linux 筆記型電腦之間的乙太網 ARP 表問題的根源?
在我們的家庭區域網路上,重新啟動路由器後,我無法從筆記型電腦 A SSH 到筆記型電腦 B,除非通過路由器。但是,在從筆記型電腦 B 到筆記型電腦 A 執行 ping 操作後,我可以從 A 正常連接到 B。我可以通過重新啟動路由器來重現此問題。兩台筆記型電腦都通過 WiFi 連接到路由器,並且沒有連接其他 AP 或路由器。區域網路上有其他設備,我不知道有任何其他 ARP 問題。
路由器重啟後展示問題:
scott@laptopa:~$ ip addr show dev wlp58s0 |grep 'inet ' inet 192.168.8.194/24 brd 192.168.8.255 scope global dynamic noprefixroute wlp58s0 scott@laptopa:~$ ssh 192.168.8.131 echo okay ssh: connect to host 192.168.8.131 port 443: No route to host scott@laptopa:~$ ssh 192.168.8.131 echo okay ssh: connect to host 192.168.8.131 port 443: No route to host scott@laptopa:~$ ssh 192.168.8.131 echo okay ssh: connect to host 192.168.8.131 port 443: No route to host scott@laptopa:~$ arp |grep 9c:b6:d0:44:18:09 scott@laptopa:~$
尷尬的解決方法:
scott@laptopa:~$ ssh -o 'ProxyCommand ssh -q -W %h:%p root@192.168.8.1' 192.168.8.131 'ping -c 10 192.168.8.194' PING 192.168.8.194 (192.168.8.194) 56(84) bytes of data. 64 bytes from 192.168.8.194: icmp_seq=1 ttl=64 time=66.3 ms 64 bytes from 192.168.8.194: icmp_seq=2 ttl=64 time=22.9 ms 64 bytes from 192.168.8.194: icmp_seq=3 ttl=64 time=106 ms 64 bytes from 192.168.8.194: icmp_seq=4 ttl=64 time=230 ms 64 bytes from 192.168.8.194: icmp_seq=5 ttl=64 time=252 ms 64 bytes from 192.168.8.194: icmp_seq=6 ttl=64 time=275 ms 64 bytes from 192.168.8.194: icmp_seq=7 ttl=64 time=298 ms 64 bytes from 192.168.8.194: icmp_seq=8 ttl=64 time=321 ms 64 bytes from 192.168.8.194: icmp_seq=9 ttl=64 time=38.3 ms 64 bytes from 192.168.8.194: icmp_seq=10 ttl=64 time=60.3 ms --- 192.168.8.194 ping statistics --- 10 packets transmitted, 10 received, 0% packet loss, time 9012ms rtt min/avg/max/mdev = 22.950/167.478/321.937/112.761 ms
證明它現在可以正常工作:
scott@laptopa:~$ ssh 192.168.8.131 echo okay okay scott@laptopa:~$ arp |grep 9c:b6:d0:44:18:09 laptopb.lan ether 9c:b6:d0:44:18:09 C wlp58s0
筆記型電腦 A 和 B 都執行 Ubuntu 18.04,路由器是 Lede (OpenWRT) 17.01.4。
正如@roaima 建議的那樣,我刪除了所有
iptables
規則並再次測試。即使在多次重新啟動路由器後,我也遇到了零問題。然後我iptables
重新添加了我的規則並進一步測試。我仍然有零問題。簡而言之,我無法再重現該問題,因此可能就像@dirkt 所經歷的那樣是隨機的。也許它是網路上的其他設備。