Empuje el tráfico local "fuera" de la nat

0

Tengo un servidor que funciona como mi nat que aloja algunos servicios. Cuando me conecto localmente a través de UDP a este servidor, mi cliente usa la IP pública pero el servidor responde con su IP local.

Entonces, la pregunta es: ¿cómo puedo forzar que todo el tráfico que se dirige a la IP pública se enrute también a través del NAT?

¿O hay algún método aún más simple para lograr que la conversación tenga lugar en la IP pública (sin dejar que el tráfico "se filtre" al público)

Nadie
fuente

Respuestas:

2

Debe agregar una MASQUERADEregla para este tráfico en el cuadro nat. Esto hace que el tráfico a cualquiera de los servicios DNAT parezca provenir del cuadro nat. De esa forma, cuando el servicio DNAT responde, el tráfico vuelve al cuadro nat para que pueda enviarse correctamente al cliente (con la dirección IP de origen correcta).

Por ejemplo, si su red privada fuera 192.168.0.0/24y el cuadro nat tiene esta red activada eth1:

iptables -t nat -A POSTROUTING -o eth1 -s 192.168.0.0/24 -d 192.168.0.0/24 -j MASQUERADE

(Puede usar SNAT en lugar de MASQUERADE, ya sea funciona)

Patricio
fuente