[ImoLUG] Bridge Nat IpTables: risposte duplicate.

valerio balbi valerio.balbi@gmail.com
Sab 8 Mar 2008 12:00:08 CET


Ciao a tutta la ML!

Come confidato con alcuni di voi sto giocando all'evoluzione del
firewall LisCO presentato a IF07.
Per precisione sto cercando di implementare "private virtual firewall".
Credo di aver sfrugugliato la rete senza trovare indizi che mi possano aiutare
per cui mi permetto di sottoporvi lo "Strano caso dei Pacchetti Duplicati"


Scena del Crimine
                      -----------------------
I   )    |           |       |       |       |     |      -------
N  (     +-----------+ eth2 -+       +- eth4 +-----|     |       |
T   )    |           |       |       |       |     |-----+       |
E  (     |           |      br0     br1      |     |     |       |
R   )    |           |                       |     |     |       |
N  (     |           |        ipTables       |    [B]     -------
E   )    |           |      kernel 2.6.18    |
T  (    [A]           -----------------------

Ho introdotto i bridge per poter aggiungere le tun dei virtual private
firewall,
ma prima di evolvere allo stadio definitivo ho fatto un po' di prove
che mi hanno
lasciato un po' perplesso. Il pc sulla rete B tenta di fare il
download di un file grosso
(per esempio l'ultima stabile da www.kernel.org), ma dopo un po' il
trasferimento
si blocca e cade rovinosamente. Sul firewall le regole di filtering
sono applicate ai
bridge, come pure le regole di source nat.


Il R.I.S.
Allora ho preso la trace con l'ottimo wireshark sia in A che in B e mi
sono reso conto
che sulla rete B c'erano un sacco di ritrasmissioni... (ho già
cambiato i cavi e l'hub)

In particolare:
1 SYN dal pc a br1 misurato su B
2 SYN da br0 NAT-tato verso Internet misurato su A
3 SYNACK da Internet verso br0 misurato su A
4 SYNACK da Internet verso pc proveniente da br1 misurato su B
5 SYNACK da Internet verso pc proveniente da br1 misurato su B

Il pacchetto 5 non mi convince x niente, secondo me non dovrebbe mica esserci!
Comunque l'unica differenza tra i pacchetti 4 e 5 è il TTL maggiorato
di 1 nel pacchetto 5
Immagino che questa duplicazione generi un flood che uccide la
sessione se la sessione è
corposa come un bel download.

Le Accuse
Sto pensando che forse c'è qualche problema sul driver sundance usato
per comandare
la scheda quadriporta D-Link DFE-580TX, ma non ho trovato evidenze
significative sui NG.
Oppure potrebbe essere una configurazione sbagliata dei parametri
/proc/sys/net/ipv4/conf/br.
Oppure potrebbe essere un limite del virtual bridge integrato nel
kernel (stp disabilitato).

Secondo voi in quale punto del ragionamento sto "prendendo il granchio"?

Grazie per l'Attenzione! Ciao!


Maggiori informazioni sulla lista ImoLUG