3

I have the route table below on a Vista machine, I can see the same problem on Windows 7 too.

If I ping 193.181.14.10, I would expect the OS to honor the metric and choose either

0.0.0.0          0.0.0.0       10.1.1.254     172.20.22.14      3

or

0.0.0.0          0.0.0.0      172.20.22.1     172.20.22.14      3

It turns out that it actually choose to use the

0.0.0.0          0.0.0.0       10.1.1.254        10.1.1.55     30

route. So if I remove that route from the table, it works. By working, I mean the packets are sent over the 172.20.22.14 interface rather than the 10.1.1.55 interface.

Am I missing something or is this a bug in the OS?

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
Fredrik Jansson
  • 133
  • 1
  • 6

3 Answers3

4

I'm having the same problem with Server 2008. I posted a detailed question here Windows Server 2008 Ignores Persistent Route With Lower Metric.

It seems Microsoft went their own way when they redesigned their new TCP stack implementation.

The solution proposed by Microsoft tech support is to set the network card to ignore all default routing rules and recreate all routing rules manually as persistent routes. It sucks, but that might be the only option.

To ignore default routes:

netsh interface ipv4 set interface [ID] ignoredefaultroutes=enabled

To get the ID of your NIC:

netsh interface ipv4 show interface
K Craver
  • 56
  • 1
0

This may help: https://superuser.com/a/455968/253137

In short: Network and Sharing Center, Change adapter settings, Advanced, Advanced Settings, and then move adapter for the 172.20.22.14 up in the list.

bers
  • 101
  • 3
-1
netsh interface ipv4 set interface "Local Area Connection" metric=999
Anon
  • 1