Newsgroup: it.comp.os.linux.iniziare
Titolo: problemi configurazione router linux

Ciao a tutti, sto provando a configurare un router linux, ma ho qualche
problema. Ho un pc (pluto) con debian e tre schede di rete, che funge da
router e nat, e due pc (pippo e paperino) ognuno collegato ad una scheda 
Lo schema č questo, spero si capisca (tutte le netmask sono 255.255.255.0)
  pippo               pluto              paperino
10.0.0.2---eth1:10.0.0.1 eth2:10.0.1.1---10.0.1.2
                  eth0:192.168.10.10
                         |
                         |
                      internet
cioč in pratica pippo e paperino appartengono a due reti differenti
Ho seguito le indicazioni di "iptables for fun", impostando perň tutto ad
ACCEPT, e tutto sembra funzionare, cioč ad esempio pippo e paperino vanno
su internet, oppure da paperino riesco a pingare eth1 perň non riesco a
pingare pippo e paperino! Dove sbaglio??
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Lo schema č questo, spero si capisca (tutte le netmask sono 255.255.255.0)
scusate, mi sa che dallo schema non si capisce niente...
ci riprovo cercando di essere piů chiaro
pluto eth0:192.168.10.10 --- internet
pluto eth1:10.0.0.1 --- pippo 10.0.0.2
pluto eth2:10.0.1.1 --- paperino 10.0.1.2


 pingare pippo e paperino! Dove sbaglio??
per forza che non riesci a pingare pippo con paperino, sono su due reti
diverse!!
soluzioni possibili:
ti compri un hub ;)
e , a naso, non l'ho mai fatto
metti una scheda di pluto su paperino e fai nattare pippo da paperino
mentre pluto natta solo paperino

 mentre pluto natta solo paperino
mmmh, no, devo mantenere quella configurazione.
Ora ho nattato eth2 in modo che tutto ciò che va verso quella sottorete
abbia come ip sorgente quello di pluto, e lo stesso per eth1. Risultato:
paperino pinga pippo, ma non il viceversa... boh!!
Grazie per le risposte


 
Scusami non vorrei dire sciocchezze ma, se vuoi utilizzare il pc con
linux come router, oltre a ovviamente iptables per il NAT, ti
serve anche creare delle route statiche per il passaggio
dei pacchetti tra le sottoreti.
Il comando per modificare la tabella di routing è proprio "route".
-- 
Saluti
VooLkaNo

 pluto eth2:10.0.1.1 --- paperino 10.0.1.2
Hai detto a pippo (paperino) che per trovare paperino (pippo) deve passare
da pluto ? (route add bla bla bla)

 Il comando per modificare la tabella di routing è proprio "route".
le tabelle di routing le crea automaticamente quando viene inizializzata
una nuova scheda di rete. Questo è l'output di "route -n"
Destination     Gateway         Genmask         Flags Metric Ref  Use Iface
192.168.20.192  0.0.0.0         255.255.255.192 U     0      0     0  eth0
10.0.0.0        0.0.0.0         255.255.255.0   U     0      0     0  eth2
10.0.1.0        0.0.0.0         255.255.255.0   U     0      0     0  eth1
0.0.0.0         192.168.20.193  0.0.0.0         UG    0      0     0  eth0


 da pluto ? (route add bla bla bla)
Scusa ma perchè dovrei farlo? Pippo sa che i suoi pacchetti vanno al suo
default gateway, che è Pluto, il quale dovrebbe occuparsi di inoltrare
correttamente i pacchetti in base alla sua tabella di routing, e infatti
lo fa correttamente quando si tratta di andare su internet... o sto
dicendo una stupidaggine??


 
Rispondendo anche alla domanda che fai piů sopra...
Quando Pippo e Paperino vogliono comunicare con macchine che sono fuori
dalla loro stessa subnet inviano i pacchetti al loro default gateway che č
Pluto il quale, a sua volta, decide a chi "girarli" in base alla propria 
tabella di routing.
Perciň, se Pluto non ha una entry per i pacchetti destinati a 10.0.0.x o
10.0.1.x li invia automaticamente al suo default gateway che č quello 
verso internet.
Ecco perchč riesci a navigare ma le due sottoreti non comunicano.
Detto ciň, se ho capito bene il tuo schemino, ti servono:
route add -net 10.0.0.0 netmask 255.255.255.0 dev eth1
route add -net 10.0.1.0 netmask 255.255.255.0 dev eth2
-- 
Saluti
VooLkaNo

 route add -net 10.0.1.0 netmask 255.255.255.0 dev eth2
Il fatto è che, come ho già detto, queste entry nella tabella di routing
linux le mette in automatico all'atto dell'inizializzazione, tanto è vero
che se provo a dare "route add ecc.." nella tabella risultano due entry
uguali, perchè ho aggiunto una regola già presente!


 0.0.0.0         192.168.20.193  0.0.0.0         UG    0      0     0  eth0
Quello che non capisco è:
perchè questa routing table reindirizza su eth2 il traffico verso la
rete 10.0.0.0 se quella subnet sta sulla eth1 e reindirizza su eth1 il
traffico verso la rete 10.0.1.0 se quella subnet sta sulla eth2??
Possibile che questa tabella creata in automatico sia invertita?!?
Io, ripeto, proverei:
route del -net 10.0.0.0 netmask 255.255.255.0
route del -net 10.0.1.0 netmask 255.255.255.0
route add -net 10.0.0.0 netmask 255.255.255.0 dev eth1
route add -net 10.0.1.0 netmask 255.255.255.0 dev eth2
-- 
Saluti
VooLkaNo

 traffico verso la rete 10.0.1.0 se quella subnet sta sulla eth2??
Per il semplice fatto che ho sbagliato lo schema :)
ho invertito eth1, su cui c'č 10.0.1.0 e eth2, su cui c'č 10.0.0.0