So a few days ago I installed Windows 10, installed my software and went on setting up a VPN connection to our remote workplace.
Whenever I install this VPN connection, I create two of them. One of them is with ‘use default gateway at remote network’ and one has this option disabled.
In that way I can choose to have my local traffic run through our company network or not (split-tunnelling).
But to my astonishment the properties button of the IPv4 or IPv6 settings doesn’t do anything!
Apperently this is a bug.
However there is still an option to change this by using Powershell.
Just assume your VPN connection is named “VPN 1”, with the Powershell command:
set-vpnconnection -name 'VPN 1' -SplitTunneling $true
you can set the VPN Connection to use Split-Tunneling (use gateway at remote network option).
Happy as I was, that Powershell came once again to the rescue I started the VPN and got to work.
But I noticed I couldn’t connect to my company’s servers.
I tried pinging one of the servers, but the IP resolved back to our ISP’s IP address, so I knew our internal DNS wasn’t queried.
An “nslookup” test confirmed this.
It appears that Windows 10 is using a function called “smart multi-homed name resolution”. This function sends DNS requests to all interfaces, and uses the fastest response it receives (thus being my ISP’s DNS servers).
In Windows 8 this could be turned off by adding a new registry entry named “DisableSmartNameResolution” to the key HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows NT\DNSClient. In Windows 10 it appears this doesn’t work anymore.
Even adding the DNS Servers of my company through use of the command NETSH did not work (and you have to do it every time after you connect to your VPN).
But.. there is one solution.
It appears this BUG is only there when using a WIRED network and not if you use a WiFi connection.
So it appear for the moment I am stuck with my WiFi Network to set up a VPN with SplitTunneling to my company