Tabla de Contenidos
Esta página ha sido traducida automáticamente. Por favor, ayude a mejorarla colaborando en las Traducciones.
2.1.4 Agrupación de las interfaces de red
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.
Ethernet bonding, está regulada por la norma IEEE 802.3ad con el título link aggregation. Es un término técnico de las redes informáticas que describe el acoplamiento de dos o más canales de Ethernet en paralelo para producir un solo canal de mayor velocidad y/o aumentar la disponibilidad y la redundancia de ese canal.
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