3 formas de crear un puente de red en RHEL/CentOS 8


Un puente de red es un dispositivo de capa de enlace de datos que interconecta dos o más segmentos de red, ofreciendo comunicación entre ellos. Crea una única interfaz de red para configurar una única red agregada a partir de múltiples redes o segmentos de red. Reenvía el tráfico según las direcciones MAC de los hosts (almacenadas en una tabla de direcciones MAC).

Los sistemas operativos Linux como RHEL (Red Hat Enterprise Linux) y CentOS 8 admiten la implementación de un puente de red basado en software para emular un puente de hardware. El puente cumple una función similar a la de un conmutador de red; actúa más o menos como un conmutador de red virtual.

Hay varios casos de uso de puentes de red, una aplicación práctica es en un entorno de virtualización para crear un conmutador de red virtual que se utiliza para conectar máquinas virtuales (VM) a la misma red que el host.

Esta guía muestra varias formas de configurar un puente de red en RHEL/CentOS 8 y usarlo para configurar redes virtuales en modo puente en KVM, para conectar máquinas virtuales a la misma red que el host.

  1. Creación de un puente de red con la herramienta nmcli
  2. Creación de un puente de red a través de Cockpit Web Console
  3. Crear un puente de red con nm-connection-editor
  4. Cómo utilizar el puente de red en un software de virtualización

nmcli es una potente herramienta de línea de comandos que se utiliza mucho, que se puede programar y que permite controlar NetworkManager e informar sobre el estado de la red. Se comunica directamente con NetworkManager y controla solo las conexiones de todo el sistema. Es importante destacar que permite a los usuarios utilizar abreviaturas, siempre que sean un prefijo único en el conjunto de opciones posibles.

Primero, use el comando IP para identificar las interfaces de red (tanto físicas como virtuales) actualmente conectadas a su máquina y las redes a las que están conectadas.

# ip add

A partir del resultado del comando anterior, la interfaz Ethernet se llama enp2s0, agregaremos esta interfaz al puente como esclavo.

A continuación, para enumerar las conexiones de red activas en el sistema de prueba, use el siguiente comando nmcli.

# nmcli conn show --active

Importante: Si el demonio libvirtd (libvirtd) está instalado e iniciado, la interfaz de red predeterminada que representa el puente de red (conmutador de red virtual) es virbr0 como se ve en las capturas de pantalla anteriores. Está configurado para ejecutarse en modo NAT.

A continuación, cree una interfaz de puente de red utilizando el siguiente comando nmcli, donde conn o con significa conexión, y el nombre de la conexión es br0 y el nombre de la interfaz también es br0.

# nmcli conn add type bridge con-name br0 ifname br0

Nota: En un modo de puente, las máquinas virtuales son fácilmente accesibles a la red física, aparecen dentro de la misma subred que la máquina host y pueden acceder a servicios como DHCP.

Para configurar una dirección IP estática, ejecute los siguientes comandos para configurar la dirección IPv4, la máscara de red, la puerta de enlace predeterminada y el servidor DNS de la conexión br0 (configure los valores de acuerdo con su entorno).

# nmcli conn modify br0 ipv4.addresses '192.168.1.1/24'
# nmcli conn modify br0 ipv4.gateway '192.168.1.1'
# nmcli conn modify br0 ipv4.dns '192.168.1.1'
# nmcli conn modify br0 ipv4.method manual

Ahora agregue la interfaz Ethernet (enp2s0) como un dispositivo portátil a la conexión del puente (br0) como se muestra.

# nmcli conn add type ethernet slave-type bridge con-name bridge-br0 ifname enp2s0 master br0

A continuación, abra o active la conexión puente, puede usar el nombre de la conexión o UUID como se muestra.

# nmcli conn up br0
OR
# nmcli conn up 2f03943b-6fb5-44b1-b714-a755660bf6eb

Luego, desactive o desactive la conexión Ethernet o cableada.

# nmcli conn down Wired\ connection\ 1
OR
# nmcli conn down e1ffb0e0-8ebc-49d0-a690-2117ca5e2f42

Ahora, cuando intente enumerar las conexiones de red activas en el sistema, la conexión de puente debería aparecer en la lista.

# nmcli conn show  --active

A continuación, utilice el siguiente comando de puente para mostrar la configuración y los indicadores del puerto de puente actual.

# bridge link show

Para desactivar la conexión del puente y eliminarla, ejecute los siguientes comandos. Tenga en cuenta que primero debe activar la conexión por cable.

# nmcli conn up Wired\ connection\ 1
# nmcli conn down br0
# nmcli conn del br0
# nmcli conn del bridge-br0

Para obtener más información, consulte la página de manual de nmcli.

# man nmcli

La cabina es una interfaz de administración de servidor basada en web, liviana, interactiva y fácil de usar. Para interactuar con la configuración de red del sistema, la cabina utiliza NetworkManager y las API de DBus que proporciona.

Para agregar un puente, vaya a Redes, luego haga clic en Agregar puente como se resalta en la siguiente imagen.

Aparecerá una ventana emergente con opciones para agregar un nuevo puente. Establezca el nombre del puente y seleccione los puertos como se muestra en la siguiente captura de pantalla. Opcionalmente, puede habilitar STP (Protocolo de árbol de expansión) y luego hacer clic en Aplicar.

Debajo de la lista de Interfaces, debería aparecer el nuevo puente y la interfaz Ethernet debería estar desactivada.

Para ver el puente en detalle, haga doble clic en él. Hay opciones para eliminarlo o eliminarlo, agregarle un nuevo dispositivo de puerto y más.

nm-connection-editor es un editor gráfico de conexiones de red para NetworkManager, que se utiliza para agregar, eliminar y modificar conexiones de red almacenadas por NetworkManager. Cualquier modificación solo puede funcionar si NetworkManager se está ejecutando.

Para iniciarlo, ejecute el comando nm-connection-editor como root en la línea de comando o ábralo desde el menú del sistema.

# nm-connection-editor

Una vez que se abre, haga clic en el signo más para agregar una nueva conexión como se resalta en la siguiente captura de pantalla.

En la ventana emergente, elija el tipo de conexión del menú desplegable, Puente en este caso y haga clic en Crear.

A continuación, configure una conexión de puente y un nombre de interfaz, luego haga clic en Agregar para agregar un puerto de puente. Elija Ethernet como tipo de conexión. Luego haga clic en Crear.

A continuación, edite los detalles de la conexión del dispositivo de puerto y haga clic en Guardar.

Ahora el puerto con puente debe agregarse a la lista de conexiones con puente. Luego haga clic en Guardar.

Desde la interfaz principal del editor de conexiones, debería poder ver la nueva conexión en puente y la interfaz de puente como se muestra en la siguiente captura de pantalla.

Ahora siga adelante para activar la conexión puente y desactivar la conexión por cable desde la línea de comando usando la herramienta nmcli como se muestra antes.

# nmcli conn up br0
# nmcli conn down Wired\ connection\ 1

En esta sección, mostraremos cómo usar un puente para conectar máquinas virtuales a la red del host, en Oracle VirtualBox y KVM como se explica a continuación.

Para configurar una máquina virtual para usar un adaptador en puente, selecciónelo de la lista de VM, luego vaya a su configuración, haga clic en la opción Red y seleccione el adaptador (por ejemplo, Adaptador 1), luego asegúrese de que la opción Habilitar adaptador de red esté marcada, configure adjunto como Adaptador en puente, luego seleccione el nombre de la interfaz en puente (br0) y haga clic en Aceptar.

Para usar el puente de red creado anteriormente en KVM, use la opción --network u003d bridge u003d br0 mientras las máquinas virtuales usan la interfaz de línea de comandos, usando el comando virt-install.

# virt-install --virt-type=kvm --name Ubuntu18.04 --ram 1536 --vcpus=4 --os-variant=ubuntu18.04 --cdrom=/path/to/install.iso --network=bridge=br0,model=virtio --graphics vnc --disk path=/var/lib/libvirt/images/ubuntu18.04.qcow2,size=20,bus=virtio,format=qcow2

También puede crear redes adicionales y configurarlas usando la herramienta de línea de comandos virsh, y el archivo de configuración XML de una VM se puede editar para usar una de estas nuevas redes puenteadas.

En esta guía, hemos mostrado cómo configurar un puente de red en RHEL/CentOS 8 y usarlo para conectar máquinas virtuales a la misma red del host, bajo Oracle VirtualBox y KVM.

Como de costumbre, comuníquese con nosotros a través del formulario de comentarios a continuación para cualquier pregunta o comentario. Puede encontrar más detalles sobre la configuración de un puente de red en la documentación de RHEL 8.