Comando bridge en Ubuntu: Guía práctica de redes en Linux

Introducción al control de puentes en Linux

Gestionar la capa de enlace en entornos Ubuntu modernos exige dominar el conjunto de utilidades que proporciona la suite iproute2. Dentro de este ecosistema, la herramienta bridge constituye el estándar por excelencia para examinar y configurar dispositivos de conmutación virtuales a nivel de kernel. A lo largo de este tutorial, exploraremos desde el despliegue de una topología de conmutación aislada hasta el diagnóstico minucioso de puertos, la inspección de registros en la base de datos de reenvío (FDB) y la segmentación mediante etiquetas VLAN.

Antes de comenzar a auditar el tráfico, resulta imprescindible contar con las utilidades de red actualizadas en el sistema mediante la instalación del paquete iproute2.

Instalación de herramientas de red con apt-get

A continuación, levantamos una interfaz virtual de tipo puente denominada br0 y cambiamos su estado operativo a activo mediante la siguiente instrucción combinada: ip link add br0 type bridge && ip link set br0 up.

Creación y activación de la interfaz br0

Para simular tráfico y conexiones físicas entre endpoints, generamos un par de interfaces Ethernet virtuales enlazadas (veth0 y veth1) ejecutando ip link add veth0 type veth peer name veth1.

Generación del par de interfaces virtuales veth

El siguiente paso consiste en asociar uno de estos extremos como miembro esclavo del puente e inicializarlo; esto se logra aplicando ip link set veth0 master br0 && ip link set veth0 up.

Asignación de veth0 como puerto del puente br0

Para auditar el estado y los parámetros de cada puerto adherido al conmutador virtual, empleamos la orden bridge link show.
La salida resultante desglosa la jerarquía de dependencias (master br0), la operatividad del protocolo Spanning Tree (state disabled), así como las métricas de ponderación y topología como la prioridad (priority) o el costo de ruta (cost).
⚙️ [Parámetros destacados]

-s (-stats) : Expone telemetría completa sobre volúmenes de paquetes, bytes transmitidos y fallos de transmisión por puerto.
-d (-details) : Incorpora banderas internas de STP, temporizadores y atributos avanzados del enlace.
-c (-color) : Resalta con tonalidades la salida en consola para facilitar la lectura visual.
-j (-json) : Estructura la información en formato JSON, idóneo para su consumo mediante scripts de automatización.
-p (-pretty) : Aplica indentación legible al combinarse con la opción de serialización JSON (-j).

Inspección del estado de los puertos del puente

2. Exploración y administración de la tabla de reenvío MAC (bridge fdb)

Al ejecutar bridge fdb show dev br0, el administrador accede directamente a la Forwarding Database (FDB) ligada al dispositivo raíz br0.
Esta consulta revela las direcciones MAC multicast de control local asignadas por el sistema operativo, catalogadas bajo la condición inmutable self permanent.

Visualización de la base de datos FDB en br0

Cuando se requiere forzar el enrutamiento a nivel 2 sin depender del aprendizaje dinámico, podemos registrar una entrada fija mediante bridge fdb add 02:01:02:03:04:05 dev veth0 master static.
En esta sintaxis, el modificador master delega la persistencia al puente contenedor, mientras que el flag static evita que el temporizador de envejecimiento (aging) purgue el registro de la memoria.

Inserción manual de una dirección MAC estática

Una posterior verificación con bridge fdb show dev veth0 permite constatar el comportamiento de reenvío para dicho puerto.
Como se observa en los registros, conviven tanto la dirección física fija (permanent) propia del hardware virtual como la nueva directiva manual (static), ambas correctamente subordinadas al puente principal (master br0).

Comprobación de entradas FDB asociadas a veth0

3. Segmentación de tráfico y filtrado VLAN (bridge vlan)

El aislamiento de dominios de difusión a través de un puente requiere activar explícitamente el procesamiento de etiquetas; para ello ejecutamos ip link set dev br0 type bridge vlan_filtering 1.
Con esta directiva activada, el núcleo de Linux inspecciona las cabeceras 802.1Q de cada trama entrante y descarta el tráfico no autorizado para el identificador correspondiente.

Habilitación del motor de filtrado VLAN en br0

Para integrar un puerto en una red virtual específica sin alterar su pertenencia actual, utilizamos bridge vlan add dev veth0 vid 10, habilitando el manejo de paquetes pertenecientes a la VLAN 10 sobre veth0.

Asignación de pertenencia a la VLAN 10 en veth0

Al consultar la distribución global mediante bridge vlan show, se visualiza la matriz completa de puertos y etiquetas.
El informe confirma la presencia de la VLAN nativa predeterminada (1 PVID Egress Untagged) tanto en br0 como en veth0, sumada a la nueva membresía etiquetada en la VLAN 10 configurada en el puerto cliente.

Esquema de asignación VLAN por puerto

4. Diagnóstico avanzado con métricas (-s, -d) y limpieza del entorno

El empleo del modificador -s mediante bridge -s link show amplía sustancialmente el reporte operativo al incorporar contadores de rendimiento en tiempo real.
El volcado expone no solo el estado del enlace de veth0, sino también métricas de STP desactivado (state disabled), jerarquías de prioridad (priority 32) e índices de costo operativo (cost 2).

Métricas detalladas y contadores de paquetes por puerto

Para una auditoría forense de la tabla de conmutación, la combinación bridge -d fdb show desglosa el mapeo entre direcciones de hardware e identificadores VLAN.
El resultado evidencia cómo los registros estáticos (static) y del sistema (permanent) operan asociados a sus respectivos dominios (vlan 1 y vlan 10) bajo la coordinación del switch virtual (master br0).

Detalle de atributos avanzados en la tabla FDB

Concluida la sesión de laboratorio, es una buena práctica liberar los recursos de red creados ejecutando de manera encadenada ip link set veth0 nomaster && ip link delete br0 && ip link delete veth0.

Eliminación de interfaces virtuales y desmantelamiento del puente

Esta revisión exhaustiva del comando bridge en Ubuntu proporciona los fundamentos necesarios para diagnosticar con solvencia escenarios de virtualización, contenedores y conmutación de software en entornos productivos de Linux.