[bglug] Problemi di routing...

paradox paradox@cheapnet.it
Mar 24 Maggio 2005 15:45:23 CEST


Ciao!

E' un po' complessa da spiegare la situazione, ma vedo di essere breve. 
Immaginate 2 firewall così:

FW1
eth0:ip_pubblico
          eth1:192.168.0.2 -----------------------eth0:192.168.0.10 = M1
eth2:192.168.0.3
|
|
|
|
FW2
eth0:192.168.0.4
          eth1:192.168.0.5 ---------------------altra macchina_per ora 
non mi interessa = M2
eth2:10.1.1.10

come si vede, 2 interfaccie di entrambi i firewall hanno la stessa 
classe e sono settate delle tabelle di routing in questo modo:

FW1:
route add default gw 192.168.0.3 dev eth0
route add -host altra_macchina dev eth1
route add -net 10.1.1.0/24 dev eth2

FW2:

route add -host 192.168.0.10 dev eth1
route add -net 192.168.0.0/24 dev eth2

Punto a punto, fra di loro, le macchine si vedono. Il problema sorge 
quando, ad esempio, da FW2 pingo M1 (macchina con ip 192.168.0.10) e non 
ottengo risposta. In pratica M1 ed M2 non scambiano informazioni fra 
loro dato che i pacchetti si fermano sui Firewall corrispodenti. Accade 
questo:

da FW2 pingo M1 (192.168.0.10) e noto, tramite tcpdump, che il ping esce 
dalla eth0 di FW2 e arriva all'eth2 di FW1 ma questa risponde con un 
pacchetto arp dicendo che non sa chi è 192.168.0.10 (che è la 
destinazione) e di contattare 192.168.0.4 che è proprio l'interfaccia da 
cui è uscita la richiesta!!! Ovviamente non funziona nemmeno al 
contrario, cioè se dal FW1 pingo la macchina M2. Il problema è legato 
probabilmente alle interfacce con stessa classe e alle tabelle di rotta.

Qualcuno ha un'idea + precisa di casi del genere?

Grazie!

ciao!


Maggiori informazioni sulla lista bglug