在Windows上有两个默认网关时进行路由决定

我的Windows机器有两个网卡,都有默认的网关。 Windows如何确定在将数据包发送到远程端点时应该访问哪个网关?

更确切地说,这是我的路由表:

Active Routes: Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 10.0.0.1 10.0.0.191 10 0.0.0.0 0.0.0.0 192.168.1.254 192.168.1.38 20 10.0.0.0 255.255.255.0 10.0.0.191 10.0.0.191 10 10.0.0.191 255.255.255.255 127.0.0.1 127.0.0.1 10 10.255.255.255 255.255.255.255 10.0.0.191 10.0.0.191 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.38 192.168.1.38 20 192.168.1.38 255.255.255.255 127.0.0.1 127.0.0.1 20 192.168.1.255 255.255.255.255 192.168.1.38 192.168.1.38 20 224.0.0.0 240.0.0.0 10.0.0.191 10.0.0.191 10 224.0.0.0 240.0.0.0 192.168.1.38 192.168.1.38 20 255.255.255.255 255.255.255.255 10.0.0.191 10.0.0.191 1 255.255.255.255 255.255.255.255 192.168.1.38 192.168.1.38 1 Default Gateway: 192.168.1.254 

当我发送ping到10.0.0.180时,它通过与10.0.0.191关联的网卡发送一个arp,而当我ping www.google.com它通过192.168.1.254。 它是如何决定的?

根据第三条规则,你的ping到10.0.0.180到10.0.0.191

看看这个 :

使用多个网关

如果您有多个接口并且为每个接口configuration一个默认网关,默认情况下,TCP / IP将自动计算基于接口速度的接口指标。 接口度量值将成为configuration的默认网关的路由表中默认路由的度量标准。 速度最快的接口默认路由的度量值最低。 结果是,无论何时在多个接口上configuration多个默认网关,最快的接口将用于将stream量转发到其默认网关。

如果多个相同速度的接口具有相同的最低接口度量,则基于绑定顺序使用第一networking适配器的默认网关。 第一个不可用时使用第二个networking适配器的默认网关。

在以前版本的TCP / IP中,多个默认网关都将默认路由度量设置为1,而使用的默认网关取决于接口的顺序。 这有时导致难以确定TCP / IP协议正在使用哪个默认网关。