La mayoría de los sistemas actuales tienen dos o más conexiones de Ethernet. Estas conexiones se pueden usar por separado o en paralelo mediante una técnica llamada bonding. Esta técnica es muy interesante porque permite equilibrar la transmisión de los datos (los datos se transmiten a través de dos interfaces), y además se implementa tolerancia a fallos (si un enlace falla, la transmisión está asegurada por el otro enlace).
En nuestro servidor, agregamos dos interfaces físicas del sistema, eth0 y eth1, para crear una nueva interfaz de red bond0 de alta disponibilidad.
Instalación
root@server~# apt-get install ifenslave
Configuración
Para crear la interfaz bond0 hay que cargar y configurar previamente el módulo bonding del kernel o núcleo de linux. Este módulo se cargará automáticamente después de la configuración, pero ahora hay que cargarlo de forma manual:
root@server:~# modprobe bonding
Con la siguiente línea de comandos se comprueba qué es lo que se carga en realidad:
root@server:~# lsmod | grep bonding bonding 65204 0
El siguiente paso es la parametrización de la nueva interfaz de red y eliminar (o comentar) todas las referencias a las interfaces físicas que utilizará la nueva interfaz. Estas modificaciones se realizan, por supuesto, en el fichero /etc/network/interfaces:
- /etc/network/interfaces
-
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface # allow-hotplug eth0 # iface eth0 inet dhcp # Static IP address # auto eth0 # iface eth0 inet static # address 192.168.1.100 # netmask 255.255.255.0 # network 192.168.1.0 # broadcast 192.168.1.255 # gateway 192.168.1.1 # Interface bonding # Static IP address auto bond0 iface bond0 inet static slaves eth0 eth1 bond-mode balance-rr bond-miimon 100 bond_downdelay 200 bond_updelay 200 address 192.168.1.100 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.1
El parámetro de modo de enlace bond-mode balance-rr indica que la interfaz funcionará en modo de balance-rr, en el que los datos se transmiten alternativamente por las diferentes interfaces físicas que componen la nueva interfaz bond0.
Por último, hay que reiniciar los servicios de red:
root@server:~# service networking restart
Verificación
El comando ifconfig le permite comprobar el estado de las interfaces de red:
root@server:~# ifconfig bond0 Link encap:Ethernet HWaddr 08:00:27:69:7a:b5 inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1 RX packets:47 errors:0 dropped:0 overruns:0 frame:0 TX packets:62 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:5803 (5.6 KiB) TX bytes:8608 (8.4 KiB) eth0 Link encap:Ethernet HWaddr 08:00:27:69:7a:b5 UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1 RX packets:44 errors:0 dropped:0 overruns:0 frame:0 TX packets:31 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:5601 (5.4 KiB) TX bytes:2842 (2.7 KiB) eth1 Link encap:Ethernet HWaddr 08:00:27:69:7a:b5 UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1 RX packets:3 errors:0 dropped:0 overruns:0 frame:0 TX packets:31 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:202 (202.0 B) TX bytes:5766 (5.6 KiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:193243 errors:0 dropped:0 overruns:0 frame:0 TX packets:193243 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:31609190 (30.1 MiB) TX bytes:31609190 (30.1 MiB)
A la interfaz bond0 se le asigna una dirección IP, concretamente 192.168.1.100, y las 3 interfaces (bond0, eth0 y eth1) tienen la misma dirección física (“HWaddr 08:00:27:69:7a:b5”), para que las tres sean “vistas” por el resto de la red como una sola interfaz.
Se puede obtener más informacines sobre el estado de la interfaz bond0 con:
root@server:~# cat /proc/net/bonding/bond0 Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011) Bonding Mode: load balancing (round-robin) MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 200 Down Delay (ms): 200 Slave Interface: eth0 MII Status: up Speed: Unknown Duplex: Unknown Link Failure Count: 0 Permanent HW addr: 08:00:27:69:7a:b5 Slave queue ID: 0 Slave Interface: eth2 MII Status: up Speed: Unknown Duplex: Unknown Link Failure Count: 0 Permanent HW addr: 08:00:27:22:af:bf Slave queue ID: 0








































