Iptables: enmascaramiento y enrutamiento

Iptables: enmascaramiento y enrutamiento

Tengo un enrutador WAN que está vinculado al ISP a través de una /30subred WAN. Pero también sirve como enrutador para una /29subred WAN pública local que está conectada a algunos de mis servidores. El tráfico /29se enruta al ISP a través de /30una subred. Por un motivo cableado, quiero enmascarar (NAT) la interfaz que tiene /30ip. Por lo tanto, la interfaz con /30IP debería aparecer como enmascarada para mi 192.168.1.0/24red y también debería actuar como un enrutador normal no NAT para mi subred pública WAN /29. ¿Se puede hacer esto con iptables en una máquina Linux?

EDITAR1: Cómo están mis reglas de firewall actualmente:

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

#WAN Security
iptables -A INPUT -d 1.2.3.3 -m state --state INVALID -j DROP
iptables -A INPUT -d 1.2.3.3 -m state --state ESTABLISHED,RELATED -j ACCEPT

#NAT
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j SNAT --to-source 1.2.3.3

#FORWARD
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT


iptables -A INPUT -d 1.2.3.3 -j DROP

Respuesta1

Sí, esto funcionará bien. Configure su filtrado de paquetes y su enrutamiento tal como lo haría si no estuviera usando ningún NAT y luego agregue algo como:

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j SNAT --to-source 1.2.3.3

(Suponiendo que su ISP esté conectado a eth0 y su IP pública sea 1.2.3.3.)

Esto aplicará la NAT sólo a los paquetes provenientes de su LAN con direcciones IP privadas.

información relacionada