我们有一个多宿主 Windows 服务器。
- 它有两个物理接口A(192.168.1.140)和B(10.42.130.140)
- 从同一子网上的机器两个接口都可以 ping 通
- 从第三个子网 B 可以 ping 通,但 A 不能
- Windows 机器的默认路由是通过接口 A,但是有一个通过接口 B 到第三个子网的静态路由
当您从第三个子网 ping A 时,路由器会报告来自接口 A 的出站连接实际上是从接口 B 发出的(因此被拒绝)。
目标是能够从第三个子网 10.42.100.0/24 ping 两个接口。网络拓扑相当简单,三个交换机各自只有自己的子网流量 A、B 和 C,通过 Cisco ASA 5520 连接。周围还有其他较小的子网,但它们与当前的问题并不真正相关。
这看起来好像 Windows 没有从正确的接口(它收到请求的接口)做出响应,而是通过它认为最好的路由将所有流量推送出去。有没有办法将流量绑定到正确的接口?我甚至会接受 Cisco ASA 规则以允许流量(它正在丢弃 SYN ACK)离开 B 子网。
Windows 机器的路由表如下所示:
IPv4 Route Table
===========================================================================
Interface List
0x1 ........................... MS TCP Loopback interface
0x10003 ...00 13 72 36 e5 30 ...... Broadcom BCM5708C NetXtreme II GigE (NDIS VBD Client)
0x10004 ...00 13 72 36 e5 32 ...... Broadcom BCM5708C NetXtreme II GigE (NDIS VBD Client) #2
===========================================================================
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.1.30 192.168.1.140 20
10.42.0.0 255.255.0.0 10.42.130.1 10.42.130.140 1
10.42.130.0 255.255.255.0 10.42.130.140 10.42.130.140 10
10.42.130.140 255.255.255.255 127.0.0.1 127.0.0.1 10
10.255.255.255 255.255.255.255 10.42.130.140 10.42.130.140 10
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.1.0 255.255.255.0 192.168.1.140 192.168.1.140 20
192.168.1.140 255.255.255.255 127.0.0.1 127.0.0.1 20
192.168.1.255 255.255.255.255 192.168.1.140 192.168.1.140 20
224.0.0.0 240.0.0.0 10.42.130.140 10.42.130.140 10
224.0.0.0 240.0.0.0 192.168.1.140 192.168.1.140 20
255.255.255.255 255.255.255.255 10.42.130.140 10.42.130.140 1
255.255.255.255 255.255.255.255 192.168.1.140 192.168.1.140 1
Default Gateway: 192.168.1.30
===========================================================================
Persistent Routes:
None
谢谢
答案1
如果您尝试跨不同子网获取流量(包括 ICMP ping),则需要使用转发功能。或者接口需要位于路由器上。除了启用 Internet 连接共享(限制在第二个接口上分发的 IP 范围)外,我不知道如何在 Windows 上启用 IP 转发。
您的第 3 个子网听起来像与接口 B 共享一些相同的网络位,这就是您可以 ping B 的原因。
执行您要执行的操作的正确方法是将接口 A 的 IP 更改为与接口 B 位于同一子网,并确保您的第 3 个子网也是同一子网。