Q: ipchains & MASQ

Leos Bitto bitto na atrey.karlin.mff.cuni.cz
Středa Červen 23 11:35:27 CEST 1999


Martin Krumpolec (krumpo na pobox.sk) wrote:
: > : Scenario: prijde paket na _lokalny_ port forwardujuceho stroja 
: > : (telnet A 2000), paket vlezie do input chain, odtial ho potrebujem 
: > : dostat do forward chain, premaskaradovat (prepisat src/dest), poslat
: > : do output chain a odtial pekne odlezie na default gw; cesta spat je
: > : identicka, gw normalne posle paket na forwarder, vlezie do input chain,
: > : demaskaraduje sa a posle sa klientovi ...
: > 
: > Problem je v tom ze aby to slo demaskaradovat, musi to jit pres ten
: > maskaradovaci stroj. Pokud to diky topologii site pres nej nejde, neni
: > mozne toto reseni pouzit. Ptam se tedy jeste jednou: je ten maskaradovaci
: > stroj v routovani mezi klientem a serverem?
: 
:   Nie, nie je, klientske pocitace su windows a navyse z roznych dovodov
:   nie je mozne menit topologiu (routovanie) siete...
: 
:   Cize bez toho, aby som pouzil ten forwardovaci stroj ako router, to
:   nejde ? Kernel nedokaze forwardovat + maskaradovat spojenia, ktore
:   prichadzaju priamo na jeho lokalne porty (ked je lokalny port cielovy) ?

Ne, bez zmeny topologie to nejde. Duvod je v principu fungovani portfw.
Co se deje s paketem: jde od klienta s cilovou adresou maskaradovaciho
stroje. Ten cilovou adresu prepise na skutecny server a posle mu to.
Skutecny server vse zpracuje a odpovi na adresu odesilatele, tedy na
adresu skutecneho klienta. Pokud routovani smeruje pres ten maskaradovaci
stroj, ma sanci to demaskaradovat (=prepsat adresu odesilatele na sebe),
jinak ne.

:   Skusim este konzultovat autora portforwardingoveho kodu, resp. linux-kernel,
:   ale zatial sa asi budem musiet uspokojit s redirektorom. Viete mi prosim
:   poradit redirektor, ktory dokaze pracovat v jednom procese s viacerymi
:   portami ? (nechcem pre 50 portov 50 procesov ;)

rinetd, ftp://ftp.boutell.com/pub/boutell/rinetd/rinetd.tar.gz
Ale 50 procesu budete mit stejne, ono se to naforkuje.


Leos Bitto


Další informace o konferenci Linux