Esto lo puedes hacer con bonding. Bonding es una forma de obtener enlaces redundantes en bridges, tanto en aparatos de alta gama, como en máquinas con software libre.
Bonding es un driver que originalmente venía con los parches para clusters beowulf. Desde hace un tiempo se puede implementar a partir de un kernel 2.2. El Bonding nos proporciona un mayor ancho de banda ademas de un balanceo de carga y redundancia. Esta redundancia, caso de que un enlace fallara, haría que el tráfico fuera enrutado a otro interface en cuestión de milisegundos. Esta convergencia será transparente para el usuario. *Ventajas de usar Bonding:* - Redundancia Si tenemos una interface bonding con dos tarjetas ethernet y se quema una, los datos dejaran de balancear entre las dos tarjetas e irán solo por la que está en buen estado. - Ancho de Banda Con la interface bonding anterior, si tenemos el doble enlace conectado a un switch que soporte trunking, o a otra máquina con un bonding, suponiendo que el switch tuviese puertos ethernet full-duplex, y las maquinas tambien, tendríamos un enlace 200Mbps Full-Duplex. *Funcionamiento de Bonding* *Caractersticas:* - Soporta SMP - Soporta todo tipo de tarjetas ethernet. Incluso puedes anadir al bonding Gigabit. - Solo puedes tener un dispositivo bonding por módulo cargado. - Un dispositivo bonding puede tener tantos esclavos como tarjetas de red soporte nuestro sistema. Bonding trabaja con todos los switches que soporten trunking y con todos los sistemas que tengan el propio bonding. También podemos activar lo que se llama Active-backup policy1 , con el cual podremos usar cualquier dispositivo de capa 2. *Dirección MAC del Bonding:* La dirección MAC del Bonding es tomada del primer dispositivo perteneciente a ese bonding. Esta dirección MAC es persistente, a no ser que eliminemos esa interface del bonding. *Métodos de transmisión que puedem usar Bonding:* -Round Robin: Está basado en el orden de esclavos. El dispositivo manda paquetes en turnos y por orden de esclavitud de los interfaces pertenecientes a ese bonding, independientemente de la dirección de origen o de destino del paquete. - XOR: Este método manda los paquetes dependiendo de la direccion física de origen o de destino; es decir un paquete con una determinada MAC de origen o de destino lo manda siempre por el mismo esclavo. - Active-backup policy: Active-backup policy se asegura de que sólo un dispositivo envía paquetes en un determinado momento. Este método es usado para implementar soluciones de alto ancho de banda con dispositivos que no tengan trunking. *Instalación y Conguración del Bonding:* Configuramos el kernel de nuestro linux para que tenga el módulo CONFIG_BONDING cargado: CONFIG_BONDING=m Instalamos los paquetes necesarios: [EMAIL PROTECTED]:~# apt-get install ifenslave-2.6 Cargamos el módulo en el kernel: [EMAIL PROTECTED]:~#modprobe bonding Si queremos usar otro modo le pasamos los parámetros modprobe bonding mode=x, por defecto se asigna round-robin Ahora agregamos los interfaces de red al dispositivo bonding: [EMAIL PROTECTED]:~#ifenslave-2.6 br0 eth0 [EMAIL PROTECTED]:~#ifenslave-2.6 br0 eth1 Y configuramos nuestro nuevo dispositivo de red: [EMAIL PROTECTED]:~#ifconfig br0 10.0.0.100 netmask 255.255.255.0 up [EMAIL PROTECTED]:~#route add default gw 10.0.0.1 [EMAIL PROTECTED]:~# cat /proc/net/bonding/bond0 Ethernet Channel Bonding Driver: v3.0.3 (March 23, 2006) Bonding Mode: load balancing (round-robin) MII Status: up MII Polling Interval (ms): 0 Up Delay (ms): 0 Down Delay (ms): 0 Slave Interface: eth1 MII Status: up Link Failure Count: 0 Permanent HW addr: 00:e0:4c:f2:42:c1 Slave Interface: eth0 MII Status: up Link Failure Count: 0 Permanent HW addr: 00:a0:c9:c7:93:69 Para que se active nuestro bonding automáticamente al arrancar el sistema añadimos al archivo */etc/network/interfaces* : auto bond0 iface bond0 inet static address 10.0.0.100 netmask 255.255.255.0 broadcast 10.0.0.255 gateway 10.0.0.1 slaves eth0 eth1 *Fuente*: http://quarki.net/content/view/22/2/
