Cómo crear un bonding en Debian

Si estás trabajando con equipos de sobremesa únicamente, quizás este post no te sea de gran utilidad/ayuda, pero si trabajas con servidores, desde luego te interesa! En muchos casos accedes a un equipo y ves que aunque teniendo varias tarjetas de red, éste sólo está a emplear una (eth0, por ejemplo). Crear un bond entre varias tarjetas de red debería ser como emplear un RAID para el disco, algo casi 100% necesario. Si los datos son importantes, tenerlos disponibles también debe ser importarte.
Hay que recordar que poner las tarjetas de red en bond puede hacerse para conseguir mayor velocidad (emplear 2 tarjetas como una sola) o también para tener redundancia (si una tarjeta 'cae', la otra asumirá el trabajo). Por lo tanto, vamos a ver cómo conseguir hacer lo aquí descrito de forma muy sencilla en sistemas debian/ubuntu. Antes de comenzar, tenemos que instalar el software necesario,
shell> apt-get install ifenslave-2.6
A continuación, habrá que crear la definición de la tarjeta de red compartida, bond0, que por ejemplo una eth0 y eth1. Para ello, agregamos la siguiente configuración en /etc/network/interfaces:
auto bond0
iface bond0 inet static
   address 192.168.1.2
   netmask 255.255.255.0
   network 192.168.1.0
   broadcast 192.168.1.255
   gateway 192.168.1.1
   slaves eth0 eth1
   bond-mode balance-rr # mode 0
   bond-miimon 100
   bond-downdelay 200
   bond-updelay 200
Y a continuación levantamos el nuevo interfaz, con lo que debería automáticamente cargar el módulo del kernel con las opciones descritas.
shell> ifup bond0
En caso de que no se levante correctamente el interfaz por culpa del módulo del kernel, debemos crear un nuevo fichero bajo /etc/modprobe.d/ a que podremos llamar bonding.conf con el siguiente contenido,
alias bond0 bonding
   options bonding mode=0 miimon 100 downdelay 200 updelay 200
Las opciones que pasamos como parámetros son:
  • mode
    Representa el modo de funcionamiento del interfaz, según la siguiente tabla.
    Modo Tolerancia Balanceo Descripción
    0 [balance-rr] - Balanceo Round-Robin
    1 No [active-backup] - Backup Activo
    2 [balance-xor] - Según MAC
    3 No [broadcast]
    4 [802.3ad] - Crea grupos esclavos con la misma configuración
    5 [balance-tlb] - Transmit Load Balancing
    6 [balance-alb] - Adaptative Load Balancing (con una única MAC)
  • miimon
    Es la frecuencia de monitorización de los interfaces, en ms.
  • downdelay
    Tiempo en ms para dar de baja un link caído.
  • updelay
    Tiempo en ms para dar de alta un link caído.


3 comentarios :

  1. En el switch no hay que hacer nada para que funcione el bonding?

    ResponderEliminar
  2. Depende del tipo de bonding que quieras implementar. Por ejemplo, para el balance-alb sí, pero para los otros un switch un poco decente ya debería de detectarlo y comenzar a trabajar sin problema.

    ResponderEliminar
  3. Hola,

    tengo montado en una RPI3 (jessie) el tinglado mas un USB TP-LINK Gigabit Ethernet. Tal y como lo explicas funciona correctamente (hago pruebas de desconexión de los cables ethernet). Además le hago bridge porque si no, no funciona (br0).

    La cuestión es que ahora no llego de ninguna de las maneras al router (gw) pero no hay problema al resto de equipos de la red ni a internet.

    He observado que TODAS las interficies físicas y no físicas tienen la misma mac.

    ¿puede ser por un problema de spoofing que el router me este capando?

    Gracias.

    EDDIE
    eddie7332@hotmail.com

    ResponderEliminar

Formulario de contacto

Nombre

Correo electrónico *

Mensaje *

Últimos comentarios