我的网络中有两个主机。两者都连接到我的路由器。从另一台主机,我可以 ping 和 ssh 到他们两个。两者都与所有其他主机有很好的连接。但是,他们无法相互 ping 或看到对方。一个(192.168.124.101,称为 Hallway)运行 Ubuntu 14.10,另一个(192.168.124.104,称为 Rapunzel)是带有 Raspbian 的 Raspberry Pi。两个地址都是静态的。主机通过电力线适配器连接到电力网络。
一些输出:
jos@hallway:~$ ifconfig eth1
eth1 Link encap:Ethernet HWaddr 00:14:85:82:2a:2f
inet addr:192.168.124.101 Bcast:192.168.124.255 Mask:255.255.255.0
inet6 addr: fe80::214:85ff:fe82:2a2f/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2959658 errors:0 dropped:91 overruns:0 frame:0
TX packets:2366877 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3406445368 (3.4 GB) TX bytes:964531766 (964.5 MB)
Interrupt:21
jos@hallway:~$ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default Comtrend.Home 0.0.0.0 UG 0 0 0 eth1
192.168.124.0 * 255.255.255.0 U 0 0 0 eth1
jos@hallway:~$ arp -a 192.168.124.104
rapunzel (192.168.124.104) at b8:27:eb:a4:84:a3 [ether] PERM on eth1
反之亦然:
pi@Rapunzel ~ $ ifconfig eth0
eth0 Link encap:Ethernet HWaddr b8:27:eb:a4:84:a3
inet addr:192.168.124.104 Bcast:192.168.124.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:60981 errors:0 dropped:0 overruns:0 frame:0
TX packets:40710 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:19883333 (18.9 MiB) TX bytes:2562029 (2.4 MiB)
pi@Rapunzel ~ $ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default Comtrend.Home 0.0.0.0 UG 0 0 0 eth0
192.168.124.0 * 255.255.255.0 U 0 0 0 eth0
pi@Rapunzel ~ $ arp -a 192.168.124.101
hallway (192.168.124.101) at 00:14:85:82:2a:2f [ether] on eth0
我试过添加和删除路由和 arp 条目。但是,当前的 arp 条目是自动添加的(因此存在某种联系)。起初,ping
任何一方都会提到另一方是“无法访问目标主机”。arp 条目会将“<incomplete>”作为 MAC 地址。添加 arp 条目后,ping 只是超时。
这可能不是防火墙问题,因为我从来没有在这两台机器上使用过 iptables(sudo iptables -L
在两台主机上都给出了默认输出)。我已经重新启动了两台机器和路由器,但到目前为止没有任何帮助。
直到昨天,当我断开并重新连接其中一台主机时,事情才有效。我忽略了什么?
编辑:我tcpdump arp
从主机 101 运行了一个,果然,我收到了很多如下请求:
23:12:23.460191 ARP, Request who-has hallway tell rapunzel, length 46
23:12:23.460214 ARP, Reply hallway is-at 00:14:85:82:2a:2f (oui Unknown), length 28
那么为什么没有其他流量通过呢?
我从两侧运行了一个 arping 探测器:
jos@hallway:~arping -b -D -w 2000 -I eth1 -s 192.168.124.101 192.168.124.104
ARPING 192.168.124.104 from 192.168.124.101 eth1
^CSent 38 probes (38 broadcast(s))
Received 0 response(s)
和另一端类似的东西(只是格式不同,毕竟这是 Raspbian)。
可能是一个愚蠢的问题:它们是直接连接到路由器还是通过交换机?如果通过交换机,关闭两台主机,关闭交换机,关闭路由器。打开路由器,打开交换机,打开主机。
(如果你能给我更多关于交换机确切品牌的信息,我也许能告诉你如何只重置交换机的 3 个端口)
保留上述内容,因为不是每个人都在使用电力线适配器,而是拔下/重新插入电力线适配器和/或更新它们的固件以“解除”它们……>:)
事实证明这并不像最初出现时那么有趣。正如 Fabby 提到的,电力线适配器一定是卡住了。我将其中一台主机连接到不同的适配器,它立即工作。然后我将它重新连接到第一个适配器,再次没有流量通过。虽然看起来适配器有硬件故障,但请记住它只是阻止进出一台特定主机的流量。感谢 Fabby 和 Alaa Ali 的建议。