Hemos configurado un servidor VPN L2TP con este tutorial , todo funciona a las mil maravillas.
El único problema es
No queremos que el cliente enrute todo el tráfico usando esta VPN, solo una subred particular, por ejemplo, 10.0.0.0/20
En Mac, necesitamos establecer la ruta manualmente usando el comando, pero para dispositivos móviles, ¿parece que no hay forma de hacerlo?
Entonces, ¿es posible configurar el cliente automáticamente para la subred "10.0.0.0/20"?
Respuestas:
OK, esta pregunta se hace una y otra vez a través de Internet y la mayoría de las veces hay una respuesta (semi) incorrecta de que no puedes hacer lo que se describió en la publicación original. Déjame aclararlo de una vez por todas :)
La respuesta corta es que L2TP (y PPTP para el caso) no tienen facilidades para hacer empujes de ruta dentro del protocolo, pero se puede lograr fuera del protocolo.
Como L2TP es un invento de Microsoft, la mejor fuente de información es su documentación técnica (por cierto, son bastante buenos). La descripción técnica de lo que voy a explicar a continuación se puede encontrar en Direccionamiento y enrutamiento VPN . Las palabras clave para configurar todo correctamente (si va a hacer su propia investigación) son: DHCPINFORM y "rutas estáticas sin clase".
En primer lugar, cómo funciona:
Bueno, hay una advertencia:
Voy a describir una configuración típica usando Linux box como el servidor VPN (puede configurar servidores MS usando el enlace a la documentación de Microsoft).
Para configurar rutas en los clientes necesitaremos los siguientes ingredientes:
El siguiente es un volcado de una configuración accel-ppp en funcionamiento. Lo estoy proporcionando en su totalidad, de lo contrario sería difícil explicar qué va a dónde. Si ya tiene su VPN funcionando, puede omitir este archivo de configuración y concentrarse en la configuración de DHCP que se describe a continuación.
En este punto, nuestros clientes pueden conectarse a través de L2TP (o PPTP) y comunicarse con el servidor VPN. Entonces, la única parte que falta es un servidor DHCP que está escuchando en los túneles creados y que responde con la información necesaria. A continuación se muestra un extracto del archivo de configuración dnsmasq (solo proporciono opciones relacionadas con DHCP):
En el extracto anterior, estamos empujando las rutas 192.168.70.0/24, 192.168.75.0/24 y 10.0.0.0/24 a través de 192.168.99.254 (el servidor VPN).
Finalmente, si olfatea el tráfico de red (por ejemplo, en el servidor VPN) verá algo como lo siguiente para la respuesta en el mensaje DHCPINFORM:
PD: casi olvido una parte esencial requerida para el uso exitoso de la configuración anterior. Bueno, se describió en los documentos de Microsoft a los que me referí, pero ¿quién leyó la documentación? :) OK, los clientes deben configurarse sin 'Usar puerta de enlace predeterminada' en la conexión VPN (en Windows está en las propiedades de la conexión -> Redes -> Protocolo de Internet Versión 4 (TCP / IPv4) -> Propiedades -> Avanzado -> Configuración de IP ) En algunos clientes también hay una opción llamada 'Deshabilitar la adición de ruta basada en la clase': debe estar deshabilitada ya que deshabilita explícitamente la funcionalidad que estamos tratando de implementar.
fuente
No creo que pueda empujar una ruta al cliente en una VPN L2TP / IPSEC. Tendrá que hacer la configuración directamente en el cliente.
¿Con qué cliente móvil tiene problemas? Es más fácil proporcionar información si conocemos el sistema operativo y el software que está utilizando.
fuente