Fórum Root.cz

Hlavní témata => Sítě => Téma založeno: MrM 11. 09. 2012, 10:52:23

Název: Původní klientská IP za natem
Přispěvatel: MrM 11. 09. 2012, 10:52:23
Zdravím, na jednom serveru používám iptables konkrétně

Kód: [Vybrat]
iptables -t nat -A PREROUTING -d $EXTIP -p tcp --dport $port -j DNAT --to $SERVER_TWO:$port
iptbales -t nat -A POSTROUTING -d $MATUNA -p tcp --dport $port -j SNAT --to $EXTIP
iptables -A FORWARD -i $WAN -p tcp --dport $port -m state --state NEW -j ACCEPT

přesměrovaní portů funguje v pořádku, ale.. na mašině $SERVER_TWO vidím externí ip původního serveru, jak donutím iptables přeposílat původní clientovu ip?

díky M.
Název: Re:Původní klientská IP - nat
Přispěvatel: MrM 11. 09. 2012, 10:54:26
místo $SERVER_TWO patří $MATUNA...
Název: Re:Původní klientská IP - nat
Přispěvatel: hm 11. 09. 2012, 11:48:04
Nevím, zda jsem to pochopil správně, ale druhý řádek právě dělá tu změnu z původní zdrojové IP na EXTIP (když je cíl MATUNA), ne? Nestačilo by ho vynechat?
Název: Re:Původní klientská IP - nat
Přispěvatel: MrM 11. 09. 2012, 13:40:53
Jestli to chápu dobře - snad mě někdo případně opraví - tak PREROUTING směruje pakety od klienta dále... a POSTROUTING přesně naopak... tj. že jestli to smažu, tak už se ke mě ty pakety zpět nedostanou...
Název: Re:Původní klientská IP - nat
Přispěvatel: MrM 11. 09. 2012, 13:45:14
Jestli to chápu dobře - snad mě někdo případně opraví - tak PREROUTING směruje pakety od klienta dále... a POSTROUTING přesně naopak... tj. že jestli to smažu, tak už se ke mě ty pakety zpět nedostanou...

edit: aha, tak zatím to vypadá, že jste měl pravdu... ještě to tu nechám otevřené a pořádně to otestuji
Název: Re:Původní klientská IP za natem
Přispěvatel: PCnity 11. 09. 2012, 15:41:43
V prvom rade sa nachadzas v tabulke nat... Ak chces aby napriklad server v internej sieti videl request nie od firewallu, ale od povodnej IPcky, pouzi FORWARD z tabulky filter.
Název: Re:Původní klientská IP - nat
Přispěvatel: Sten 11. 09. 2012, 17:07:20
Jestli to chápu dobře - snad mě někdo případně opraví - tak PREROUTING směruje pakety od klienta dále... a POSTROUTING přesně naopak... tj. že jestli to smažu, tak už se ke mě ty pakety zpět nedostanou...

Ne, PREROUTING se aplikuje na všechny pakety, které přijdou, a POSTROUTING na všechny pakety, které ocházejí. Routeru je přitom úplně putna, kdo je klient a kdo internet.
Název: Re:Původní klientská IP za natem
Přispěvatel: MrM 12. 09. 2012, 10:26:18
To co napsal hm s tím POSTROUTINGem funguje.. ale nějak jsem do toho neproniknul, jak to tedy funguje? Přece, pokud přijde paket (což se tedy týká PREROUTINGu) tak bych logicky hledal problém tam a ne v odchozí komunikaci...
Název: Re:Původní klientská IP za natem
Přispěvatel: PCnity 12. 09. 2012, 11:51:44
To co napsal hm s tím POSTROUTINGem funguje.. ale nějak jsem do toho neproniknul, jak to tedy funguje? Přece, pokud přijde paket (což se tedy týká PREROUTINGu) tak bych logicky hledal problém tam a ne v odchozí komunikaci...

Stale sa bavime o NATe.
DNAT posle packet niekam. Nemeni teda nikdy Source IP, ale meni Destination IP (DestinationNAT).
SNAT nastavi Source IP packetu ktory niekam ide, nemeni ale destnation IP (SourceNAT).

Cize ak chces packet len preposlat, potrebujes PREROUTING z tabulky nat a FORWARD z tabulky filter.