[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Iptables Port weiterleiten an anderen Server



Am Donnerstag, 20. März 2008 schrieb Heiko Schlittermann:
> alt=254.10.0.1
>     neu=254.10.0.2
>
>     iptables -t nat -A PREROUTING -j DNAT
>         -d $alt -p tcp --dport 600
>         --to $neu
>
>     iptables -t filter -A FORWARD -j ACCEPT \
>         -d $neu -p tcp --dport 600


Das Funktioniert nicht für tcp ohne ein SourceNAT.
Das Problem ist, der neue Server bekommt eine Anfrage von Client X z.B. 
aus seinem eigenen Netz, d.h. die Antwort schickt er direkt zurück an 
den Client. Der Client bekommt also eine Antwort von einem anderen 
Server als dem wo er die Anfrage hingeschickt hat, das Paket verwirft 
er einfach.

Die Lösung dafür ist, zusätzlich noch folgende Regel:

iptables -t nat -A POSTROUTING -p tcp --dport 600 -d $neu -j 
SNAT --to-source $alt

Damit laufen dann alle Verbindungen immer über den alten Rechner als 
NAT-Gateway, der neue Server sieht also als Absender immer den alten 
Rechner.

-- 
Markus Schulz

Kreuzigt mich - aber Debian ist einfach deppensicher.
Es lässt Deppen gegen eine Wand von Schwierigkeiten klatschen und
langsam abtropfen. Wer die Tür findet, darf mitspielen - und so sieht
das Spielzeug dann eben aus: Gut gepflegt. -- Joerg Rossdeutscher


Reply to: