How to set cellular modem as primary connection in Windows 10
Posted: Tue Jan 19, 2021 8:20 pm
This is written as of Windows 10 v1909.
Sometime around May 2018, Microsoft changed the way network connections are handled. There used to be a configuration option called "provider order" in the advanced tab of the network connections area, but that tool has been removed in favor of using interface metrics. Currently, Windows can set USB connected Cellular Modems as having priority over Wi-fi connections, but ethernet is always priority over both cellular and wi-fi without some modification. This can lead to a situation where the default route for traffic is passed to ethernet which has no internet, and no way to change the default route.
The first step is to set your interface metrics in the order you want them to be utilized.
Use this to get the current state via a cmd window or powershell:
Next, use this to set the interface metric (lower is higher priority), replace <ifnumber> and <somenumber>:
The final step is to create a new dword value at this registry location (this is the missing magic):
HKLM\Software\Policies\Microsoft\Windows\WcmSvc\Local
references:
The old way:https://www.dtonias.com/change-network- ... indows-10/
Setting metrics:https://www.ghacks.net/2016/12/02/chang ... indows-10/
The source of the fix (search "Vincent Put")https://social.technet.microsoft.com/Fo ... f=required
Sometime around May 2018, Microsoft changed the way network connections are handled. There used to be a configuration option called "provider order" in the advanced tab of the network connections area, but that tool has been removed in favor of using interface metrics. Currently, Windows can set USB connected Cellular Modems as having priority over Wi-fi connections, but ethernet is always priority over both cellular and wi-fi without some modification. This can lead to a situation where the default route for traffic is passed to ethernet which has no internet, and no way to change the default route.
The first step is to set your interface metrics in the order you want them to be utilized.
Use this to get the current state via a cmd window or powershell:
Code: Select all
Get-NetIPInterface
Code: Select all
Set-NetIPInterface -InterfaceIndex "<ifnumber>" -InterfaceMetric "<somenumber>"
HKLM\Software\Policies\Microsoft\Windows\WcmSvc\Local
Code: Select all
fMinimizeConnections REG_DWORD 0
The old way:https://www.dtonias.com/change-network- ... indows-10/
Setting metrics:https://www.ghacks.net/2016/12/02/chang ... indows-10/
The source of the fix (search "Vincent Put")https://social.technet.microsoft.com/Fo ... f=required