Pagina 1 di 2

Problema di Bonding

Inviato: mar 17 apr 2007, 11:27
da kurubin
Salve
premetto che ho letto quasi tutti i post lasciati sul bonding, ma questo problema proprio non riesco a risolverlo e neppure a capirlo.. :cry:

ho due pc PC1 e PC2 con slackware 11 + kernel 2.6.17.13 con 2 schede
di rete gigabit RTL8169 identiche su ogni pc. Le schede di rete sono
collegate tra loro con cavi cross (PC1 eth0 -> PC2 eth0 e PC1 eth1
collegato PC2 eth1 )

con i seguenti comandi cerco di creare un bonding mode=1 (active-
backup)

modprobe mii
modprobe bonding mode=1 miimon=100
ifconfig eth0 down
ifconfig eth1 down
ifconfig bond0 192.168.0.1 netmask 255.255.255.0 up ( per PC1,
192.168.0.2 per PC2)
ifenslave bond0 eth0 eth1

come test provo a fare dei ping su entramebe le macchine, il bonding
funziona.
Se stacco il collegamento della scheda eth0 la scheda eth1 passa come "Currently Active Slave: eth1", noto pure "MII Status: down" e il "Link Failure Count: 1 " per la eth0

A questo punto provo a lanciare dei ping da entrambe la macchine, ma i ping vengono persi.

Su ifconfig vedo bond0 con indirizzo 192.168.0.1 ( per PC1 ) , eth0 e
eth1 entrambe con lo stesso MAC di bond0

la mia routing table è la seguente:
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.0.0 * 255.255.255.0 U 0 0 0 bond0

Ho usato le stesse procedure pure per il bonding mode=0 ( balance-rr
round robin), ma quando lancio dei ping da entrambe le macchine
il 50% dei pacchetti viene perso.

Sembra quasi che il collegamento esista solo per le schede eth0 di
entrambi i pc.

Forse ho dimenticato qualche passaggio, qualchuno può aiutarmi?

Inviato: mar 17 apr 2007, 13:00
da diego
Se non hai fretta in settimana dovrei mettere su una slackware 11 per fare dei test
con kernel 2.6.x, faro' quindi delle prove di bonding e ti sapro' dire.
Ciao

p.s.
verifica con

Codice: Seleziona tutto

arp -a
i MAC address su entrambe le macchine

Inviato: mar 17 apr 2007, 15:07
da Luci0
My name is bond ... James Bond...
Immagine
A parte lo scherzo ...
Al linux day del LUG-ACROS 2006 http://www.lug-acros.org nell' intervento di Matteo Carli http://www.matteocarli.com aka "swit" ricordo di aver sentito che le realtek 8169 avevano dato alcuni problemi con il Bonding ... ecco un link http://www.lug-acros.org/files/Linux_Da ... onding.pdf (... da quello che ho scritto puoi dedurre che .. non ho esperienze dirette).
Comunque i cavi cross delle schede a 1000Mbit debbono essere doppiamente cross ... quindi i cavi cross cat. 5e da 100Mbit sono cablati in maniera diversa dai cavi cross cat. 6 .. ma credo che tu lo sappia già !!!

Inviato: mar 17 apr 2007, 15:13
da kurubin
Intanto grazie per l'interesse, fretta non ne ho ma sono circa 2 giorni che mi dispero per questo problema e spero di risolverlo prima possibile. :(

ho provato con arp -a

dunque in modalità MODE=1 lancio dei ping e vedo gli indirizzi MAC solo delle schede ETH0

se stacco il cavo di collegamento le schede eth1 si attivano ma con arp -a mi viene restituito

? (192.168.0.1) at <incomplete> on bond0
se lancio ping da PC2

? (192.168.0.2) at <incomplete> on bond0
se lancio ping da PC1

ho notato anche che i led delle due schede eth1 ( attualmente attive ) lampeggiano contemporaneamente ad ogni ping che lancio. E' come se l'ip che associo all'interfaccia bond0 fosse riferito solo alla eth0, invece eth1 sembra gestito dal sistema di active backup ma non gli viene associato nessun indirizzo ip.

Inviato: mar 17 apr 2007, 15:42
da diego
Strano, sembra non tenga in pancia il MAC della bond0,
o forse puo' essere un problema di sk di rete come dice Luci0
La documentazione http://www.lug-acros.org/files/Linux_Da ... onding.pdf
mi sembra molto ben fatta, hai trovato qualche dissonanza con quella presente nel wiki?
Vedo di anticipare l'installazione del server che ti dicevo, e' passato un bel po' di tempo
dall'ultima volta che ho preso in mano il bonding, mi sa che cosi' non riuscirei ad esserti
d'aiuto.
Ciao

Inviato: mar 17 apr 2007, 16:03
da Luci0
@diego ... grazie!
non lo sapevo ... e ho dato un occhio all' HOWTO che hai pubblicato nel wikislack ... l' ho stampato forse imparo qualcosa anch' io ... forse anche kurubin non l' ha visto ... e quindi linko http://www.slacky.eu/wikislack/index.ph ... Mini-Howto
:-) :-) :-)

Inviato: mar 17 apr 2007, 16:12
da kurubin
:) L'ho visto il wiki, sono partito da li. Ormai lo so a memoria.

comunque penso pure io a un problema di sk di rete, solo che mi sembra assurdo dato che le vedo attivarsi appena le interfacce eth0 vengono scollegate. :evil:

Inviato: mar 17 apr 2007, 16:15
da Luci0
ok ..
ma il cavo é quello giusto ?? le 4 coppie (1-2, 2-6, 4-5, 7-8 ) debbono essere tutte scambiate ... !!

Inviato: mar 17 apr 2007, 16:24
da kurubin
Un cavo doppiamente cross per la Cat 6 non lo sapevo, e non ne ho in casa. Era montato un cavo Cat 5e e visto che mi hai fatto notare la cosa ho provato con dei cavi Patch Cat.6 e uno switch Gigabit.

PC 1 - Eth0 - Cavo Cat.6 -> Switch Gigabit
PC 1 - Eth1 - Cavo Cat.6 -> Switch Gigabit
PC 2 - Eth0 - Cavo Cat.6 -> Switch Gigabit
PC 2 - Eth1 - Cavo Cat.6 -> Switch Gigabit

I risultati sono identici a prima. :(

Inviato: mar 17 apr 2007, 17:39
da Luci0
Ok ... ma non so se lo switch si incasina con il bonding, dal momento che spesso usano il MAC adress per switchare ...
Hai due possibilità i cavi cross in cat.6 oppure se la hai, prova delle classiche realtek 8139 ed i cavi cross a 100 così ti togli almeno il dubbio sulla configurazione del bond ... :-) :-) :-)

Inviato: mar 17 apr 2007, 17:49
da kurubin
proverò con le schede RTL8139 a 100Mb e cavi cross 5e. Almeno potrò capire se sono veramente le sk

Inviato: mar 17 apr 2007, 18:33
da kobaiachi
se non ricordo male se ci metti di mezzo uno switch devi configurare un etherchannel sulle porte dello switch .

comunque prendi questa mia affermazione con il beneficio del dubbio perche e` tanto che non uso il bondig

Inviato: mer 18 apr 2007, 8:35
da diego
kobaiachi ha scritto:se non ricordo male se ci metti di mezzo uno switch devi configurare un etherchannel sulle porte dello switch .
No, questo non serve, ricordo bene di aver usato uno switch hp con 2 sk di rete in bonding
(mode 1) su un server debian e non ho dovuto configurare niente
(a meno che non facesse qualcosa lui in automatico ... ).
Questa procedura sapevo serviva a Telecom quando oltre alla cdn ti portava una hdsl di
backup sulla stessa classe di indirizzi (infatti richiedeva un semplice HUB),
ma a quanto pare ora non gli serve piu'.
Ciao

p.s.
Se non ho imprevisti oggi spero di mettere in piedi una Slack 11 per fare delle prove.

Inviato: gio 19 apr 2007, 15:53
da diego
Eccomi,
come promesso, ho installato una Slack 11.0 con kernel 2.6.18 con 2 skede di rete 3Com 3C905.
Avevo solo la eth0 configurata, ho dato questa sequeenza di comandi:

Codice: Seleziona tutto

lsmod # Vedo che e' presente il modulo mii
modprobe bonding mode=1 miimon=100 # carico il modulo bonding in modalita backup
lsmod # verifico la presenza del modulo
ifconfig eth0 down
ifconfig eth1 down
ifconfig bond0 hw ether AA:BB:CC:DD:EE:FF # MAC address della eth0
ifconfig bond0 192.168.0.10 netmask 255.255.255.0 broadcast 192.168.0.255 up #ip della eth0
ifconfig # verifico
gcc -Wall -Wstrict-prototypes -O -I/usr/src/linux/include/ /usr/src/linux/Documentation/networking/ifenslave.c -o /usr/bin/ifenslave # compilo ifenslave dai sorgenti del kernel
./ifenslave bond0 eth0 # master eth0
./ifenslave bond0 eth1 # slave eth1
cat /proc/net/bonding/bond0 # verifico
route -n
route add -net 0/0 gw 192.168.0.1 # aggiungo il gw
route -n
ping www.google.com
e pingo google, stacco il cavo di rete dalla eth0 e lo attacco su eth1 e dopo un paio di secondi ripinga.
Il cavo era attestato su uno switch HP, il kernel scaricato dall' ftp di slackware.com che ho compilato per mettergli il fs reiser come monolitico, la parte di networking non l'ho toccata, quindi dovrebbe funzionare anche il tgz originale.
Vado un po' di corsa, spero possa essere utile, ci risentiamo.
Ciao

Inviato: ven 20 apr 2007, 14:11
da kurubin
Ho fatto delle prove con schede RTL8139 a 100 Mb e il sistema di bonding funziona

Peccato per le Gigabit :(

Ho notato che sul kernel 2.6.21 sono state fatte delle correzioni per le schede RTL8169, le correzioni sembrano risolvere vari problemi.

Magari in futuro funzionerà con queste schede

Ringrazio tutti per il Vs aiuto, in particolare Diego che ha installato Slackware 11 per delle verifiche ;)