Portforwarding de tablas ip ¿Qué sucede en MASQUERADE?

Portforwarding de tablas ip ¿Qué sucede en MASQUERADE?

Tengo la siguiente configuración:

Cliente:

  • DCHP 192.168.1.*

Puerta de enlace de Raspbian:

  • 192.168.1.20

Servidor Raspbian:

  • 192.168.1.19

El servidor aloja una cámara en vivo en el puerto 8000.

Quiero acceder a esta transmisión en vivo a través de mi puerta de enlace y quiero lograrlo usando iptables.

Agregué la siguiente regla:

sudo iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 8000 -j DNAT --to-destination 192.168.1.19

Cuando accedo a navegar a 192.168.1.20:8000, se agota el tiempo de espera de la conexión. Después de leer un poco entiendo que necesito hacer otra regla que tenga que ver con la respuesta. Eso se puede hacer usando SNAT o MASQUARADE.

No quiero codificar una dirección de remitente, ya que los "clientes" pueden tener diferentes direcciones IP. Pero, ¿cómo puedo decirle a iptables que "recuerde" la dirección IP de origen que se proporcionó en la solicitud tcp y que la vuelva a colocar como dirección de "devolución al remitente" en la respuesta?

Acabo de intentar:

sudo iptables -A POSTROUTING -t nat -o eth0 -j MASQUERADE

Funciona, pero no tengo idea de lo que estoy haciendo ahora. ¿Qué está haciendo la MASCARADA?

información relacionada