jak na "icmp by reverse path" (Was: hadanka kolem routing-by-source)

David Rohleder davro na ics.muni.cz
Čtvrtek Červen 27 15:05:22 CEST 2002


trcka na poda.cz (David Trcka) writes:

> On 27 Jun 2002, David Rohleder wrote:
> 
> > Muze na eth0 prijit paket jinym zpusobem nez pres tunel?
> > 
> Muze.
> 
> > Mel bych potencialni brutalni reseni kdyby se pouzil mangle chain a
> > nekde do prichoziho paketu by se zapsala nejaka informace a pak by
> > podle ICMP odpovedi pres iptables slo zase prepsat cil, ale je to dost
> > ???
> > 
> Nejsem si jisty, jestli to presne chapu. Jednak je to _dost_ brutalni,
> druhak nemam iptables, pac jsem zminoval, ze to je jadro 2.2.20 (ne ze by
> to byla kriticka prekazka), no a nakonec mam pocit, ze to stejne neresi
> ten problem (nebo jsem to spatne pochopil).
> 
> 1. prijde nejaky paket z adresy X a ma jit na adresu Y. Bohuzel mu 
> vyprselo TTL.
> 2. takze paket zahodime a vygenerujeme ICMP TTL expired, cilova adresa je 
> X, zdrojovou nevime.
> 3. Abychom zjistili zdrojovou, podivame se, kudy pujde paket na X, jenomze 
> protoze nemame zdrojovou adresu, automaticky spadneme do table main, cimz 
> ziskame zdrojovou adresu rozhrani, ktere jsme nechteli pouzit :(
> 
> Ty chces v bode 1 ten paket nejak modifikovat. OK, ale on se nam v bode 2
> (nejspis, presne to v jadre neznam) zahodi, takze je nam to na starou
> belu. Navic ten vygenerovany ICMP paket v sobe neponese tu zmenenou
> informaci, kterou jsme dodali do prichoziho paketu. Chtelo by to
> modifikovat jadro tak, aby v bode 3 se nejprve podivalo na _cilovou_
> adresu (Y) puvodniho paketu a podle ni zvolilo odchozi interfejs.  Pak uz
> to pujde samo. Bohuzel, do toho si netroufnu, nejspis bych nadelal vic
> skody nez uzitku.


No ono neni uplne tak pravda, ze ten ICMP nenese zadnou cast toho
predchazejiciho paketu. On obsahuje minimalne 64 bajtu toho paketu na
ktery odpovida, a toho jsem chtel zneuzit. Ale nevim nevim, asi by se
to nepovedlo.

Asi to nepujde.


-- 
-------------------------------------------------------------------------
David Rohleder						davro na ics.muni.cz
Institute of Computer Science, Masaryk University
Brno, Czech Republic
-------------------------------------------------------------------------


Další informace o konferenci Linux