En un nivel bastante fundamental, una VPN emula una "red privada" cuyo propósito es aislarse de Internet en general. La "V" significa que dicho aislamiento se realiza criptográficamente en lugar de físicamente; Sin embargo, el modelo sigue siendo "cables separados". Si su máquina forma parte de dos VPN simultáneamente, entonces las redes privadas ya no estarán aisladas. Esto tiende a contradecir la razón misma por la que se crearon las redes privadas en primer lugar.
Una implementación de VPN se llama así porque las aplicaciones no necesitan conocerla. Las aplicaciones utilizan protocolos estándar relacionados con Internet (DNS para resolución de nombres, sockets TCP y UDP ...) y la VPN recoge el tráfico y hace su magia de forma transparente. Una implementación de VPN típica se enlaza a sí misma en las tablas de enrutamiento del sistema, para recibir paquetes que están destinados a una determinada clase de direcciones. Dos VPN pueden funcionar en paralelo solo si las direcciones utilizadas en las dos redes privadas no se superponen, y no es fácil de lograr, ya que las redes privadas, al ser privadas, no utilizan un esquema de asignación de direcciones global. Las redes privadas usualmente se esfuerzan en las "clases privadas" como 10. *. *. * Y 192.168. *. *.
El DNS es una buena ilustración del problema de acceder a dos redes privadas simultáneamente. Cuando una aplicación quiere acceder a una máquina llamada "ejemplo", no sabe en qué red está. Ese es el punto de las redes privadas: las aplicaciones no necesitan ser conscientes de la existencia de la red privada. La red privada alberga su propio servidor de nombres, que puede resolver los nombres de las máquinas que alberga. Si se vincula a dos VPN, entonces, para cada resolución de nombre, tendrá que hablar con ambos servidores de nombres. Por lo tanto, el servidor de nombres de la red privada 1 también recibirá solicitudes de resolución de nombres para los nombres que se encuentran en la red privada 2. Esto es sospechoso. Y si se usa el mismo nombre en ambas redes, entonces todo el infierno se desata. Este es el mismo problema que las direcciones IP superpuestas, traducidas al espacio de nombres.
Además, si su máquina actúa como enrutador, felizmente enrutará los paquetes de una VPN a la otra. En un sistema Linux, esto es tan simple como:
echo 1 > /proc/sys/net/ipv4/ip_foward
lo que algunas distribuciones de Linux harán por usted si lo solicita en el momento de la instalación. Dependiendo del usuario no , hacer algo así parece arriesgado.
Para resumir, el modelo normal para una VPN es que:
- un sistema de usuario determinado es parte de la VPN, solo la VPN (y, por lo tanto, solo una VPN);
- si el sistema debe poder hablar con el "mundo exterior", puede hacerlo solo a través de una puerta de enlace dedicada que, desde el punto de vista del sistema del usuario, forma parte de la VPN.
En particular, un sistema vinculado a una VPN no se vinculará simultáneamente a otra red, ya sea la VPN o Internet en general. Un software de VPN apropiado secuestrará la ruta predeterminada y se asegurará de que vea todo el tráfico entrante y saliente para todo el sistema. Por naturaleza, esto no tolera la presencia simultánea de otra VPN.