VPNc, problemas de ruteo hacia el host

vpnc

"vpnc is a client for cisco vpn concentrator flavors, where a VPN is a technology for using the Internet or another intermediate network to connect computers to isolated remote computer networks that would otherwise be inaccessible."
-- from wikipedia [search: vpn]

Overview

Para quienes tenemos que conectarnos ocasionalmente para trabajar de manera remota, una de las herramientas que podemos usar es una VPN (virtual private network). Para el caso especifico que nos ocupa, uno de los proveedores más comunes es Cisco.

Obviamente, se tienen clientes "oficiales" para las plataformas destino de los usuarios (windows, por ejemplo), sin embargo no es mi caso, así que instalando VPNc el cual es un cliente que podemos usar portando el perfil de usuario y que el servidor sea de las siguiente plataformas:
  • Cisco VPN concentrator 3000 Series
  • Cisco IOS routers
  • Cisco PIX / ASA Zecurity Appliances
  • Juniper/Netscreen

El caso que nos ocupa es que ocasionalmente, es posible recibir problemas tales como:
  • can't send packet: Can't assign requested address
  • can't send packet: No route to host

Veamos...

Configuración

Configurar un nuevo perfil no tiene mucho problema, basta con saber los siguientes datos dentro de un archivo especifico, digamos algo como [ ~/empresa/perfil.vpnc ]
  • ID
  • Gateway
  • Password
  • Domain

En mi caso, el archivo que tengo es algo como esto:
[ 192.168.0.102 | proletaria ] ~                   
andresaquino $ cat ~/empresa/andres.vpnc
IPSec ID Empresa_IT
IPSec gateway svpn.empresa.com
IPSec secret 3672456rtN
Domain EMPRESAMX


Solución

Para el caso que nos ocupa, nos mostraba los siguientes problemas:
[ 192.168.0.101 | proletaria ] Downloads                   
andresaquino $ sudo vpnc ~/empresa/andres.vpnc 
Enter username for svpn.empresa.com: m0123
Enter password for m0123@svpn.empresa.com: 
can't send packet: Can't assign requested address


Y este caso:
[ 192.168.0.101 | proletaria ] Downloads                   
andresaquino $ sudo vpnc ~/empresa/andres.vpnc 
Enter username for svpn.empresa.com: m0123
Enter password for m0123@svpn.empresa.com: 
can't send packet: No route to host


¿Qué hicimos? simplemente limpiar las tablas de encaminamiento de paquetes o dicho en lenguaje más claro: limpiar las tablas de ruteo. El sistema operativo mantiene una lista de direcciones IP por donde encaminar las solicitudes de red, digamos por ejemplo que buscamos saber por donde sale una solicitud hacia mail.google.com, luego entonces con un [ route get mail.google.com ] en OS X podemos obtener algo como lo siguiente:

Para el caso de Linux, podemos usar tracepath o traceroute (de los cuales, será más común encontrar traceroute):

Nota:
El comportamiento de [ route -n ] no será el mismo entre distintas versiones de UNiX, por lo tanto te recomiendo usar [ traceroute ] o [ netstat -ar ]

Sin embargo, ocasionalmente (sobre todo en equipos móviles) estas tablas pueden no ser las mismas cuando se cambia de enlace de red (Wifi) y será necesario limpiar las tablas para encaminar nuestras sesiones de red correctamente, para eso usaremos la opción [ flush ] del comando [ route ] y reiniciar nuestro dispositivo de red. Tomen en cuenta que aunque lleguemos a reiniciar el dispositivo eso no quiere decir que las tablas de ruteo se eliminarán, ya que estas permanecen en el cache del sistema operativo durante un tiempo determinado.

Una vez que realizas el flush, reiniciamos el dispositivo de red, iniciamos nuestra VPN y listo!
[ 192.168.0.101 | proletaria ] Downloads                   
andresaquino $ sudo vpnc ~/empresa/andres.vpnc 
Enter username for svpn.empresa.com: m0123
Enter password for m0123@svpn.empresa.com: 
Connect Banner:
| SYSTEM UNAUTHORIZED USE WARNING
| El uso de este sistema esta RESTRINGIDO SOLAMENTE PARA PERSONAL AUTORIZADO. Cualquier actividad es monitoreada y registrada por personal del area de sistemas, por lo tanto cualquier persona que haga uso del mismo acepta que estas actividades sean monitoreadas y registradas. Estar consciente que si cualquier actividad criminal es detectada, dichos registros asi como informacion personal seran entregadas a las autoridades correspondientes para su investigacion. 

add net 10.10.11.111: gateway 192.100.90.71
add net 10.10.11.112: gateway 192.100.110.71
add net 10.10.11.113: gateway 192.100.120.71
...
VPNC started in background (pid: 24957)...


Referencias


¡kualli ohtli / buen camino!

Popular Posts