Newsgroup: it.comp.reti.locali
Titolo: instradamento tra 2 schede di rete.

Salve.
Ho una macchina linux in rete locale con debian potato.
Tale macchina dovra' fare da proxy server per consentire l'accesso ad
internet a vari client della rete locale.
La rete e' 192.168.0.0.
Ho due schede di rete con ip 192.168.4.6 e 192.168.4.7.
Esiste un firewall con ip 192.168.4.9.
La macchina linux vede tute le altre sottoreti (192.168.2.0, 192.168.6.0,
192.168.113.0, ecc.) attaverso il gateway 192.168.5.254.
La macchina linux fa parte della sottorete 192.168.4.0 e 192.168.5.0 che
sono quindi un'unica sottorete ecco perche', usando la netmask
255.255.254.0, posso utilizzare il gateway 192.168.5.254.
Una bozza di configurazione delle due interfacce e' questa:
iface eth0 inet static
        address 192.168.4.7
        netmask 255.255.254.0
        network 192.168.4.0
        broadcast 192.168.5.255
#       gateway 192.168.5.254
# automatically added when upgrading
auto eth1
iface eth1 inet static
        address 192.168.4.6
        netmask 255.255.254.0
        network 192.168.4.0
        broadcast 192.168.5.255
#       gateway 192.168.5.254
        gateway 192.168.4.9
up route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.5.254 eth0
Come potete vedere la scheda eth1 ha come default gateway il 192.168.4.9
che e' il firewall connesso direttamente ad internet.
Il funzionamento del tutto dovrebbe essere il seguente.
I vari clients si collegano la proxy attraverso l'interfaccia 192.168.4.7
il quale poi dovrebbe permettere l'accesso ad internet passando per
l'interfaccia 192.168.4.6 che e' collegata al 192.168.4.9 e quindi ad
internet.
Ho provato ma non funziona. 
Scusate l'ignoranza ma forse manca un instradamento dei pacchetti da una
interfaccia all'altra.
Credo debba configurare le tabelle di ruouting.
Qualcuno mi potrebbe dare una mano?
Grazie.

 interfaccia all'altra.
echo "1" >/proc/sys/net/ipv4/ip_forward
-- 
Matteo Lobbiani - Umbrars S.r.l. 
EMAIL : 
lobb...@umbrars.com
 
PGP KEY available

 internet.
Quindi il "proxy", se non e` un proxy, dovrebbe fare anche
NAT (network address translation) per la sottorete protetta
(specificamente SNAT, un tempo noto nel mondo Linux anche
come 'masquerading').  Non mi pare che tu abbia parlato
del settaggio del NAT (il che potrebbe confermare che vuoi
invece usare la macchina dual homed come proxy, ma allora
i pacchetti NON dovrebbero passare da un NIC all'altro...!).
Potresti comunque cominciare mettendo un po' piu` ordine
nel tuo uso delle sottoreti private, mi sembra.  A meno
che, appunto, non mi sfugga qualche motivazione valida per
tutte queste complicazioni... ma in questo caso hai seri
problemi comunque (evitare il rerouting ecc ecc).  Non
ho capito inoltre la tua topologia di rete, tutte queste
sottoreti non saranno mica un singolo segmento Ethernet...?
Alex

 
La rete e' quella di un'azienda con diversi uffici sparsi per il
territorio comunale collegati con dorsali (se cosi' si puo' dire) a 2 Mbit.
E' quindi divisa in varie sottoreti collegate tra loro attraverso dei
gateway.
Ciao.

 gateway.
OK, se le prestazioni sono soddisfacenti.  Ma chiarisciti bene le
differenze fra proxy e router (istradamento), il ruolo delle sottoreti,
ecc ecc.
Alex

 
Ok, ma questo finche' nelle alte sfere non mi consentiranno di piazzare
la seconda interfaccia su un'altra rete, per ora le due interfacce
restano sulla stessa rete: 
192.168.4.7/255.255.254.0
 e
192.168.4.6/255.255.254.0
.
La 192.168.4.7 ha come gateway il 192.168.5.254 che mi permette di vedere
tutte le reti locali, mentre la 192.168.4.6 ha come gateway il 192.168.4.9
che e' il firewall connesso direttamente ad internet.
I client si connettono a 192.168.4.7 abilitando il browser all'uso del
proxy; il proxy risponde.
Come faccio poi a farlo passare sulla 192.168.4.6 e quindi su 192.168.4.9
per arrivare su internet?
Ciao.

 per arrivare su internet?
Basta che la macchina su cui gira il proxy abbia il routing ben
configurato.
Non riuscirai mai a farla parlare con nessuna macchina di 192.168.5.*
o 192.148.4.* con cui non sia direttamente connessa (eventualmente
tramite bridge) visto che hai fuso le due reti in questione in una
'super-rete'.  Se gli dici che questi indirizzi IP sono sulla sua
stessa rete, lui vuole (giustamente e naturalmente) parlargli in
modo diretto.
A parte questo, devi dirgli che il route per 
192.168.0.0/8
 passa
per 192.168.5.254 (scheda, e.g., eth0) e il gateway di default
e` invece 192.168.4.9 (scheda, e.g., eth1).
Ad es. in Linux "all'antica", cioe` con route (8),
route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.5.254 dev eth0
route add default gw 192.168.4.9 dev eth1
mentre se usi IpRoute2 userai similmente
ip route add 192.168/16 via 192.168.5.254 dev eth0
ip route add default via 192.168.4.9 dev eth1
ecc.  Il programma di proxy, ad es. squid, apre semplicemente delle
socket a/da gli indirizzi richiesti, non ha bisogno delle informazioni
di routing; e` il kernel che gestisce il routing.  Nota in particolare
di NON abilitare l'ip forwarding.
E rifornisciti di un buon antidolorifico perche` secondo me con
questa intricatezza di sottoreti e 'sovrareti' i mal di testa si
sprecheranno (sinche` le alte sfere non ti permetteranno di fare
le cose in modo meno indecente:-).
Alex

 
Ti ringrazio per l'aiuto che mi hai dato, mi e' stato utilissimo, sei
stato molto gentile.
Grazie.
Ciao.
Mauro

 Grazie.
Prego!  Ma ti auguro di potere normalizzare la situazione reti/sottoreti
al piu` presto, PRIMA che comincino a emergere casini seri:-).
Alex

 
Scusa la mia faccia di bronzo, ti posso rompere ancora?
Con tutti gli accrocchi del caso la configurazione funziona, nel senso
che i clients si collegano al proxy tramite l'interfaccia 192.168.4.7,
ecc. ed escono su internet.
Ora.
Io ho una macchina linux 192.168.2.232.
Tale macchina vede la 192.168.4.7 attraverso il gateway 192.168.2.254.
Se volessi far uscire direttamente tale macchina 192.168.2.232 su
internet attraverso la 192.168.4.7 oppure 192.168.4.6 (la seconda
interfaccia) come potrei fare?
Ti ricordo che la 192.168.4.6 ha come default gaterway il 192.168.4.9 che
e' il firewall direttamente connesso ad internet.
La configurazione della macchina 192.168.2.232 e' la seguente:
iface lo inet loopback
iface eth0 inet static
     address 192.168.2.232
     network 192.168.2.0
     netmask 255.255.255.0
     broadcast 192.168.2.255
     up route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.2.254 eth0
Ho provato ad aggiungere route add -net 0.0.0.0 netmask 0.0.0.0 gw
192.168.4.6 eth0 
ma dice network irrangiungibile.
Grazie e scusa ancora l'insistenza.
Ciao.