Configurar DNS en un adaptador VPN de Windows con PowerShell y verificar
Windows vincula el DNS del túnel al adaptador, no al perfil VPN. Configúrelo tras conectar en PowerShell y luego compruebe si una reconexión lo mantiene.
Una conexión VPN de Windows no guarda los servidores DNS en el perfil que edita en Configuración. Cuando el túnel sube, el cliente negocia la configuración IP con la puerta de enlace, la puerta envía una lista de resolutores y Windows la aplica al adaptador del túnel. Ese adaptador es una interfaz aparte de su Wi-Fi o Ethernet, y la lista pertenece a la interfaz, no al perfil. Una vez que sabe qué objeto posee el valor, sobrescribirlo en PowerShell es un comando; hacer que la sobrescritura sobreviva a una reconexión es la parte que exige una decisión.
Qué objeto posee la dirección
RAS crea el adaptador del túnel cuando la conexión tiene éxito y lo elimina cuando la conexión cae. Los servidores DNS que ve en ipconfig /all llegan durante ese intercambio de configuración, junto a las direcciones IPv4 e IPv6 y las rutas. Como el valor está ligado a la interfaz, Set-DnsClientServerAddress escribe en algo que solo existe mientras existe la conexión.
Ese único hecho explica la mayor parte de la confusión en torno al DNS de VPN. Un perfil puede inspeccionarse desconectado, pero no hay interfaz a la que apuntar, así que un script de inicio de sesión que llama al comando contra el alias de VPN falla antes de que nadie se haya conectado. También explica un cambio que parece revertirse: nada revirtió, la interfaz se destruyó y se reconstruyó con los valores que envió la puerta de enlace.
Encuentre el alias antes de tocar DNS
El nombre del perfil y el alias de la interfaz suelen ser la misma cadena, pero no son el mismo objeto. Get-VpnConnection enumera perfiles; Get-NetAdapter enumera las interfaces que Windows tiene realmente. Los comandos DNS quieren la segunda, y ambas divergen más a menudo de lo que la gente espera, sobre todo cuando el cliente añade un descriptor como "(RAS)" al nombre del adaptador.
Si el perfil no existe, PowerShell puede crear una entrada nativa. El tipo de túnel y la autenticación deben coincidir con lo que ofrece la puerta de enlace, porque la discrepancia aparece al conectar, no al crear:
Add-VpnConnection -Name "Corporate" -ServerAddress vpn.example.net `
-TunnelType Ikev2 -EncryptionLevel Required `
-AuthenticationMethod Eap -AllUserConnection
Conéctese una vez y luego lea el alias real antes de escribir cualquier comando DNS:
rasdial.exe "Corporate"
Get-NetAdapter | Where-Object InterfaceDescription -like "*VPN*"
Get-DnsClientServerAddress -InterfaceAlias "Corporate"
Aplique la sobrescritura en el orden correcto
El orden importa más que la sintaxis. El adaptador debe estar activo, el alias debe resolverse y la cuenta debe tener permiso para cambiar la configuración de la interfaz. Una conexión por usuario suele aceptar el cambio del usuario conectado; una conexión para todos los usuarios creada con -AllUserConnection normalmente necesita un shell elevado.
El comando en sí es una línea, documentado en la referencia de Set-DnsClientServerAddress:
Set-DnsClientServerAddress -InterfaceAlias "Corporate" -ServerAddresses 10.20.0.53,10.20.0.54
Get-DnsClientServerAddress -InterfaceAlias "Corporate" -AddressFamily IPv4
Dos modos de fallo merecen reconocerse a simple vista. Un alias incorrecto produce un error del comando, que es el buen resultado, porque el silencio sería peor. Un comando correcto sin efecto visible suele significar que está mirando el adaptador equivocado: un adaptador de túnel sobrante de otro cliente, una NIC física con una descripción similar o un segundo adaptador virtual creado por una herramienta de red aislada.
Por qué una reconexión puede deshacer el cambio
La sobrescritura pertenece a una instancia de interfaz. Cuando el cliente desmonta el adaptador y lo reconstruye en la siguiente conexión, los valores enviados se aplican de nuevo y su lista desaparece. Algunos clientes recrean la interfaz en cada conexión; otros la reutilizan durante toda la sesión. Compare el índice de interfaz en Get-NetAdapter entre dos conexiones y sabrá qué comportamiento tiene.
Existen tres respuestas duraderas, y apilarlas crea fallos propios. Un sufijo DNS específico de la conexión más una regla NRPT envía solo el espacio de nombres interno al resolutor interno y deja en paz los nombres públicos. Un ajuste de Group Policy o MDM aplicado a la conexión VPN establece el DNS al conectar sin ningún script. Una tarea programada que reaccione al evento de conexión y vuelva a ejecutar el comando es la opción tosca, pero funciona y deja un registro. Elija un solo propietario para DNS y anote cuál es.
Los nombres internos de una sola etiqueta también necesitan una lista de búsqueda de sufijos. Set-DnsClientGlobalSetting -SuffixSearchList es para toda la máquina, así que cambia la resolución de cada adaptador del equipo, incluido Ethernet. Pruébelo en una máquina de laboratorio antes de que entre en una imagen.
Verifique la resolución, no solo el ajuste
Un resolutor listado en un adaptador solo demuestra que se escribió un valor. Pregunte al servidor previsto directamente y luego pregunte por la ruta normal:
Resolve-DnsName server01.corp.example -Server 10.20.0.53
Resolve-DnsName server01.corp.example
La división le dice dónde está el fallo. La consulta directa responde y la consulta simple falla: el ajuste del adaptador o la lista de sufijos no está en vigor. Ambas fallan: el resolutor no es alcanzable por el túnel, así que mire rutas y reglas de cortafuegos antes de tocar DNS de nuevo. La consulta directa falla mientras la simple responde desde otro sitio: el split DNS está mal configurado y un nombre interno lo responde un resolutor público, lo que es un problema de política antes que de conectividad.
Ejecute la prueba dos veces, una justo después de conectar y otra tras desconectar y reconectar, y compare la Get-DnsClientServerAddress salida de ambas ejecuciones. Si el valor enviado vuelve en la segunda conexión, la sobrescritura vivió y murió con el adaptador, y solo aguantará la ruta NRPT o de política de la sección anterior. Guarde ambas transcripciones y las marcas de tiempo de conexión; resuelven la pregunta de si se mantiene más rápido que otra ronda de ediciones.