Cómo comprobar si un puente de red está configurado en Linux

LinuxLinuxBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderás cómo comprobar si hay un puente de red configurado en tu sistema Linux. Utilizarás el comando brctl show para listar los puentes existentes y sus interfaces asociadas, y el comando ip link para verificar el estado de estas interfaces de puente. Finalmente, explorarás los archivos de configuración comunes en /etc/network para entender cómo se pueden definir los puentes de forma persistente. Este laboratorio proporciona habilidades esenciales para comprender las configuraciones de red, especialmente en entornos que utilizan virtualización o contenedores.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux(("Linux")) -.-> linux/FileandDirectoryManagementGroup(["File and Directory Management"]) linux(("Linux")) -.-> linux/TextProcessingGroup(["Text Processing"]) linux(("Linux")) -.-> linux/RemoteAccessandNetworkingGroup(["Remote Access and Networking"]) linux/BasicFileOperationsGroup -.-> linux/ls("Content Listing") linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") linux/FileandDirectoryManagementGroup -.-> linux/which("Command Locating") linux/TextProcessingGroup -.-> linux/grep("Pattern Searching") linux/RemoteAccessandNetworkingGroup -.-> linux/ifconfig("Network Configuring") linux/RemoteAccessandNetworkingGroup -.-> linux/ip("IP Managing") subgraph Lab Skills linux/ls -.-> lab-558733{{"Cómo comprobar si un puente de red está configurado en Linux"}} linux/cat -.-> lab-558733{{"Cómo comprobar si un puente de red está configurado en Linux"}} linux/which -.-> lab-558733{{"Cómo comprobar si un puente de red está configurado en Linux"}} linux/grep -.-> lab-558733{{"Cómo comprobar si un puente de red está configurado en Linux"}} linux/ifconfig -.-> lab-558733{{"Cómo comprobar si un puente de red está configurado en Linux"}} linux/ip -.-> lab-558733{{"Cómo comprobar si un puente de red está configurado en Linux"}} end

Listar puentes con brctl show

En este paso, aprenderás cómo listar los puentes de red en tu sistema Linux utilizando el comando brctl. Los puentes de red son dispositivos de software que conectan múltiples segmentos de red en la capa de enlace de datos. Se utilizan comúnmente en virtualización y contenedores para permitir que las máquinas virtuales o contenedores se comuniquen entre sí y con la red externa.

El comando brctl es una herramienta de línea de comandos utilizada para configurar y administrar puentes de red.

Primero, comprobemos si el comando brctl está disponible en tu sistema. Escribe el siguiente comando en la terminal:

which brctl

Si se encuentra el comando, verás una salida similar a esta:

/usr/sbin/brctl

Si el comando no se encuentra, es posible que debas instalar el paquete bridge-utils. Sin embargo, en este entorno de LabEx, brctl debe estar preinstalado.

Ahora, listemos los puentes de red existentes. Utiliza el comando brctl show:

brctl show

Deberías ver una salida similar a esta, que muestra información sobre cualquier puente configurado:

bridge name	bridge id		STP enabled	interfaces
br-xxxxxxxxxxxx	8000.xxxxxxxxxxxx	no		vethxxxxxxxx
                                                        vethxxxxxxxx
docker0		8000.xxxxxxxxxxxx	no

La salida proporciona la siguiente información para cada puente:

  • bridge name: El nombre del puente (por ejemplo, br-xxxxxxxxxxxx, docker0).
  • bridge id: Un identificador único para el puente.
  • STP enabled: Indica si el Protocolo de Árbol Expandido (Spanning Tree Protocol, STP) está habilitado (generalmente 'no' en configuraciones simples).
  • interfaces: Las interfaces de red conectadas a este puente.

En la salida de ejemplo, puedes ver un puente llamado docker0, que a menudo es creado por Docker para la red de contenedores. También es posible que veas otros puentes dependiendo de la configuración del entorno.

Comprender los puentes de red es crucial cuando se trabaja con tecnologías de contenedores como Docker o plataformas de virtualización.

En el paso anterior, utilizaste brctl show para listar los puentes de red. Ahora, usemos el comando ip link para obtener información más detallada sobre las interfaces de red, incluyendo las interfaces de puente.

El comando ip es una poderosa utilidad para la configuración de red en Linux. El subcomando link se utiliza para mostrar y manipular interfaces de red.

Para listar todas las interfaces de red, incluyendo las interfaces de puente, escribe el siguiente comando:

ip link show

Verás una lista de todas las interfaces de red en tu sistema. Busca interfaces con nombres que coincidan con los nombres de los puentes que viste con brctl show (por ejemplo, docker0, br-xxxxxxxxxxxx).

La salida de una interfaz de puente se verá similar a esta:

X: br-xxxxxxxxxxxx: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff

A continuación, se detalla alguna información clave:

  • X: El número de índice de la interfaz.
  • br-xxxxxxxxxxxx: El nombre de la interfaz de puente.
  • <BROADCAST,MULTICAST,UP,LOWER_UP>: Marcas que indican el estado y las capacidades de la interfaz. UP significa que la interfaz está activa, y LOWER_UP significa que el enlace físico está activo.
  • mtu 1500: La Unidad Máxima de Transmisión (Maximum Transmission Unit, MTU), que es el tamaño máximo de paquete que se puede transmitir.
  • qdisc noqueue: La disciplina de encolamiento.
  • state UP: El estado administrativo de la interfaz.
  • mode DEFAULT: El modo de funcionamiento.
  • group default: El grupo al que pertenece la interfaz.
  • link/ether xx:xx:xx:xx:xx:xx: La dirección MAC de la interfaz.

También puedes filtrar la salida para mostrar solo las interfaces de puente enviando la salida de ip link show a grep. Por ejemplo, para encontrar líneas que contengan "br-":

ip link show | grep br-

O para encontrar líneas que contengan "docker0":

ip link show | grep docker0

Usar ip link show proporciona una vista más completa de las interfaces de red y sus estados, complementando la información de brctl show.

Inspeccionar la configuración de puentes en /etc/network

En este paso, explorarás dónde se almacenan a menudo las configuraciones de interfaces de red, incluyendo las configuraciones de puentes, en sistemas basados en Debian como Ubuntu. Estas configuraciones definen cómo se configuran las interfaces de red cuando el sistema se inicia.

Las configuraciones de interfaces de red generalmente se encuentran en el archivo /etc/network/interfaces y posiblemente en archivos dentro del directorio /etc/network/interfaces.d/.

Veamos el contenido del archivo principal de interfaces de red utilizando el comando cat. cat se utiliza para mostrar el contenido de archivos.

cat /etc/network/interfaces

Puedes ver contenido similar a este:

## interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

Este archivo define la interfaz lo (bucle interno) y la interfaz eth0, configurada para utilizar DHCP.

Ahora, veamos el contenido del directorio /etc/network/interfaces.d/. Este directorio se utiliza a menudo para almacenar archivos de configuración separados para interfaces o puentes individuales, manteniendo el archivo principal interfaces más limpio.

Utiliza el comando ls para listar los archivos en este directorio:

ls /etc/network/interfaces.d/

Puedes ver archivos relacionados con configuraciones de puentes aquí, especialmente si los puentes se configuraron manualmente o por otro software. Por ejemplo, puedes ver un archivo llamado 50-cloud-init.cfg o similar, que podría contener definiciones de puentes.

Si hay archivos en este directorio, puedes ver su contenido utilizando cat. Por ejemplo, si ves un archivo llamado my-bridge.cfg, utilizarías:

cat /etc/network/interfaces.d/my-bridge.cfg

Examinar estos archivos de configuración te ayuda a entender cómo se definen y configuran de forma persistente los puentes de red en el sistema. Ten en cuenta que los métodos de configuración de red pueden variar entre distribuciones y versiones de Linux (por ejemplo, utilizando Netplan en las versiones más recientes de Ubuntu), pero /etc/network/interfaces y /etc/network/interfaces.d/ son ubicaciones comunes en muchos sistemas.

Resumen

En este laboratorio, aprendiste cómo verificar la configuración de puentes de red en Linux. Utilizaste el comando brctl show para listar los puentes existentes, sus IDs, el estado de STP (Spanning Tree Protocol, Protocolo de Árbol Expandido) y las interfaces asociadas. Este comando proporciona una visión general de alto nivel de la configuración de puentes en el sistema.

También aprendiste que los puentes de red son esenciales para conectar segmentos de red, especialmente en entornos de virtualización y contenedores como Docker. Comprender cómo identificar e inspeccionar estos puentes es una habilidad fundamental para gestionar las configuraciones de red en tales entornos.