Una guía “corta” para novatos como yo, que no saben mucho de redes. No es muy nuevo aquí, pero es un resumen de todas las buenas opciones descritas en las respuestas anteriores y en otros hilos relacionados. Todo el procedimiento consiste en 3 pasos básicos:
1) Haz que todo el tráfico NO vaya a través de VPN. Para ello debes desmarcar la casilla Use default gateway on remote network
en la configuración de VPN. Asegúrate de desmarcar esta casilla tanto para IPv4 como para IPv6. Por lo general, simplemente desactivo el protocolo IPv6 completamente para la conexión VPN.
(!) Es (a veces) posible que desmarcando esa casilla sea suficiente para el trabajo normal - en mi experiencia, las rutas necesarias (que dirigirán el tráfico necesario a través de la VPN) pueden ser añadidas automáticamente después de que se establezca la conexión VPN. No sé exactamente dónde y cómo se configuran estas reglas, pero tal escenario existe - probablemente es alguna magia hecha por los administradores de la red VPN.
**2) Hacer sólo el tráfico necesario que va a través de VPN. Para esto es necesario definir las rutas. Aquí tienes 3 opciones:
2.1) Añadir ruta permanente a través de la pasarela VPN:
route -p add a.b.c.d/<CIDR> w.x.y.z
o route -p add a.b.c.d mask e.f.g.h w.x.y.z
donde ‘pasarela VPN’ = ‘tu IP en la red VPN’ = w.x.y.z
y dirección/red de destino = a.b.c.d
. Puede encontrar w.x.y.z
ejecutando ipconfig
y buscando el nombre de su conexión VPN o, si utiliza PowerShell, puede obtener una salida compacta ejecutando ipconfig | grep -A5 PPP
(que dará 5 líneas después de encontrar cada conexión PPP).
Desventajas: tendrá que volver a crear las rutas si su IP de la VPN cambia.
2.2) Agregar una ruta permanente a través de la interfaz de la red VPN:
route -p add a.b.c.d/<CIDR> 0.0.0.0 IF <interface number>
donde a.b.c.d
es la dirección/red de destino y interface number
es el identificador de su conexión VPN. Este ID se puede encontrar ejecutando netstat -rn
, o, para una salida más compacta, netstat -rn | grep -A10 'Interface List'
.
Pros: no es necesario cambiar nada si su dirección VPN (w.x.y.z
) va a cambiar.
Contras: es necesario volver a crear rutas con un nuevo ID si elimina su conexión VPN.
- 3) Usar el cmdlet de PowerShell:
Add-VpnConnectionRoute -ConnectionName '<VPN connection name>' -DestinationPrefix a.b.c.d/<CIDR>
Pros: las rutas necesarias se agregan cada vez que se establece una conexión VPN y se eliminan cada vez que se desconecta.
Contras: no hay un cmdlet Get-VpnConnectionRoutes
, por lo que puede ser difícil manejar estas reglas.
3) Comprueba y asegúrate de que el enrutamiento funciona como se espera!
Si has añadido rutas persistentes, puedes comprobarlas ejecutando netstat -rn | grep -A10 'Persistent Routes'
.
Y, por último, ejecuta unos cuantos comandos tracert
contra ambas direcciones IP que se supone que deben ser accedidas a través de VPN y contra las que deberían funcionar sin VPN.