How does Windows 7 decide which route to take if 2 connections to an internet source exist? (e.g. a Wireless and an Ethernet one to a router)

How does Windows 7 decide which route to take if 2 connections to the Internet exist? (e.g. wireless versus wired)


If there are more than 1 path, Windows will refer to the metric from the routing table. Use route print to show it. Basically, it will prefer the path with the lowest metric.

In the past, the metric is derived from the speed of the link; however, the rules for Win7 are still unknown according to this.


There's the routing table. You could use the route command to check out the metrics. In the command line (Run: cmd):

> route PRINT

But, you could also change the internet connection order:

  1. Go to: Control Panel -> Network and Sharing Center -> Change adapter settings

  2. Hit Alt so the top menus show and go to Advanced -> Advanced Settings...

  3. Finally, in the Adapters and Bindings tab, modify Connections order as desired


if there are 2 default routes (gateway) it preferes the one with lower metric

the route metric in windows 7 is the sum of the adapter metric and the gateway metric

if you manually set identical metric (for example 24 on the adapter1 and 2 on the gateway1; 25 on the adapter2 and 1 on the gateway2 in the TCP/IP advanced settings) it seems that windows 7 does a kind of load balancing for apps opening multiple tcp/ip connections and does automatic failover too.

I am testing this on my Windows 7 x64 Ultimate edition with a 54Mbps wireless adapter + 100 Mbps ethernet adapter and 2 ISP

no Microsoft docs found about this till now


In my experience, it will always prefer the more "permanent" connection method. I.e. Ethernet preferred to Wireless, Wireless preferred to Bluetooth etc. (all the way down to modem). But failover exists as well, so if Ethernet gets disconnected, Windows will attempt to connect over Wireless.

Case in point: I have a 300Mbps Wireless-N network. If I connect my laptop to the router directly (100Mbps Ethernet), Windows switches to that connection (without disconnecting the wireless network).