On Sunday, October 14, 2018 11:37:49 PM -03 Debian Forever wrote: > Buenas, recientemente he montado un servidor bajo debian el cual lo > quiero para montar una VPN usando el software ikec. > > Lo tengo todo montado, conecta sin problemas y llego a los hosts > internos a través de la conexión VPN tap0 sin problemas. > > # ifconfig > > tap0 Link encap:Ethernet direcciónHW aa:7f:94:15:7d:cc > Direc. inet:192.168.0.230 Difus.:192.168.0.230 > Másc:255.255.255.255 Dirección inet6: fe80::a87f:94ff:fe15:7dcc/64 > Alcance:Enlace ACTIVO DIFUSIÓN FUNCIONANDO MTU:1380 Métrica:1 > Paquetes RX:0 errores:0 perdidos:0 overruns:0 frame:0 > Paquetes TX:0 errores:0 perdidos:0 overruns:0 carrier:0 > colisiones:0 long.colaTX:1000 > Bytes RX:0 (0.0 B) TX bytes:0 (0.0 B) > > La máquina linux donde he montado la VPN tiene la ip 192.168.1.33/24 > > Mi máquina linux debian desktop tiene la 192.168.1.34 > > Ahora pasaría al siguiente punto, que es poder acceder a los hosts > internos desde otra máquina linux, por ejemplo la mia desktop. Para > ello de forma rápida, me he puesto la ruta necesaria: > > route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.1.33 > > Y el tráfico, ya se enruta correctamente. > > Faltaría activar ip forward en el servidor: > > # sysctl -p > net.ipv4.ip_forward = 1 > > Y finalmente, como siempre he hecho para conexiones openvpn, meter una > regla iptables postrouting en el servidor de esta forma: > > iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o tap0 -j MASQUERADE > > Pero no funciona, el tráfico lo enruta bien desde mi máquina hacia la > máquina linux al hacer un traceroute e intentar llegar a un host > interno pero no obtengo respuesta... Siempre he usado este método para > otras conexiones VPN como por ejemplo openpvn o vpnc. > > Hay algo que se me escapa al ser una conexión de tipo de adaptador tap0? > > Gracias de antemano.
Buenas realmente no necesitas "masquerear" los paquete de salida... tenes que asegurarte solamente que salgan .. esta bien el ip_forward y el ruteo para que salga por el tap0 es decir si tu desk es la 1.34 y quiere acceder a la red .0.x hiciste todo bien...ahora lo que supongo que esta pasando(sin pruebas) es que no vuelven los paquetes..porque la red .0.X no sabe como llegar a tu desk(1.34)...por lo que a mi a simple vista me parece que falta la regla de vuelta.. esto facilmente lo podes analizar con tcpdump..para ver si llegan los paquete y donde se queda...por ejemplo en le servidor podes poner tcpdump -i tap0 -n algo asi de sencillo y hacer un ping de tu desk a una ip .0.x y deberias ver lso paquetes saliendo por tap0.. ahora tenes que poner uno tcpdump en la otra punta y ver si llegan al host .0.x .. y a la inversa...proba haciendo traceroute desde la red .0.x a tu desk a ver que pasa.. si adjuntas tcpdump's y traceroute's bien detallados y rutas de los hosts en cuestiion seria mas facil de saber que estaria pasando.. saludos.. Matias.