
Me gustaría poder vincular/agregar 2 interfaces dentro de un espacio de nombres de red Linux.
La configuración con la que estoy trabajando es la siguiente:
- En la pila neta raíz de Linux tengo dos interfaces Ethernet físicas:
- eth0
- eth1
- Y luego tengo un espacio de nombres de red que tiene 2 interfaces:
- ethX0 que está conectado a eth0 físico
- ethX1 que está conectado a eth1 físico
Me gustaría vincular ethX0 y ethX1 dentro del espacio de nombres de la red, ya sea con 802.3ad o con copia de seguridad activa.
Pero la vinculación en Linux funciona a nivel de interfaz física y parece que no puedo hacer que esto funcione, aunque no veo por qué (a nivel de marco) no se pudo hacer. Puedo crear una red-nsencimaun vínculo, pero no un vínculoencimauna red-ns.
No puedo vincular las interfaces físicas eth0 y eth1 porque quiero poder abordarlas por separado para muchas otras aplicaciones, pero me gustaría vincular solo ethX0 y ethX1.
Alguna idea de cómo hacer esto ?
Respuesta1
La respuesta que encontré fue usar equipos. Excelente API de Linux reciente, funciona en espacios de nombres de red y el comportamiento se puede controlar desde el área de usuario. ¡Buena cosa!
Respuesta2
Algunas personas parecen utilizarlo teams
para esto, pero en realidad no es necesario. Para los sistemas Ubuntu/Debian, puedes simplemente editar /etc/network/interfaces
y hacer algo como esto para utilizar el soporte nativo del kernel:
# The loopback network interface
auto lo
iface lo inet loopback
# 2 x 10 Gbps LACP link:
auto bond0
iface bond0 inet manual
bond-mode 802.3ad
bond-miimon 100
bond-lacp-rate 1
bond-slaves enp1s0f0 enp1s0f1
# 10 Gbps port 1:
auto enp1s0f0
iface enp1s0f0 inet manual
bond-master bond0
# 10 Gbps port 2:
auto enp1s0f1
iface enp1s0f1 inet manual
bond-master bond0
# VLAN 395:
auto bond0.395
iface bond0.395 inet static
address 11.22.33.44
netmask 255.255.255.224
gateway 11.22.33.1
dns-nameservers 11.22.33.1 11.22.33.2
dns-search example.com
vlan-raw-device bond0
Esto permite acceder tcpdump
a cualquier parte que necesite depurar. En este ejemplo, bond0
se trata del tráfico sin procesar con etiquetas VLAN a través de dos conexiones, enp1s0f0
y enp1s0f1
son los puertos sin procesar que transfieren tráfico LACP/802.3ad y bond0.395
es la red lógica sin etiquetas VLAN. Obviamente, el número de VLAN correcto depende de su configuración ascendente; esto 395
es solo un ejemplo.
Verhttps://wiki.debian.org/Bondingpara detalles.