Eu não acredito que haja uma maneira de impedir que isso aconteça, além de atribuir estaticamente os servidores DNS na conexão VPN.
Para alterar a ordem em que os servidores DNS são consultados, é suposto que um deles possa alterar a ordem de associação da interface de acordo com o link , mas isso não parece afetar as conexões VPN nos meus testes pessoais no Windows 7; Confirmei que minha conexão VPN foi consistentemente adicionada à parte superior da lista HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Linkage\Bind
, independentemente das configurações de ordem de ligação da interface.
No entanto, você pode redefinir as alterações de DNS depois que a conexão VPN for estabelecida.
Coletando informações
Abra um prompt de comando ( Start
- > Run...
- > cmd
) e execute netsh interface ipv4 show dnsservers
. Você verá uma saída semelhante à seguinte:
Configuration for interface "My VPN"
Statically Configured DNS Servers: 11.22.33.44
55.66.77.88
...
Configuration for interface "Local Network Connection"
DNS servers configured through DHCP: 192.168.0.1
192.168.0.2
...
Você precisa do nome da interface para a VPN e, opcionalmente, do primeiro servidor DNS da conexão não VPN. Neste exemplo, eles são Minha VPN e 192.168.0.1 , respectivamente.
Configurando tudo
Opção 1: desabilitar DNS da VPN
Supondo que você não precise dos servidores DNS da VPN, basta executar o seguinte no prompt de comando:
netsh interface ipv4 delete dnsservers name="<Interface Name>" address=all validate=no
Eg: netsh interface ipv4 delete dnsservers name="My VPN" address=all validate=no
Se você executar netsh interface ipv4 show dnsservers
novamente, verá que os servidores DNS associados à VPN foram removidos; os servidores DNS da sua conexão não-VPN serão usados para resolver nomes de host.
Opção 2: DNS VPN suplementar
Se você precisar que os servidores DNS da sua VPN resolvam nomes de host da intranet, você pode executar o seguinte no prompt de comando:
netsh interface ipv4 add dnsservers name="<Interface Name>" address=<Non-VPN DNS server> index=1 validate=no
Eg: netsh interface ipv4 add dnsservers name="My VPN" address=192.168.0.1 index=1 validate=no
Nesse caso, netsh interface ipv4 show dnsservers
mostrará que o primeiro servidor DNS da conexão não VPN foi adicionado ao topo da lista de servidores DNS da VPN. Ele será usado para resolver nomes de host primeiro e, se não for bem-sucedido, voltará a usar os servidores DNS comuns da sua VPN.