![Windows 7 将所有数据包发送到一个网卡](https://linux22.com/image/659017/Windows%207%20%E5%B0%86%E6%89%80%E6%9C%89%E6%95%B0%E6%8D%AE%E5%8C%85%E5%8F%91%E9%80%81%E5%88%B0%E4%B8%80%E4%B8%AA%E7%BD%91%E5%8D%A1.png)
我有一台装有两块网卡的 Windows 7,网卡 1 上设置了一个默认网关,网卡 2 上没有默认网关。网卡位于不同的子网上。网卡 1 位于 192.168.1.0/24 子网上,网卡 2 位于 10.60.194.0/28 网络上。当我 ping 10.60.194.1 路由器时,数据包发送到 192.168.1.0/24 子网上!怎么会这样?这是路由表:
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.3 266
10.60.194.0 255.255.255.240 On-link 10.60.194.3 276
10.60.194.3 255.255.255.255 On-link 10.60.194.3 276
10.60.194.15 255.255.255.255 On-link 10.60.194.3 276
127.0.0.0 255.0.0.0 On-link 127.0.0.1 306
127.0.0.1 255.255.255.255 On-link 127.0.0.1 306
127.255.255.255 255.255.255.255 On-link 127.0.0.1 306
169.254.0.0 255.255.0.0 On-link 192.168.1.3 30
169.254.255.255 255.255.255.255 On-link 192.168.1.3 266
192.168.1.0 255.255.255.0 On-link 192.168.1.3 266
192.168.1.3 255.255.255.255 On-link 192.168.1.3 266
192.168.1.255 255.255.255.255 On-link 192.168.1.3 266
224.0.0.0 240.0.0.0 On-link 127.0.0.1 306
224.0.0.0 240.0.0.0 On-link 10.60.194.3 276
224.0.0.0 240.0.0.0 On-link 192.168.1.3 266
255.255.255.255 255.255.255.255 On-link 127.0.0.1 306
255.255.255.255 255.255.255.255 On-link 10.60.194.3 276
255.255.255.255 255.255.255.255 On-link 192.168.1.3 266
===========================================================================
Persistent Routes:
Network Address Netmask Gateway Address Metric
0.0.0.0 0.0.0.0 192.168.1.1 Default
===========================================================================
IPv6 Route Table
===========================================================================
Active Routes:
If Metric Network Destination Gateway
1 306 ::1/128 On-link
1 306 ff00::/8 On-link
===========================================================================
Persistent Routes:
None
C:\Users\zdravke>ipconfig
Windows IP Configuration
Ethernet adapter internet:
Connection-specific DNS Suffix . :
IPv4 Address. . . . . . . . . . . : 192.168.1.3
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.1.1
Ethernet adapter cisco:
Connection-specific DNS Suffix . :
IPv4 Address. . . . . . . . . . . : 10.60.194.3
Subnet Mask . . . . . . . . . . . : 255.255.255.240
Default Gateway . . . . . . . . . :
C:\Users\zdravke>tracert 10.60.194.1
Tracing route to 10.60.194.1 over a maximum of 30 hops
1 <1 ms <1 ms <1 ms 192.168.1.1
2 10 ms 10 ms 9 ms 1.96-66-87.adsl-dyn.isp.belgacom.be [87.66.96.1]
Wireshark 正在确认上述内容 - 当 ping 10.60.194.1 时,所有 icmp 数据包都会发送到位于 192.168.1.0 子网上的 nic1 上!
我目前尝试过:1)netsh tcp ip reset 2)移除并重新安装两个适配器 3)将 nic 驱动程序更新至最新版本。
答案1
我自己解决了这个问题。思科网络需要 802.1x 端口身份验证,因此尽管其他 PC 能够在身份验证之前 ping 通思科网络,但出于某种原因,这台 PC 却不能。它甚至无法使用 arp 解析思科网络网关。我甚至尝试在 win7 中设置静态 arp 值,但 icmp ping 仍然失败。在 win 中安装单个网卡时也会出现此问题。起初我以为 802.1x 身份验证失败是因为缺乏与端口的 IP 连接,但结果恰恰相反。
一旦我修复了 802.1x 端口认证,arp 就开始工作,Cisco nic 上的 ip 连接就恢复了,win7 停止向其他 nic 发送数据包。
这看起来像是 win7 中的一个错误或者我的安装中存在问题,因为无论 nic2 上的 802.1x 身份验证结果如何,它都不应该将数据包发送到 nic1。
答案2
我有一台具有类似配置的服务器,但度量数字不同 - 两个 NIC 具有相同的度量值。
从您的路由表中,我假设您的 10.60.194.3 接口具有 266 度量(不确定这是否是辅助 NIC 的默认值)。
更改度量,如下演示在这里,改为 256 应该可以解决这个问题。
答案3
默认网关的度量最低(网关:192.168.1.1,接口:192.168.1.3,度量:266)。使用以下静态路由将正确配置其他 NIC 的流量。“-p”开关将在重新启动后保留路由,您可以将度量设置为您想要的任何值。
route -p ADD 10.60.194.0 MASK 255.255.255.240 10.60.194.1 METRIC 1