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: