Configuración de Network BONDING en Linux Debian


Foto. Referencial

¿Qué es Network Bonding?

La vinculación de red es un proceso de combinar dos o más interfaces de red en una única interfaz. La vinculación de red ofrece mejoras de rendimiento y redundancia al aumentar el rendimiento de la red y el ancho de banda. Si una interfaz está desconectada o desenchufada, la otra funcionará. Se puede usar en situaciones en las que necesite redes de tolerancia a fallas, redundancia o balanceo de carga. En Linux, un módulo especial del kernel llamado bonding se usa para conectar múltiples interfaces de red en una única interfaz. Se pueden conectar dos o más interfaces de red en una única interfaz lógica “enlazada”. El comportamiento de las interfaces enlazadas depende del tipo de método de enlace utilizado.

Para la configuración del Bounding en Linux Debian, es decir la conexión compartida a través de la misma ip en 2 o más interfacez de un servidor con Debian 6.0 (el cual fue mi caso) es necesario lo siguiente:

Verificamos con el ethtool con cual interfaz se esta conectando en este caso el servidor posee 12 interfacez desde eth0 hasta eth11. Si no tienes instalada este herramienta puedes instalarla con aptitude.

Posteriormente a esto es necesario modificar la configuración de la interfaz que se encuentra en la ruta /etc/network/interfaces, realizamos una copia de la antigua y colocamos la siguiente:

   # 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
     auto eth9 eth3
      auto bond0
      iface bond0 inet static
      address xx.xx.xx.xx
      netmask 255.255.255.0
      network xx.xx.xx.0
      broadcast xx.xx.xx.255
      gateway xx.xx.xx.1
      slaves eth3 eth9 (aqui colocamos las interfacez conectadas)
      bond_mode 1
      bond_miimon 100
      bond_downdelay 200
      bond_updelay 200

Realizamos el reinicio de la interfaz con los comandos ifdown ethX y lugo ifup ethX

Posteriormente verificamos con un ifconfig y vamos a ver lo siguiente:

        root@white: ifconfig

bond0 Link encap:Ethernet HWaddr e4:11:5b:df:c3:80

        inet addr:xx.xx.xx.xx  Bcast:xx.xx.xx.xx  Mask:255.255.255.0
        inet6 addr: fe80::e611:5bff:fedf:c380/64 Scope:Link
        UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1
        RX packets:176897805 errors:0 dropped:0 overruns:0 frame:0
        TX packets:175537014 errors:0 dropped:0 overruns:0 carrier:0
        collisions:0 txqueuelen:0
        RX bytes:130649572985 (121.6 GiB)  TX bytes:88924187034 (82.8 GiB)
eth3     Link encap:Ethernet  HWaddr e4:11:5b:df:c3:80
        inet addr:xx.xx.xx.xx  Bcast:xx.xx.xx.255  Mask:255.255.255.0
        UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
        RX packets:64459297 errors:0 dropped:0 overruns:0 frame:0
        TX packets:100655108 errors:0 dropped:0 overruns:0 carrier:0
        collisions:0 txqueuelen:1000
        RX bytes:50406035036 (46.9 GiB)  TX bytes:78392973884 (73.0 GiB)
        Interrupt:74

eth9 Link encap:Ethernet HWaddr e4:11:5b:df:c3:80

        UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
        RX packets:112438508 errors:0 dropped:0 overruns:0 frame:0
        TX packets:74881906 errors:0 dropped:0 overruns:0 carrier:0
        collisions:0 txqueuelen:1000
        RX bytes:80243537949 (74.7 GiB)  TX bytes:10531213150 (9.8 GiB)
        Interrupt:41 Memory:d0720000-d0740000

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:41639682 errors:0 dropped:0 overruns:0 frame:0
        TX packets:41639682 errors:0 dropped:0 overruns:0 carrier:0
        collisions:0 txqueuelen:0
        RX bytes:22171291043 (20.6 GiB)  TX bytes:22171291043 (20.6 GiB)

Y si todo esta ok pueden realizar las pruebas desconectando un cable y dejando el otro y deberia mantener la conexión del servidor.

Posteriormente debemos revisar el archivo /proc/net/bonding/bond0 para verificar si hay errores en la conexión Link Failure Count, de haber más de 2 a 100 errores es necesario lanzar otro cable ya que por lo general es ese el problema.

root@white: /proc/net/bonding# cat bond0 Ethernet Channel Bonding Driver: v3.5.0 (November 4, 2008) Bonding Mode: fault-tolerance (active-backup) Primary Slave: None Currently Active Slave: eth9 MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 200 Down Delay (ms): 200 Slave Interface: eth3 MII Status: up Link Failure Count: 1 Permanent HW addr: e4:11:5b:df:c3:80 Slave Interface: eth9 MII Status: up Link Failure Count: 0 Permanent HW addr: 00:26:55:ee:02:bc


Para más información sobre este y otros temás ingresa en https://instructorbenyblanco.wordpress.com