![无法 ping 同一子网上的两个设备](https://linux22.com/image/726318/%E6%97%A0%E6%B3%95%20ping%20%E5%90%8C%E4%B8%80%E5%AD%90%E7%BD%91%E4%B8%8A%E7%9A%84%E4%B8%A4%E4%B8%AA%E8%AE%BE%E5%A4%87.png)
需要一些有关路由的帮助。我不明白如何实现这一点
我配置了 2 个设备。其中一个设备(某个框1) 配置了 2 个接口,路由表如下所示
[2018-08-24 00:29:14 root@somebox1: /home/admin ]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.4.1 0.0.0.0 UG 0 0 0 eth0
192.168.4.0 0.0.0.0 255.255.254.0 U 0 0 0 eth0
192.168.6.0 0.0.0.0 255.255.254.0 U 0 0 0 eth1
因此,在此框中,对于两个接口,添加了针对 192.168.4.x 和 192.168.6.x 的路由规则。它们都是 CIDR /23 的一部分
默认是通过 192.168.4.1。
我有另一台设备(某个盒子2) 在子网 192.168.6.x 上配置单个接口。其路由表如下所示
[2018-08-24 04:54:31 admin@somebox2: ~ ]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.6.1 0.0.0.0 UG 0 0 0 eth0
192.168.6.0 0.0.0.0 255.255.254.0 U 0 0 0 eth0
现在。我遇到了一个困难,从 somebox2 我无法 ping 通 somebox1 的 eth0 IP。
[2018-08-25 04:55:47 root@somebox1: /home/admin ]# ping -I eth0 192.168.4.120
PING 172.29.4.120 (172.29.4.120) from 192.168.6.21 eth0: 56(84) bytes of data.
^C
--- 172.29.4.120 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 1999ms
但我可以 ping somebox1 的默认网关
[2018-08-25 04:55:32 root@somebox1: /home/admin ]# ping -I eth0 192.168.4.1
PING 172.29.4.1 (172.29.4.1) from 192.168.6.21 eth0: 56(84) bytes of data.
64 bytes from 192.168.4.1: icmp_seq=1 ttl=255 time=0.498 ms
64 bytes from 192.168.4.1: icmp_seq=2 ttl=255 time=0.701 ms
^C
--- 172.29.4.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1
从 somebox1,我可以使用 eth1 接口 ping somebox2 的 eth0 IP
bash-4.2$ ping -I eth0 192.168.6.21
PING 192.168.6.21 (192.168.6.21) from 192.168.4.120 eth0: 56(84) bytes of data.
^C
--- 192.168.6.21 ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 2999ms
bash-4.2$ ping -I eth1 192.168.6.21
PING 192.168.6.21 (192.168.6.21) from 192.168.6.44 eth1: 56(84) bytes of data.
64 bytes from 192.168.6.21: icmp_seq=1 ttl=64 time=1.64 ms
64 bytes from 192.168.6.21: icmp_seq=2 ttl=64 time=0.789 ms
64 bytes from 192.168.6.21: icmp_seq=3 ttl=64 time=0.635 ms
^C
--- 192.168.6.21 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 0.635/1.022/1.643/0.444 ms
如果我删除了 somebox1 上 192.168.6.0 的路由表条目或者完全删除了 eth1(192.168.6.x)的接口,那么我就能够从 somebox2 ping 到 somebox1 而不会出现任何问题。
此外,我能够看到,如果 somebox2 配置了接口 192.168.4.x 或 192.168.2.x 或 192.168.12.x,我能够 ping 通 somebox1 的 eth0 IP,没有任何问题。只有当 somebox2 配置了 192.168.6.x 时,我才无法 ping 通 somebox1 的 eth0 IP,但是,我可以 ping 通位于 192.168.6.x 网络上的 somebox1 的 eth1 IP,没有任何问题
问题:
1. Is removing the Interface or Routing table for eth1 from somebox1 the only way i can ping from somebox2 to somebox1
2. Why is that with the same interface i am facing this hurdle of not able to ping. Is it to do with the Routing table configuration on somebox1