debian客户端连接到同一个交换机,ping问题

我有两台连接到同一个交换机的机器。 机器具有多个连接到不同networking的以太网接口。 计算机A可以ping通连接到同一交换机的天线,但不能使用正确的接口(通过ping -I eth2)ping通计算机B,但计算机B可以ping通天线,并且可以使用正确的接口(通过ping -I eth9在我的情况)。

我查看了接口细节,他们都有相同的子网掩码,我试过tracert -i,结果与上面提到的问题一致,但没有透露太多。 在计算机A上的tracert花了30跳,最后它不能到达计算机B.路由命令显示我路由表是相似的,唯一不同的是,我看到的是计算机B有两个接口在子网中定义,但只有一个物理连接时间可以造成这个奇怪的问题吗? 任何build议,将不胜感激。

电脑A

eth0 Link encap:Ethernet HWaddr 68:05:ca:02:e3:5c inet addr:16.1.8.61 Bcast:16.1.63.255 Mask:255.255.192.0 inet6 addr: fe80::6a05:caff:fe02:e35c/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:144031 errors:0 dropped:0 overruns:0 frame:0 TX packets:11423 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:11302308 (10.7 MiB) TX bytes:853551 (833.5 KiB) Memory:fe8e0000-fe900000 eth2 Link encap:Ethernet HWaddr 00:d0:c9:ce:6d:7c inet addr:192.168.1.15 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::2d0:c9ff:fece:6d7c/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:168 errors:0 dropped:0 overruns:0 frame:0 TX packets:402 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:17398 (16.9 KiB) TX bytes:41787 (40.8 KiB) Memory:fe9e0000-fea00000 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:16436 Metric:1 RX packets:120 errors:0 dropped:0 overruns:0 frame:0 TX packets:120 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:8480 (8.2 KiB) TX bytes:8480 (8.2 KiB) 

电脑B

  eth7 Link encap:Ethernet HWaddr 00:d0:c9:ce:6c:b2 inet addr:16.1.8.64 Bcast:16.1.63.255 Mask:255.255.192.0 inet6 addr: fe80::2d0:c9ff:fece:6cb2/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:134026 errors:0 dropped:0 overruns:0 frame:0 TX packets:3212 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:10611871 (10.1 MiB) TX bytes:272509 (266.1 KiB) Memory:fe9e0000-fea00000 eth8 Link encap:Ethernet HWaddr 68:05:ca:02:e1:c2 inet addr:192.168.1.60 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST MULTICAST MTU:8228 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) Memory:fe8e0000-fe900000 eth9 Link encap:Ethernet HWaddr 68:05:ca:02:e1:c3 inet addr:192.168.1.57 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::6a05:caff:fe02:e1c3/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:383 errors:0 dropped:0 overruns:0 frame:0 TX packets:157 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:40794 (39.8 KiB) TX bytes:15778 (15.4 KiB) Memory:fe880000-fe8a0000 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:16436 Metric:1 RX packets:250 errors:0 dropped:0 overruns:0 frame:0 TX packets:250 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:22872 (22.3 KiB) TX bytes:22872 (22.3 KiB) 

路由表A

Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.1.0 * 255.255.255.0 U 0 0 0 eth2 localnet * 255.255.192.0 U 0 0 0 eth0 default pfizmir.xxxx 0.0.0.0 UG 0 0 0 eth0

如果在同一个networking中有两个独立的物理接口,连接到同一个VLAN,则需要设置一些特定的路由规则,以确保服务器在接收到该数据包的相同接口上进行响应。

使用ip您可以创build额外的表格,这些表格仅用于在其中一个接口上接收stream量时使用的表格。

首先,您需要创build两个单独的路由表。

 echo 201 E9 >> /etc/iproute2/rt_tables echo 200 E8 >> /etc/iproute2/rt_tables 

这将创build决定如何路由数据包的表格。

 ip route add 192.168.1.0 dev eth9 src 192.168.1.57 table E9 ip route add default via <your gateway for 192.168.1.0> table E9 ip route add 192.168.1.0 dev eth8 src 192.168.1.60 table E8 ip route add default via <your gateway for 192.168.1.0> table E8 ip rule add from 192.168.1.57 table E9 ip rule add from 192.168.1.60 table E8 

并且应该确保在eth9上到达的数据包在eth9上响应等等。

与往常一样,我build议阅读这个页面 ,它非常好地解释了这些概念,并且给了你更多的例子。