Nota:

Creación de bonos de red mediante la CLI de Network Manager

Introducción

Un enlace de red agrupa varias interfaces de red físicas en un sistema en una única interfaz de grupo lógico y está conectado a un conmutador de red. La vinculación puede facilitar una mayor disponibilidad de conexión a través de la redundancia manteniendo la conexión si falla un enlace en el grupo de enlace. Además, la agregación de la interfaz de red física proporciona un mayor rendimiento mediante el equilibrio de carga del tráfico en las interfaces del enlace. Esta práctica le guiará a través del uso de la utilidad NMCLI para crear una interfaz de enlace de red con varias interfaces físicas, cambiar su modo de enlace y suprimir la interfaz de enlace.

Objetivos

En este laboratorio, aprenderá a:

Nota: Los procedimientos de este tutorial siguen las recomendaciones de Oracle Engineering.

Requisitos

Creación de la interfaz de bonos

La instancia utilizada en este entorno de prácticas es una instancia de Oracle Linux 8 en la nube, con cuatro interfaces de red disponibles. Puede crear una interfaz de enlace mediante tres de estas interfaces de red. Todas las interfaces están en la misma subred privada de red virtual en la nube.

Nota: Puede ver un vídeo gratuito en el que se muestra cómo se crea la interfaz de enlace siguiendo el enlace de la sección Para información adicional al final del tutorial.

  1. Siga las instrucciones de Oracle Linux Lab Basics para establecer una conexión SSH e iniciar sesión en la instancia del sistema de prácticas.

    En las siguientes secciones, se muestra cómo establecer la conexión SSH con la instancia.

    • Copiar dirección IP pública
    • Conexión a la instancia de Oracle Linux
    ssh oracle@<ip address of instance>
    
  2. Creación de una interfaz de vinculación. Establezca el nombre de la conexión de enlace en Bondconn1 y el nombre de la interfaz como bond0.

    sudo nmcli connection add type bond con-name "Bondconn1" ifname bond0
    
  3. Consulta del nuevo bono creado.

    sudo nmcli connection
    

    Salida de ejemplo:

    NAME       UUID                                  TYPE      DEVICE 
    Bondconn1    6a5605dc-49ad-4f8d-8e10-7c130b95aba7  bond      bond0  
    System ens3  21d47e65-8523-1a06-af22-6f121086f085  ethernet  ens3 
    
  4. Consulte el archivo de configuración de enlace para ver información detallada de la nueva interfaz de enlace.

    sudo nmcli connection show "Bondconn1"
    

    Nota: Utilice la clave 'espacio' para continuar con la siguiente página de información de la salida. Utilice la clave 'q' para salir de la salida y volver a la línea de comandos.

    Salida de ejemplo parcial:

    connection.id:                          Bondconn1
    connection.uuid:                        e8092374-4397-4452-bc55-2f64c506b518
    connection.stable-id:                   --
    connection.type:                        bond
    connection.interface-name:              bond0
    connection.autoconnect:                 yes
    connection.autoconnect-priority:        0
    connection.autoconnect-retries:         -1 (default)
    connection.multi-connect:               0 (default)
    ...
    ...
    bond.options:                           mode=balance-rr
    proxy.method:                           none
    proxy.browser-only:                     no
    proxy.pac-url:                          --
    proxy.pac-script:                       --
    GENERAL.NAME:                           Bondconn1
    GENERAL.UUID:                           37845378-f29a-4b10-8107-49b9f5a0f564
    GENERAL.DEVICES:                        bond0
    GENERAL.IP-IFACE:                       --
    GENERAL.STATE:                          activating
    ...
    ...
    connection.master:                      --
    connection.slave-type:                  --
    connection.autoconnect-slaves:          -1 (default)
    connection.secondaries:                 --
    connection.gateway-ping-timeout:        0
    connection.metered:                     unknown
    connection.lldp:                        default
    connection.mdns:                        -1 (default)
    connection.llmnr:                       -1 (default)
    connection.wait-device-timeout:         -1
    ipv4.method:                            auto
    lines 1-25
    

    Familiarícese con la búsqueda de información en la salida, como el ID de vínculo, el UUID, el nombre de la interfaz, la configuración IP y observe el modo de enlace utilizado.

Cambiar el modo de enlace

El modo de enlace identifica cómo la interfaz de enlace distribuye el tráfico a través de sus enlaces y cómo maneja el fallo de uno o más enlaces en el grupo de enlace alterando el comportamiento del equilibrio de carga y el failover del dispositivo.

  1. Cambie el modo de enlace utilizado por la interfaz de enlace de Round Robin a Active Backup mediante la opción de comando bond.options "mode=active-backup".

    sudo nmcli connection modify Bondconn1 bond.options "mode=active-backup"
    

    Nota: Los modos admitidos son el circuito cíclico predeterminado (balance-rr), la copia de seguridad activa (active-backup), XOR (balance-xor), la difusión (broadcast), 802.3ad (802.3ad), el equilibrio de carga de transmisión adaptativa (balance-tlb) y el equilibrio de carga adaptativo (balance-alb).

    Puede obtener más información sobre cómo funcionan los distintos modos de enlace en este enlace de documentación:

    Documento:Oracle Linux 8 - Trabajo con vinculación de red

  2. Consulte la información detallada de la nueva interfaz de enlace para ver el modo de enlace modificado.

    sudo nmcli connection show "Bondconn1"
    

    Salida de ejemplo parcial:

    ...
    ...
    ...
    cipv6.dhcp-timeout:                      0 (default)
    ipv6.dhcp-send-hostname:                yes
    ipv6.dhcp-hostname:                     --
    ipv6.dhcp-hostname-flags:               0x0 (none)
    ipv6.token:                             --
    bond.options:                           mode=active-backup
    proxy.method:                           none
    proxy.browser-only:                     no
    proxy.pac-url:                          --
    lines 56-80
    
  1. Visualice la información de la interfaz del dispositivo de red en el sistema.

    sudo nmcli device
    

    Salida de ejemplo:

    DEVICE   TYPE      STATE                                  CONNECTION  
    ens3     ethernet  connected                              System ens3 
    bond0    bond      connecting (getting IP configuration)  Bondconn1   
    ens5     ethernet  disconnected                           --          
    ens6     ethernet  disconnected                           --          
    ens7     ethernet  disconnected                           --
    lo       loopback  unmanaged                              --
    

    Se enumeran la interfaz de enlace y cuatro dispositivos de red. Los dispositivos ens5, ens6, ens7 se muestran como "desconectados". Estos dispositivos se pueden utilizar como enlaces de interfaz para la interfaz de enlace.

  2. Agregue la interfaz ens5 como enlace para el grupo de interfaces de enlace.

    sudo nmcli connection add type ethernet slave-type bond con-name bond0-if1 ifname ens5 master bond0
    

    Salida de ejemplo:

    Connection 'bond0-if1' (56e98603-099c-46d1-acd5-1268e4ef9005) successfully added.
    
  3. Agregue la interfaz ens6 como segundo enlace para el grupo de interfaces de enlace.

    sudo nmcli connection add type ethernet slave-type bond con-name bond0-if2 ifname ens6 master bond0
    

    Salida de ejemplo:

    Connection 'bond0-if2' (577a9de4-43f4-46c7-9b29-dc51ef0f7c65) successfully added.
    
  4. Visualice la información de la interfaz del dispositivo de red en el sistema.

    sudo nmcli device
    

    Salida de ejemplo:

    DEVICE  TYPE      STATE                                  CONNECTION  
    ens3    ethernet  connected                              System ens3 
    ens5    ethernet  connected                              bond0-if1   
    ens6    ethernet  connected                              bond0-if2   
    bond0   bond      connecting (getting IP configuration)  Bondconn1   
    ens7    ethernet  disconnected                           --          
    lo      loopback  unmanaged                              --
    

    Los dos enlaces se asocian ahora con la interfaz de enlace.

Configurar la dirección IP para la interfaz de Bond

De manera predeterminada, el vínculo está configurado para usar DHCP. La asignación de direcciones IP, la puerta de enlace y la información de resolución de redes se pueden configurar en la interfaz de enlace lógico.

  1. Utilice el comando ip addr para verificar que bond0 informa su estado como UP.

    ip addr
    

    Salida de ejemplo:

    17: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 02:00:17:09:f8:b0 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::cd09:f18d:f202:3ae4/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
    
    • Si la salida muestra bond0 como DOWN, ejecute el comando sudo nmcli connection up "Bondconn1" para cambiar su estado a UP.

      sudo nmcli connection up "Bondconn1"
      

      Salida de ejemplo:

      Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/61)
      
  2. Asigne la dirección IP y la máscara de subred de '192.168.1.10/24' a la interfaz bond0 con la opción de comando ipv4.addresses.

    sudo nmcli connection modify "Bondconn1" ipv4.addresses '192.168.1.10/24'
    
  3. Defina el método de asignación de direcciones IP en manual. Esto configura la dirección IP y la máscara para la interfaz de enlace.

    sudo nmcli connection modify "Bondconn1" ipv4.method manual
    
  4. Visualice la información de red de la capa tres para el sistema.

    La interfaz bond0 ahora tiene asignada la dirección IP.

    ip addr
    

    Salida de ejemplo parcial:

    33: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
        link/ether 00:00:17:01:2f:ef brd ff:ff:ff:ff:ff:ff
        inet 192.168.1.10/24 brd 192.168.1.255 scope global noprefixroute bond0
           valid_lft forever preferred_lft forever
        inet6 fe80::5149:fd05:55e5:9eff/64 scope link noprefixroute 
           valid_lft forever preferred_lft forever
    
  1. Asigne el último dispositivo de red no asignado ens7 a la interfaz bond0.

    sudo nmcli conn add type ethernet slave-type bond con-name bond0-if3 ifname ens7 master bond0
    

    La salida del comando muestra que las interfaces de enlace se han agregado correctamente.

  2. Visualice la información de la interfaz del dispositivo de red en el sistema.

    sudo nmcli device
    

    Salida de ejemplo:

    DEVICE  TYPE      STATE      CONNECTION  
    ens3    ethernet  connected  System ens3 
    bond0   bond      connected  Bondconn1   
    ens5    ethernet  connected  bond0-if1   
    ens6    ethernet  connected  bond0-if2   
    ens7    ethernet  connected  bond0-if3   
    lo      loopback  unmanaged  --
    

    La salida muestra el tercer dispositivo de red conectado a la interfaz de enlace.

  3. Consulta de la información de configuración de vínculos.

    Esto muestra información sobre el enlace, su estado, así como las interfaces de enlace en el grupo de enlace y su estado.

    cat /proc/net/bonding/bond0
    

    Salida de ejemplo:

    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): 0
    Down Delay (ms): 0
    Peer Notification Delay (ms): 0
    
    Slave Interface: ens5
    MII Status: up
    Speed: Unknown
    Duplex: Unknown
    Link Failure Count: 0
    Permanent HW addr: 02:00:17:09:f8:b0
    Slave queue ID: 0
    
    Slave Interface: ens6
    MII Status: up
    Speed: Unknown
    Duplex: Unknown
    Link Failure Count: 0
    Permanent HW addr: 00:00:17:02:a1:10
    Slave queue ID: 0
    
     Slave Interface: ens7
    MII Status: up
    Speed: Unknown
    Duplex: Unknown
    Link Failure Count: 0
    Permanent HW addr: 02:00:17:03:f1:3a
    Slave queue ID: 0
    

    La salida muestra la configuración y el estado del enlace, incluidos los enlaces de enlace activos, su información y su estado.

Para eliminar la interfaz de enlace primero eliminamos los enlaces de enlace.

Atención: no suprima una interfaz de enlace con enlaces de interfaz activos conectados a ella.

  1. Utilice el comando sudo nmcli connection delete y agregue el nombre de interfaz de enlace de enlace. Comience eliminando la conexión bond0-if3 y, a continuación, repita la acción para las interfaces de enlace restantes.

    Nota: El orden que suprime los enlaces de enlace no es importante.

    sudo nmcli connection delete bond0-if3
    

    Salida de ejemplo:

    Connection 'bond0-if3' (5751ef04-43f4-46c7-9b29-dc51ef0f7c65) successfully deleted.
    
    sudo nmcli connection delete bond0-if2
    

    Salida de ejemplo:

    Connection 'bond0-if2' (577a9de4-43f4-46c7-9b29-dc51ef0f7c65) successfully deleted.
    
    sudo nmcli connection delete bond0-if1
    

    Salida de ejemplo:

    Connection 'bond0-if1' (56e98603-099c-46d1-acd5-1268e4ef9005) successfully deleted.
    
  2. Utilice el comando sudo nmcli device para verificar que los dispositivos se han desconectado.

    sudo nmcli device
    

    Salida de ejemplo:

    DEVICE  TYPE      STATE         CONNECTION  
    ens3    ethernet  connected     System ens3 
    bond0   bond      connected     Bondconn1   
    ens5    ethernet  disconnected  --          
    ens6    ethernet  disconnected  --          
    ens7    ethernet  disconnected  --          
    lo      loopback  unmanaged     -- 
    

Supresión de la interfaz de bonos

Antes de suprimir la interfaz de enlace, defina la conexión con el estado down con el comando sudo nmcli connection down.

  1. Transición de la interfaz de enlace.

    sudo nmcli connection down "Bondconn1"
    

    Salida de ejemplo:

    Connection 'Bondconn1' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/86)
    
  2. Utilice el comando ip addr para verificar que la interfaz de enlace se ha eliminado.

    ip addr
    

    La salida muestra que la interfaz de enlace ya no aparece en la lista.

  3. Utilice el comando sudo nmcli connection delete junto con el nombre de interfaz de enlace para suprimir la interfaz de enlace.

    sudo nmcli connection delete "Bondconn1"
    

    Salida de ejemplo:

    Connection 'Bondconn1' (a3d42efc-52ba-474a-9eea-67a4342420df) successfully deleted.
    
  4. Utilice el comando sudo nmcli connection para verificarlo.

    sudo nmcli connection
    

    Salida de ejemplo:

    NAME         UUID                                  TYPE      DEVICE 
    System ens3  21d47e65-8523-1a06-af22-6f121086f085  ethernet  ens3
    

    La salida muestra que la única conexión es ens3.

  5. Consulta del archivo de configuración de vínculos.

    cat /proc/net/bonding/bond0
    
    cat: /proc/net/bonding/bond0: No such file or directory
    

    Nota: La supresión de la interfaz de enlace también elimina su archivo de configuración.

Para obtener más información

Ver otros recursos relacionados:

Más recursos de aprendizaje

Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de aprendizaje gratuito en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en Oracle Learning Explorer.

Para obtener documentación sobre el producto, visite Oracle Help Center.