iptables: ip-masquerade

B

BiBe

Greenhorn
Hi,
ich würde gerne einen NAT-Router mit iptables bauen. Dabei habe ich ein Problem mit folgendem Befehl:

Code:
iptables --table nat --append POSTROUTING --out-interface eth0 --source eth1 --jump MASQUERADE

eth1 ist mein internes LAN-Interface, eth0 das externe, auf dem zwei öffentliche IPs anliegen (eth0 und eth0:1). Nun ist die Frage, welche source-IP ein Paket vom internen LAN durch das masquerade bekommt? Es stehen ja zwei zur Auswahl. Da ein Antwort-Paket an diese IP gesendet wird, ist das nicht ganz unwesentlich, da portforwarding in das interne Netz nur auf einer der beiden externen IPs konfiguriert ist. Der alias eth0:1 lässt sich mit iptables leider nicht angeben.

Gibt es eine Möglichkeit, die souce-IP der internen Pakete zu definieren?

Vielen Dank, viele Grüße
BiBe
 
Hi,
leider wurde mein Thread 'mal wieder nicht beantwortet... ;(

Die Lösung ist einfach: Für statische IPs ist SNAT an Stelle von MASQUERADE geeigneter. Die Source-Adressen können dann zum Beispiel so umgeschrieben werden:

Code:
$IPTABLES --table nat --append POSTROUTING --out-interface $EXT_DEV --source $INT_LAN --jump SNAT --to-source $EXT_IP2

Vielleicht hilft das ja irgendwann 'mal jemandem, der dasselbe Problem hat, wie ich... :brav:

Viele Grüße
BiBe
 

Ähnliche Themen

Port Forwarding mit iptables

Wired-Lan komisches Verhalten

Internetsharing

NAT: Keine Kommunikation zwischen LAN und öffentlicher Router IP

iptables - default policy - Server macht dicht

Zurück
Oben