¿Qué es el reenvío de IP del kernel? pregunta relacionada

¿Qué es el reenvío de IP del kernel? pregunta relacionada

Esta pregunta está relacionada con la respuesta y el comentario en¿Qué es el reenvío de IP del kernel?

de @LawrenceC

publicación 1:

Entonces, en el ejemplo anterior, si tiene una conexión a Internet en la NIC 2, configurará la NIC 2 como su ruta predeterminada y luego cualquier tráfico que ingrese desde la NIC 1 que no esté destinado a algo en 192.168.2.0/24 irá a través de la NIC 2.

y también post2:

la interfaz orientada a Internet (NIC 1 según lo anterior) necesita una regla MASQUERADE en POSTROUTING de iptables en una cadena para hacer eso. Ver revsys.com/writings/quicktips/nat.html

Enhttp://www.revsys.com/writings/quicktips/nat.htmldice:

Luego necesitarás configurar iptables para reenviar los paquetes desde tu red interna, en /dev/eth1, a tu red externa en /dev/eth0.

/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
/sbin/iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT

¿Por qué usaría FORWARD(segúnpublicación2) si el reenvío ya se realizó con solo configurar ip_forward(segúnpublicación1):

echo 1 > /proc/sys/net/ipv4/ip_forward

Respuesta1

La configuración ip_forwardpermite el reenvío de paquetesen general. Algunas distribuciones de Linux pueden no permitir paquetes reenviados iptablespor razones de seguridad, por ejemplo, si ip_forwardse configura por error.

/sbin/iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT

establece una regla para permitir paquetes de eth0a eth1que sean respuestas o paquetes relacionados de manera similar a una conexión ya establecida.

/sbin/iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT

establece una regla explícita para permitir paquetes desde eth1hasta eth0.

Esto permite a los clientes eth1acceder a los servidores detrás eth0independientemente de la iptablesconfiguración predeterminada.

información relacionada