Repartir un paquete de punto a sitio de Azure funciona con cinco portátiles y se desmorona con cincuenta. La ruta con script tiene dos trampas que cuestan una tarde cada una: un error de parámetro que parece un fallo de certificado, y una ruta que la conexión nunca instala aunque todo lo demás esté bien. Ninguna de las dos se arregla descargando de nuevo el paquete de cliente. Haz las comprobaciones siguientes en orden y detente en la primera que falle.

Mantengo el orden fijo porque cada paso da por hecho que el anterior es cierto.

1. Corrige el ámbito del perfil antes del primer dispositivo

Un perfil para todos los usuarios vive en la máquina y aparece en todas las sesiones. Un perfil por usuario sigue una cuenta y guarda sus credenciales en el contexto de esa cuenta. Elige uno y quédate con él, porque una máquina con ambos muestra dos entradas con el mismo nombre, y los usuarios se conectan a la que aparece primero. Cambiar el ámbito más adelante significa quitar primero el perfil antiguo en lugar de editarlo en su sitio.

Los perfiles para todos los usuarios encajan en dispositivos compartidos y de kiosco donde nadie inicia sesión con una cuenta personal. Son el valor predeterminado incorrecto cuando el certificado se emite por persona, ya que un perfil de ámbito de máquina no puede presentar una credencial que pertenece a otra persona. Escribe la elección en el registro de despliegue antes de que exista el segundo portátil.

2. Pasa los modificadores como modificadores

Add-VpnConnection acepta parámetros modificadores que o están presentes o no. Pasarles $true provoca un error EapConfigXmlStream, y por eso tantos hilos sobre esto acaban inspeccionando cadenas de certificados que nunca fueron el problema.

Add-VpnConnection -Name "Contoso P2S" `
  -ServerAddress "azuregateway-00000000-0000-0000-0000-000000000000.cloudapp.net" `
  -AllUserConnection -UseWinLogonCredential -RememberCredential `
  -TunnelType Automatic -EncryptionLevel Required -AuthenticationMethod MSChapv2

La dirección de puerta de enlace de arriba es ilustrativa; toma la real del paquete descargado y mantenla entre comillas. -AllUserConnection requiere una sesión elevada, y el perfil que crea es de ámbito de máquina aunque hayas ejecutado el comando como administrador. Lee el conjunto de parámetros con Get-Help Add-VpnConnection -Parameter * antes de añadir más modificadores.

3. Añade la ruta que el adaptador no añade

El adaptador de punto a sitio instala una ruta para el grupo de direcciones del cliente y nada más.

Un prefijo de red virtual fuera de ese grupo queda inalcanzable mientras el túnel sigue informando Connected, que es el fallo más confuso de este flujo de trabajo. Añade la ruta explícitamente después de que la conexión se realice, y apúntala a la dirección de interfaz que recibió el adaptador en lugar del nombre público de la puerta de enlace. Esa dirección viene de ipconfig tras conectar, y cambia entre sesiones.

route add 10.0.0.0 mask 255.255.0.0 10.0.1.5
route print -4 | findstr /c:"10.0.0.0"

Borra la ruta al desconectar para que un siguiente salto obsoleto no pueda convertir más tarde el tráfico en un agujero negro. Trata el comando como una desviación local documentada: si una versión futura del cliente añade la ruta por sí misma, tu línea se convierte en un duplicado que compite con el siguiente salto propio del paquete.

4. Verifica como usuario estándar

Una sesión de administrador oculta errores de ámbito, porque la elevación a veces proporciona una credencial que el usuario real no tendría.

Inicia sesión como no administrador, conéctate a través del perfil y prueba un servicio privado en lugar de internet público. Confirma que el perfil aparece en Get-VpnConnection -AllUserConnection, que el estado llega a Connected y que la ruta añadida apunta a la dirección actual del adaptador. Después suspende la máquina, despiértala y compara ipconfig de nuevo.

5. Retira un despliegue defectuoso con limpieza

Remove-VpnConnection con -AllUserConnection y -Force elimina el perfil de ámbito de máquina. Force importa porque un perfil conectado se niega de otro modo a eliminarse, y un perfil a medio eliminar es más difícil de diagnosticar que una reinstalación limpia.

Guarda el nombre del perfil, la dirección de puerta de enlace y las rutas añadidas en las notas de despliegue. Esos tres valores son lo que necesita una llamada al servicio de asistencia antes de que alguien abra un tíquet, y también son lo que necesita el siguiente script cuando cambia la dirección de puerta de enlace. Añade la versión del paquete de cliente a la misma nota, porque el comportamiento de la ruta pertenece a ese paquete y no a Windows.

Artículos relacionados