PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Masquerading mittels IPTABLES



MaxPower007
07.05.07, 14:38
Hallo,
ich habe mal eine grundlegende Frage.
Ich habe einen Linux Server auf dem läuft IPTABLES und er besitzt 2 Netzwerkkarten.

Die Netzwerkkarte 1 hat die IP 192.168.0.1 und die Netzwerkkarte 2 die 192.168.1.1.

An die erste Netzwerkkarte ist ein Switch angeschlossen an dem mehrere Rechner hängen.

An der Netzwerkkarte 2 ist ein Router mit DSL-Modem angeschlossen.

Da ich aber nur eine feste IP für das Routing im Internet habe, möchte ich nun dass IPTABLES die Pakete die von den Clients kommen so manipuliert, dass anstatt die 192.168.0.* die eine feste IP-Adresse für das Routing im Internet benutzt wird. Das sogenannte Masquerading.

Wie kann ich dass in IPTABLES bewerkstelligen, also wo muss ich den Eintrag machen (bei nat?) und was muss ich beachten?

Vielen Dank schon mal und Gruß

TheReaper
07.05.07, 18:39
Die Stichwörter 'Masquerading' und 'iptables' in Google einzutippen, waren wohl zuviel verlangt...


echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -A POSTROUTING -j MASQUERADE -t nat -o <externe_nic>

Das ganze in ein Startup-Script (/etc/rc.local oder whatever).

MaxPower007
07.05.07, 22:52
Hallo,
hab mich schon schlau gemacht. Nur hatte meine Konfiguration nicht funktioniert und ich wollte erst mal ne generelle Info.

meine /etc/sysconfig/iptables sieht in dem Bereich nat so aus:

*nat
:PREROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 192.168.0.0/16 -d 0.0.0.0/0 -j MASQUERADE

Wieso funktioniert diese Regel nicht? Sie soll auf alle Adapter und alle Protokolle angewand werden...

MaxPower007
08.05.07, 10:24
Tsja man könnte das Routing zwischen Adaptern ja auch mal im Kernel aktivieren...

Die Regel war richtig, aber dsa Routing halt aus....

Vielen Dank!