Bonding (o Teaming) = avere due interfacce di rete legate in modo da apparire come una unica interfaccia fisica. Quindi entrambe presenteranno lo stesso indirizzo hardware (MAC). Per ottenere questo con linux possiamo utilizzare il programma ifenslave.
Moduli utilizzati: bonding, mii, modulo_scheda_di_rete (e100 in questo esempio)
Utility utilizzate: ifenslave, mii-tool
* Autore: BJ Dierkes
* Ultimo aggiornamento: 2 Dicembre 2005
* Traduzione italiana e adattamento a Ubuntu a cura di Francesco Conti
Prima di iniziare, e' altamente raccomandata una verifica sull'integrita' e la funzionalita' delle singole schede di rete. Questo documento assume che voi l'abbiate gia' fatto. Lanciando il comando 'mii-tool' dovreste vedere qualcosa di simile:
# mii-tool
eth0: negotiated 100baseTx-FD, link ok
eth1: negotiated 100baseTx-FD, link ok
Per far si' che questo funzioni, il kernel deve avere il supporto per il bonding delle periferiche. Due modi per controllare:
# modprobe --list | grep -i bonding
/lib/modules/2.6.20-16-generic/kernel/drivers/net/bonding/bonding.ko
# find /lib/modules/`uname -r` -iname bonding*
/lib/modules/2.6.20-16-generic/kernel/drivers/net/bonding/bonding.ko
Utilizziamo anche mii-tool e il modulo mii.o quindi controlliamo anche la sua esistenza sul nostro sistema:
# find /lib/modules/`uname -r` -iname mii*
/lib/modules/2.6.20-16-generic/kernel/drivers/net/mii.ko
# modprobe --list | grep -i mii
/lib/modules/2.6.20-16-generic/kernel/drivers/net/mii.ko
Installiamo il comando ifenslave:
# sudo apt-get update && apt-get install ifenslave
# sudo vi /etc/modprobe.d/options
Aggiungere o modificare le seguenti righe:
alias bond0 bonding
options bonding mode=1 miimon=100 downdelay=200 updelay=200
Dopo aver aggiornato i file di configurazione dei moduli eseguite il seguente comando:
# update-modules
# vi /etc/network/interfaces
Aggiungere o modificare le seguenti righe:
auto bond0
iface bond0 inet static
address 10.1.100.63
netmask 255.255.255.0
hwaddress ether 00:02:B3:48:50:2C
gateway 10.1.100.1
up ifenslave bond0 eth0 eth1
down ifenslave -d bond0 eth0 eth1
Non avete bisogno di inserire la definizione di eth0 e eth1. D'ora in poi sara' bond0 l'interfaccia di rete utilizzata dal vostro sistema.
Eseguendo il comando 'ifconfig' verranno visualzzate le tre interfacce (bond0, eth0, eth1), tutte con lo stesso indirizzo MAC e lo stesso indirizzo IP.
E' tutto. Ora occorre caricare il modulo per il bonding e far ripartire il supporto di rete:
# modprobe bonding
# /etc/init.d/networking restart
Se avete problemi provate a fermare il networking e a configurare manualmente l'interfaccia bond0 con ifconfig:
# ifconfig bond0 10.1.100.63 netmask 255.255.255.0 up
Supponendo di non avere errori provate a testare la configurazione. Pingate il vostro indirizzo IP da un altro computer. Entrambe le schede di rete risponderanno. Se scollegate eth0 riceverete un errore sulla console: "eth0 has failed, eth1 becoming primary" o qualcosa del genere. E vice versa se scollegate eth1. Comunque non dovreste perdere nessun pacchetto ping (o quantomeno non molti) in quanto si tratta di una connessione di rete ridondante.
Fonte: http://moosesoom.blogspot.com/2007/06/unire-piu-interfacce-di-rete.html
Nota: ho trovato su un altro sito (http://www.rhinotech.it/index.php/2007/02/13/debian-nic-bonding-howto/ ) altre info...
Commenti offerti da CComment