Portál AbcLinuxu, 26. dubna 2024 11:52


Dotaz: Port redirect - nezabere TCP spojeni redirectovany port?

14.10.2011 22:51 zvedavec
Port redirect - nezabere TCP spojeni redirectovany port?
Přečteno: 231×
Odpovědět | Admin
Ahoj, chtel bych pouzivat na routeru port redirecting. Zkousel jsem to nastavit pomoci iptables a funguje to bezvadne. Jen mi ale vrta hlavou, zda se nemuze stat, aby si jadro zabralo stejny port pro nove tcp spojeni, jaky je pouzity pro redirect. Dejme tomu ze presmerovavam tcp prichozi na port 2222 na adresu ve vnitrni siti 192.168.3.3:22. Jak jadro na routeru pozna, ze pro nova tcp spojeni z routeru nekam ven nesmi pouzit port 2222? Pokud vim, tak zdrojovy tcp port se generuje automaticky, tak co zabrani jadru aby vytvorilo tcp spojeni treba adresa_routeru:2222 -> www.google.cz:80?
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

15.10.2011 11:07 timeos | skóre: 32
Rozbalit Rozbalit vše Re: Port redirect - nezabere TCP spojeni redirectovany port?
Odpovědět | | Sbalit | Link | Blokovat | Admin

Na linuxe sa pre port fwding pouzivaju iptables, ktore toto forwardovanie robia vo faze PREROUTING... teda este pred tym, ako je paket lokalne smerovany (bud na samotnu masinu alebo niekde von inym ifacom). To teda znamena, ze aj keby si lokalny proces bindol port 2222 pre seba, alebo by nejake spojenie z linuxu dostalo zdrojovy port 2222, tak vplyv na funkcnost redirectu to nebude mat ziadny, kedze este pred samotnym smerovanim sa zmeni cielova IP adresa packetu prichadzajuceho zvonka na dany port 2222 a teda paket bude aj odpovedajuco smerovany.

Zjednodusene povedane: pakety na cielovy port budu redirectovane VZDY, zatial co:

15.10.2011 11:16 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Port redirect - nezabere TCP spojeni redirectovany port?
Odpovědět | | Sbalit | Link | Blokovat | Admin
DNAT mapuje všechny pakety ve spojení stejně, jako namapoval první. Takže se můžete pojistit tím, že pravidlo pro DNAT bude reagovat jen na SYN paket – pokud se takhle netfilter nechová rovnou. To se týká TCP; v případě UDP nemá nějaká manipulace se zdrojovým portem ze strany jádra smysl, protože jádro netuší, zda na ten UDP paket bude někdo vůbec odpovídat, případně zda bude odpovídat zrovna na port, který byl v předchozím paketu zvolen jako zdrojový. Protože z hlediska UDP protokolu jsou to dva zcela nezávislé pakety.
15.10.2011 11:41 timeos | skóre: 32
Rozbalit Rozbalit vše Re: Port redirect - nezabere TCP spojeni redirectovany port?
aha, takze mne pre port forwarding staci do DNAT pravidla pridat podmienku na SYN paket a DNATovane budu vsetky pakety v ramci toho isteho spojenia? To teda znamena, ze system dokaze plynule odlisit prevadzku generovanu zo samotneho DNAT zariadenia od prevadzky na redirectovany port a oba typy spojeni budu chodit zaroven (pre TCP), tak?
16.10.2011 07:42 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Port redirect - nezabere TCP spojeni redirectovany port?
Ano, mělo by to tak fungovat.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.