Enlace de canales Ethernet, también conocido como NIC Teaming en sistemas Linux

Enlace de canales Ethernet, también conocido como NIC Teaming en sistemas Linux

La vinculación de canales Ethernet. habilita dos o más tarjetas de interfaz de red. ( NIC. en una sola tarjeta NIC. virtual lo que puede aumentar el ancho de banda y proporciona redundancia de tarjetas NIC. Esta es una excelente manera de lograr enlaces redundantes, tolerancia a fallas o redes de equilibrio de carga en el sistema de producción. Si una NIC. física está inactiva. o desconectada. automáticamente moverá recursos a otra tarjeta NIC. La vinculación de canal. NIC. funcionará con la ayuda del controlador de vinculación en Kernel. Usaremos dos NIC. para demostrar lo mismo.

 Enlace de canal Ethernet  Canal Ethernet Vinculación Vinculación de canales Ethernet

Hay disponibles casi seis. tipos de vínculos de canal. Aquí, revisaremos solo dos tipos de Channel Bond que son populares y ampliamente utilizados.

  1. 0: Equilibrio de carga. ( Round-Robin. : El tráfico se transmite en orden secuencial o por turnos desde ambas NIC. Este modo proporciona equilibrio de carga y tolerancia a fallas.
  2. 1: Active-Backup. solo una NIC esclava está activa en un momento dado. Otra tarjeta de interfaz estará activa solo si falla la NIC esclava activa.

Creación de enlace de canal Ethernet

Tenemos dos Tarjetas Ethernet de red. es decir eth1. y eth2. donde se creará bond0. con fines de vinculación. Necesita un superusuario con privilegios para ejecutar los siguientes comandos.

Equilibrio de carga (Round-Robin) Configure eth1

Mencione el parámetro MASTER bond0. y eth1. como interfaz SLAVE. en el archivo de configuración como se muestra a continuación.

# vi/etc/sysconfig/network-scripts/ifcfg-eth1 DEVICE = “eth1” TYPE = Ethernet ONBOOT = “yes” BOOTPROTO = “none” USERCTL = no MASTER = bond0 SLAVE = yes Configurar eth2

Aquí también, especifique el parámetro MASTER bond0. y la interfaz eth2. como SLAVE.

# vi/etc/sysconfig/network-scripts/ifcfg-eth2 DEVICE = “eth2” TYPE = “Ethernet” ONBOOT = “yes” USERCTL = no # NM_CONTROLLED = yes BOOTPROTO = none MASTER = bond0 SLAVE = yes Crear bond0 Configuración freestar .config.enabled_slots.push

Cree bond0. y configure la interfaz de vinculación de canales en “/etc/sysconfig/network-scripts/ ”directorio llamado ifcfg-bond0.

El siguiente es un archivo de configuración de enlace de canales de muestra.

# vi/etc/sysconfig/network-scripts/ifcfg-bond0 DEVICE = bond0 ONBOOT = yes IPADDR = 192.168 .246.130 NETMASK = 255.255.255.0 BONDING_OPTS = “mode = 0 miimon = 100”

Nota. En la configuración anterior hemos elegido Opciones de vinculación modo = 0. es decir Round-Robin. y miimon = 100. ( Intervalos de sondeo 100 ms. .

Veamos las interfaces creadas con el comando ifconfig que muestra “ bond0. se ejecuta como MASTER. ambas interfaces “ eth1. y “ eth2. se ejecutan como SLAVES.

# ifconfig bond0 Encapsulación de enlace: Ethernet HWaddr 00: 0C: 29: 57: 61: 8E inet addr: 192.168.246.130 Bcast: 192.168.246.255 Máscara: 255.255.255.0 inet6 addr: fe80 :: 20c: 29ff: fe57 : 618e/64 Alcance: Link UP BROADCAST RUNNING MASTER MULTICAST MTU: 1500 Métrica: 1 Paquetes RX: 17374 errores: 0 descartados: 0 desbordamientos: 0 trama: 0 Paquetes TX: 16060 errores: 0 descartados: 0 desbordamientos: 0 portadora: 0 colisiones: 0 txqueuelen: 0 bytes de RX: 1231555 (1.1 MiB) bytes de TX: 1622391 (1.5 MiB) eth1 Encapsulado de enlace: Ethernet HWaddr 00: 0C: 29: 57: 61: 8E UP BROADCAST RUNNING ESCLAVO MULTICAST MTU: 1500 Métrica: 1 Paquetes RX: 16989 errores: 0 descartados: 0 desbordamientos: 0 trama: 0 paquetes TX: 8072 errores: 0 descartados: 0 desbordamientos: 0 portadora: 0 colisiones: 0 txqueuelen: 1000 bytes RX: 1196931 (1,1 MiB) bytes TX: 819042 (799.8 KiB) Interrupción: 19 Dirección base: 0x2000 eth2 Encapsulado de enlace: Ethernet HWaddr 00: 0C: 29: 57: 61: 8E UP BROADCAST RUNNING SLAVE MULTICAST MTU: 1500 Métrica: 1 paquetes RX: 385 errores: 0 descartados: 0 saturaciones: 0 trama: 0 paquetes TX: 7989 errores: 0 descartados: 0 saturaciones: 0 portadora: 0 colisiones: 0 txqueuelen: 1000 RX bytes: 34624 (33,8 KiB) TX bytes: 803583 (784,7 KiB) Interrupción: 19 Dirección base: 0x2080 lo Encap.enlace: Loopback local Dirección inet: 127.0.0.1 Máscara: 255.0.0.0 Dirección inet6: :: 1/128 Alcance: Host UP LOOPBACK RUNNING MTU: 16436 Métrica: 1 paquetes de RX: 8 errores: 0 descartados: 0 desbordamientos: 0 trama: 0 paquetes TX: 8 errores: 0 descartados: 0 desbordamientos: 0 portadora: 0 colisiones: 0 txqueuelen: 0 bytes RX: 480 (480.0 b) TX bytes: 480 (480.0 b)

Reiniciar El servicio de red y las interfaces deben estar bien.

# service network restart Apagando el enlace de la interfaz 0: [OK] Apagando la interfaz de loopback: [OK] Bringing interfaz de bucle invertido: [OK] Apareciendo la interfaz bond0: [OK]

Verificando el estado del enlace.

# watch-n .1 cat/proc/net/bonding/bond0 Salida de muestra

La salida de abajo muestra que Bonding Mode. es Load Balancing. ( RR. y aparecen eth1. y eth2.

Cada 0,1 s: cat/proc/net/bonding/bond0 Jueves 12 de septiembre 14:08:47 Controlador de enlace de canal Ethernet de 2013: v3.6.0 (26 de septiembre de 2009) Modo de enlace: equilibrio de carga (round-robin) Estado MII: up Intervalo de sondeo MII (ms): 100 Retardo ascendente (ms): 0 Retardo descendente (ms): 0 Interfaz esclava: eth1 Estado MII: up Velocidad: Desconocido Dúplex: Desconocido Recuento de fallas de enlace: 2 Dirección de HW permanente: 00 : 0c: 29: 57: 61: 8e ID de cola de esclavo: 0 Interfaz de esclavo: eth2 Estado MII: Velocidad de subida: Desconocido Dúplex: Desconocido Recuento de fallas de enlace: 2 Dirección de HW permanente: 00: 0c: 29: 57: 61: 98 Esclavo ID de cola: 0 Crear copia de seguridad activa

En En este escenario, las interfaces esclavas. siguen siendo las mismas. solo habrá un cambio en la interfaz de enlace ifcfg-bond0. en lugar de ‘ 0. será ‘ 1. que se muestra como debajo .

# vi/etc/sysconfig/network-scripts/ifcfg-bond0 DEVICE = bond0 ONBOOT = yes IPADDR = 192.168.246.130 NETMASK = 255.255.255.0 BONDING_OPTS = “mode = 1 miimon = 100”

Reinicie la red service y verifique el estado de la vinculación.

# service network restart Apagando la interfaz bond0: [OK] Apagando la interfaz de loopback: [OK] Abriendo la interfaz de loopback: [OK] Abriendo la interfaz bond0: [OK]

Comprobando el estado del enlace con el comando.

# watch-n .1 cat/proc/net/bonding/bond0 Salida de muestra

El modo de enlace muestra tolerancia a fallas (respaldo activo) y la interfaz esclava es

Cada 0,1 s: cat/proc/n … Jueves 12 de septiembre 14:40:37 Controlador de enlace de canal Ethernet 2013: v3.6.0 (2 de septiembre 6, 2009) Modo de enlace: tolerancia a fallas (respaldo activo) Esclavo primario: Ninguno Esclavo activo actualmente: eth1 Estado MII: activo Intervalo de sondeo MII (ms): 100 Retardo ascendente (ms): 0 Retardo descendente (ms): 0 Interfaz esclava: eth1 Estado MII: up Velocidad: Desconocido Dúplex: Desconocido Recuento de fallas de enlace: 0 Dirección de hardware permanente: 00: 0c: 29: 57: 61: 8e ID de cola esclava: 0 Interfaz esclava: eth2 Estado MII: up Velocidad: Desconocida Dúplex: Recuento de fallos de enlace desconocido: 0 Dirección de hardware permanente: 00: 0c: 29: 57: 61: 98 ID de cola de esclavo: 0

Nota. manualmente inactivo. y up. las interfaces esclavas para comprobar el funcionamiento de la vinculación de canales. Por favor, vea el comando como se muestra a continuación.

# ifconfig eth1 down # ifconfig eth1 up

¡Eso es todo!