Newsgroup: it.comp.os.linux.sys
Titolo: Bridge con router commerciale

Salve, avrei bisogno di creare un bridge tra la scheda di rete di una
linux box ed un router commerciale (la marca può essere indefinita).
Mettiamo che lato router non ci sia il supporto per il bridge ethernet,
come faccio ad impostarlo allora su linux, in modo così che la eth0
risulti "invisibile" ai client, usando come gateway internet l'ip del
router stesso? (quello che fanno poi i vari firewall commerciali..)
Ho trovato come impostare il bridge tra due ethernet ma solo interne
alla macchina linux.
Grazie!
--
Marco Ciacci

Qlo...@gmail.com
 ha scritto:

Cioè:
router
|
bridge linux
|
lan?
Cosa centra il router commerciale che non ha supporto al bride?
Non lo devi fare con linux?
cmq scarichi le bridge util (a meno che non ci siano già), installi il 
supporto per il bridge nel kernel e fai una cosa tipo
/usr/local/sbin/brctl addbr br0
/usr/local/sbin/brctl addif br0 eth0
/usr/local/sbin/brctl addif br0 eth1
/sbin/ifconfig eth0 0.0.0.0
/sbin/ifconfig eth1 0.0.0.0
/sbin/ifconfig br0 111.222.333.1 netmask 255.255.255.0
/sbin/route add default gw 111.222.333.254
Dove:
111.222.333.1 è l'ip da assegnare al bridge (le eth al suo interno sono 
ipless)
111.222.333.254 è l'ip del router.
Oppure non ho capito cosa stai chiedendo.

 alla macchina linux.
Allora avevo letto male il messaggio.
Vuoi fare un bridge tra 2 eth di 2 computer diversi?

Yes, il bridge tra la scheda lato WAN  di linux e quella del router
(che avrà una classe diversa)

 (che avrà una classe diversa)
tanto per capirsi , hai un router con 2 interfacce , una verso l' esterno e
una verso la rete interna ( chiamiamole ETX e INT1 ) e un server linux con
2 schede , una collegata al router e l' altra alla lan locale ( chiamiamole
INT2 e INT3 ) , tra quali di queste vuoi fare bridge ?
-- 
Se gli scienziati spaziali sono cosi' intelligenti, perche' contano
sempre all'indietro?
                -- Robert Orben

 
Ti risp io.
Credo lo debba fare tra
INT1 del router (verso l'interno)
INT2 del linux (verso il router).
(ma non si fa prima ad usare tutta la macchina linux come bridge invece 
di cercare di fare un bridge tra 2 macchine?)

Si, scusatemi se sono contorto ancora a quest'ora :-)
Voglio fare il bridge tra eth0 (lato wan) LINUX E ROUTER
(lan)--->linux (ip lan)---->bridge tra eth0 linux e router wan ip
pubblico)--->(internet)

Qlo...@gmail.com
 ha scritto:

MA per quale motivo non lo fai su una macchina sola invece di cercare di 
fare un bridge di rete tra 2 macchine?
fai cosi e sei a posto:
lan -> linux bridge -> router.
e dalla lan devi impostare come GW l'ip del router.
e lo fai con 3 righe di codice su linux.

SI ma io voglio tenere la scheda lan su una classe diversa

Quindi come avevi scritto poco sopra?
/usr/local/sbin/brctl addbr br0
/usr/local/sbin/brctl addif br0 eth0
/usr/local/sbin/brctl addif br0 eth1
/sbin/ifconfig eth0 0.0.0.0
/sbin/ifconfig eth1 0.0.0.0
/sbin/ifconfig br0 111.222.333.1 netmask 255.255.255.0
/sbin/route add default gw 111.222.333.254
e sui vari pc della lan come gateway questo 111.222.333.254?
Grazie per la pazienza! :-)

 SI ma io voglio tenere la scheda lan su una classe diversa
scusate ma c'è qualcosa che non torna , un bridge unisce due spezzoni di
reti FISICHE diverse , non ha senso fare bridge tra 2 schede di 2 macchine
sullo stesso spezzone fisico in quanto sono già fisicamente la stessa rete.
prova a spiegare il problema invece dell' ipotetica soluzione e vediamo se
arriviamo a qualcosa.
-- 
Il sonno e' per il debole e lo stanco.

 
Ma in un bridge la eth non ha ip.
E un bridge serve (può servire a) connettere 2 segmenti distinti.
http://en.wikipedia.org/wiki/Network_bridge
lan locale: 192.168.0.0
bridge linux SENZA IP (o con ip se lo vuoi amministrare da remoto)
router

 sullo stesso spezzone fisico in quanto sono già fisicamente la stessa rete.
Dipende cosa devi fare.
Se devi inserire una sorta di firewall/monitor di rete tra 2 punti o 
cambi gli ip da una parte o dall'altra oppure metti un bridge 
trasparente e nessuno vede nulla.


 linux box ed un router commerciale (la marca può essere indefinita).
Sempre sottolineando che la tua domanda non è chiara, interpretando come ha
fatto alessandro c'è una soluzione differente: il proxy arp.
dopo aver abilitato il forwarding, 
echo 1 > /proc/sys/net/ipv4/conf/$DEV/proxy_arp
esegiuto con $DEV pari alle due interfacce da "bridgeare" fa una cosa
simile.
Non crea uno switch ma proxando le arp crea un" simil switch". 
L'ho visto fare su FW commerciali.
In tal caso otterresti un effetto simile, ma saresti facilitato con regole
di firewalling.
Max

 trasparente e nessuno vede nulla.
stessa situazione del primo esempio tranne che il bridge è attivo e modifica
il traffico tra le interfacce.
insomma , un bridge rimane un bridge
-- 
Distinzione di Barth:
        Ci sono due tipi di persone: quelli che dividono le persone
        in due tipi, e quelli che non lo fanno.

 di firewalling.
In effetti fare
iptables -M physdev --physdev-in eth0 --physdev-out eth1 su un bridge
è letteralmente una rottura di coglioni.
Figuriamoci in un bridge/firewall per 50 server. Tutti con regole ben 
distinte.
Passatemi il termine.

 
Certo, ma tu hai detto che è inutile metterlo sullo stesso segmento.
Io invece ti sto dicendo che dipende da cosa devi fare.

Allora mi rendo conto di aver esposto la cosa in maniera un pò
contorta!!
Avete ragione mi sono espresso male usando la parola bridge, quello che
vorrei (se possibile) fare io è di far funzionare questo router ADSL
come fosse un modem adsl ethernet, in modo che le richieste
dall'esterno (su ip pubblico) mi vadano direttamente sulla linux box,
evitando un port forwarding tra il router e linux.
Spero (stavolta) di essere stato chiaro :-)

 Io invece ti sto dicendo che dipende da cosa devi fare.
ho detto che è impossibile fare bridge tra 2 macchine diverse sulla stessa
rete fisica  ( non ha senso ) e se dividi una rete logica in 2 per metterci
un bridge nel mezzo hai unito 2 spezzoni FISICI diversi.
é inutile mettere un bridge sullo stesso segmento fisico di una rete , non
ha senso.....
-- 
I Vulcaniani non bluffano mai.
                -- Spock, "The Doomsday Machine", data astrale 4202.1

Qlo...@gmail.com
 wrote:

oooooooooo , ora si ci siamo , io ho una cfg simile , ma devi lavorare sul
router , per prima cosa ti servono piu' ip sull' interfaccia pubblica , poi
configuri il router con il primo di questi in bridge disabilitando il nat ,
a questo punto dai il secondo ip pubblico alla scheda linux collegata al
router e setti il gw sul primo ip , et voila' hai un ip pubblico sulla
linux box.
-- 
- Zia, perche' non hai figli?
- Perche' la cicogna non me li ha portati.
- E perche' non hai cambiato uccello?
                -- Da it.hobby.umorismo

 evitando un port forwarding tra il router e linux.
Ovviamente questo presuppone che tu abbia solo 1 IP.
Se ne hai di piů non dovresti avere questi problemni
Alcuni router ti permettono di farlo in automatico (vedi cisco e zyxel, di
quelli che conosco e uso). Altri invece non sono cosě flessibili.
Sugli zyxel puoi fare anche un'altra cosa carina (che č un bagno di sangue
ma č carina). lo trasformi in bridge (come tu intendevi) tra l'interfaccia
ATM e la ethernet a cui colleghi il linux.
Il router diventa "stupido" e tutto, autenticazione compresa con Pppoa o
pppoe lo deve fare linux.
A me sembra una bojata comunque... visto che per quello basta comprare un
modem e non un router.
se hai zyxel o cisco di posso dare qualche info in +.
Altrimenti, sorry.
Max

modem e non un router.
Esatto :-) è una boiata ma perchè appunto il router c'è già, marca
non so, sarà un ennesimo clone conexant o similia.
Quindi bridge tra router ed Ethernet di linux, se non lo permette
ciccia!