Windows Vista 和 Windows 7 不遵守路由表度量?

Windows Vista 和 Windows 7 不遵守路由表度量?

我在 Vista 机器上有下面的路由表,在 Windows 7 上也看到同样的问题。

如果我 ping 193.181.14.10,我希望操作系统遵循该指标并选择

0.0.0.0          0.0.0.0       10.1.1.254     172.20.22.14      3

或者

0.0.0.0          0.0.0.0      172.20.22.1     172.20.22.14      3

事实证明,它实际上选择使用

0.0.0.0          0.0.0.0       10.1.1.254        10.1.1.55     30

路由。因此,如果我从表中删除该路由,它就可以正常工作。所谓正常工作,是指数据包通过 172.20.22.14 接口发送,而不是通过 10.1.1.55 接口发送。

是我遗漏了什么还是这是操作系统的一个错误?

IPv4 Route Table  
===========================================================================  
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0       10.1.1.254     172.20.22.14      3
          0.0.0.0          0.0.0.0       10.1.1.254        10.1.1.55     30
          0.0.0.0          0.0.0.0      172.20.22.1     172.20.22.14      3
         10.1.1.0    255.255.255.0         On-link         10.1.1.55     30
         10.1.1.0    255.255.255.0         On-link      172.20.22.14      3
         10.1.1.1  255.255.255.255         On-link         10.1.1.55     30
         10.1.1.1  255.255.255.255         On-link      172.20.22.14      3
        10.1.1.55  255.255.255.255         On-link         10.1.1.55     30
        10.1.1.55  255.255.255.255         On-link      172.20.22.14      3
       10.1.1.255  255.255.255.255         On-link         10.1.1.55     30
       10.1.1.255  255.255.255.255         On-link      172.20.22.14      3
      61.27.12.22  255.255.255.255       10.1.1.254        10.1.1.55      2
        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
      172.20.22.0    255.255.255.0         On-link      172.20.22.14      3
     172.20.22.14  255.255.255.255         On-link      172.20.22.14      3
    172.20.22.255  255.255.255.255         On-link      172.20.22.14      3
        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.1.1.55     30
        224.0.0.0        240.0.0.0         On-link      172.20.22.14      3
  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.1.1.55     30
  255.255.255.255  255.255.255.255         On-link      172.20.22.14      3
===========================================================================
Persistent Routes:
  None

答案1

我在使用 Server 2008 时遇到了同样的问题。我在这里发布了一个详细的问题Windows Server 2008 忽略具有较低度量的持久路由

当微软重新设计他们的新 TCP 堆栈实现时,他们似乎走了自己的路。

微软技术支持提出的解决方案是将网卡设置为忽略所有默认路由规则,并手动将所有路由规则重新创建为持久路由。这很糟糕,但这可能是唯一的选择。

忽略默认路由:

netsh interface ipv4 set interface [ID] ignoredefaultroutes=enabled

要获取 NIC 的 ID,请执行以下操作:

netsh interface ipv4 show interface

答案2

这可能会有帮助: https://superuser.com/a/455968/253137

简而言之:网络和共享中心、更改适配器设置、高级、高级设置,然后将 172.20.22.14 的适配器移至列表中。

答案3

netsh interface ipv4 set interface "Local Area Connection" metric=999

相关内容