Miguel Da Silva - URI escribió:
Federico Alberto Sayd escribió:Miguel Da Silva - URI escribió:El forwarding no lo hará el stack de red del kernel? Iptables es una interfaz para manejar el filtrado y manipulación de paquetes.Maxi escreveu:Hola gente, Tengo una consulta con respecto a ruteos de paquetes, a ver si alguien me puede orientar un poco.... Dispongo de un servidor de VPN pptp al que se le conectan x numeros de PCs desde Internet.Por otro lado ese servidor esta dentro de una LAN a donde hay otras PCs claro.Entonces, lo que quiero es que desde algunas PCs de la LAN se pueda acceder a las PCs que estan en Internet, a traves de la VPN. Lo grafico....PCs de LAN <-----> Servidor VPN <----> Internet (VPN) <------> PCs Cliente pptpResumiendo, como llego desde la "PCs de LAN" hasta "PCs Cliente pptp" En el "servidor VPN" la tabla de rutas es: server:/# netstat -rn Kernel IP routing tableDestination Gateway Genmask Flags MSS Window irtt Iface 10.0.0.5 0.0.0.0 255.255.255.255 UH 0 0 0 ppp4 10.0.0.4 0.0.0.0 255.255.255.255 UH 0 0 0 ppp3 10.0.0.1 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0 10.0.0.3 0.0.0.0 255.255.255.255 UH 0 0 0 ppp2 10.0.0.2 0.0.0.0 255.255.255.255 UH 0 0 0 ppp1 192.168.13.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 0.0.0.0 192.168.13.3 0.0.0.0 UG 0 0 0 eth0Que debo agregar en el servidor Linux y en las PCs de clientes para poder rutear ? Gracias. Maxi.El "servidor VPN" tiene que ser capaz de hacer el "forwarding" de estos paquetes. O sea, debe funcionar como un router común y corriente. Lo hacés usando iptables. :) Saludos.SaludosAsí es, efectivamente el forwarding lo hace el mismísimo kernel. Sin embargo, hará falta iptables para "ordenar" el forwarding. :)Al activar el forwarding el kernel sabrá qué hacer, pero no como hacerlo (o sea, ¿donde mando los paquetes que lleguen a la interfaz X y tengan destino a.b.c.d?).
En realidad el kernel sabe el típico algoritmo de ruteo de tcp/ip: Si el forwarding está activado el algoritmo es el siguiente: Existe alguna ruta al host? Uso la ruta al host Existe alguna ruta a la red? Uso la ruta a la red El host está en el mismo segmento? Lo envío directamente No cae en ninguna de las anteriores? Lo envío al default gateway.Es un algoritmo muy sencillo pero hay que ver cuantos dolores de cabeza uno se ahorra cuando hay que configurar el ruteo de una máquina.
Es interesante que iptables sigue siendo parte del kernel, generalmente como módulo, pero está en el kernel. La proxima versión de iptables, nftables (si no me equivoco) sí estará en espacio de usuario y dicen que simplificará mucho el uso de iptables.¿Se entiende lo que quiero decir?En fin, viste como es, cuando se habla de ruteo, firewall, iptables y Linux, se termina considerando todo como una sola "cosa", aun que realmente sean piezas (Linux, iptables, tal vez iproute2, etc) que son agrupadas para preparar la solución al problema.Me quedo por acá. Saludos.
Saludos