Estou usando o cliente VPN Shrew Soft v2.2.2 para conectar a uma rede remota. Tudo funciona bem, exceto que estou enfrentando um vazamento de DNS de acordo com https://dnsleaktest.com/ .
No cliente VPN, já verifiquei para usar os servidores DNS fornecidos pelo servidor VPN:
Eu também marquei para Obter topologia automaticamente ou Tunnel All :
De acordo com https://dnsleaktest.com/ ambos os servidores DNS são usados: o local e o remoto (VPN). Assim, ocorre algum tipo de balanceamento de carga. Usando Get-DnsClientServerAddress
no PowerShell, posso confirmar que o Windows está ciente de ambos os servidores DNS (locais e remotos). Os servidores DNS locais são recebidos do NIC físico e os servidores DNS remotos são recebidos do NIC virtual do Shrew Soft. Portanto, tenho certeza de que o balanceamento de carga está ocorrendo, o que é muito indesejável nesse cenário.
Existe algo que eu possa configurar confortavelmente para usar os servidores DNS locais quando não estiver conectado a uma VPN e usar apenas os servidores DNS da VPN quando estiver conectado a uma VPN?
Você pode executar um script de comando para modificar os servidores DNS em sua interface com vazamento.
Ou seja, se sua interface física se chama "Ethernet" e seu IP está configurado estaticamente com DNS estaticamente confgurado, então execute um script de comando como administrador com esta linha:
Você receberá uma mensagem
talvez, ou talvez você entenda isso no meu caso, onde eu só tenho um. Quando tentei isso em uma configuração DHCP para esta interface, o servidor DNS foi definido pelo DHCP quando removi o estático. O Windows realmente quer que você tenha um servidor DNS.
Depois que sua VPN estiver ativa. Veja se você tem vazamentos então. Antes de derrubar sua VPN, adicione novamente seu servidor DNS à interface com
TL;DR
Aplique a prioridade mais alta (valor de métrica mais baixo) à sua interface VPN em comparação com outras interfaces e reinicie sua máquina para que todos os serviços estejam cientes da nova métrica:
Explicação
O Windows 10 usa o recurso Métrica Automática para determinar a métrica de cada interface de rede automaticamente. Você pode esperar que o Windows use a métrica apenas para fins de roteamento, mas também a usa para selecionar o servidor DNS primário. Você pode ler mais sobre isso nesta excelente resposta .
No meu caso, uma métrica de 55 foi atribuída à minha interface VPN virtual, 50 à minha interface WiFi física e 5 à minha interface Ethernet física. Você pode verificar as métricas atuais com o seguinte comando do PowerShell:
Em seguida, alterei a métrica da minha interface VPN virtual para
1
:A mudança foi visível
Get-NetIPInterface
imediatamente, mas os serviços ainda não pareciam estar cientes dessa mudança. Após uma reinicialização, tudo funcionou como esperado. A interface VPN com seu servidor DNS era a prioridade mais alta e não sofri mais um vazamento de DNS.No entanto, pode não ser 100% estável, pois os outros servidores DNS ainda estão disponíveis e serão escolhidos, se o servidor DNS da conexão VPN não responder a tempo.