Bridge Bond: Debian GNU/Linux
Esta entrada la tenía pendiente de publicar, tras los upgrades que realicé en mi Servidor.
En un inicio el Servidor disponia de una única entrada de red cableada, pero con vistas a ser actualizado, deje las pautas de configurar una red tipo Bridge para la gestión del mismo.
La actualización de hardware llegó con esta tarjeta de red la cual me permitia conexión dual y soporte protocolo 802.3ad, a resumidas cuentas este método combina varias conexiones ethernet individuales en una, aumentando significativamente el ancho de banda.
Días atrás también hable de las redes tipo Bond, como solución a conexión redundante en una Raspberry entre la red cableada e inhalámbrica.
Y ahora le toca el turno a la red tipo Bridge
sobre una de tipo Bond
en este mini-tutorial, que sería extensible a otras arquitecturas.
Empezamos consultado las interfaces disponibles en el sistema desde la terminal:
ip -br addr show
En mi caso obtengo los siguientes datos para próximas referencias:
pi@overclock:~$ ip -br addr show
lo UNKNOWN
enp0s31f6 UP
enp5s0f0 DOWN
enp5s0f1 DOWN
Configurar Kernel + Instalar dependencias
Habilitamos la carga del modulo bonding, para ello lo añadimos a la carga de modulos de arranque del sistema:
sudo nano /etc/modprobe.d/bonding.conf
Y le añadimos el siguiente contenido:
alias bond0 bonding
options bonding mode=4 miimon=100 lacp_rate=1
Guardamos, salimos del editor e instalamos dependencias:
sudo apt-get update && \
sudo apt-get -y install ifenslave bridge-utils \
net-tools ifupdown
Configurar Red
Vamos a configurar la red, para ello editamos el fichero interfaces:
sudo nano /etc/network/interfaces
Y lo dejamos configurado con la siguiente estructura (las interfaces de red pueden diferir), para tener una ip estática (activa por defecto) o dinámica (desactivada por defecto):
# Interfaz Loopback
auto lo
iface lo inet loopback
# Interfaz LAN (Placa Base)
#auto enp0s31f6
#iface enp0s31f6 inet manual
# Interfaz LAN (HP PCIe)
auto enp5s0f0
iface enp5s0f0 inet manual
bond-master bond0
# Interfaz LAN (HP PCIe)
auto enp5s0f1
iface enp5s0f1 inet manual
bond-master bond0
# Interfaz Red Bond (bond0)
auto bond0
iface bond0 inet manual
bond-mode 4
bond-miimon 100
bond-lacp-rate 1
bond-xmit-hash-policy layer2+3
bond-slaves enp5s0f0 enp5s0f1
# Interfaz Red Bridge (br0 IP Estatica)
auto br0
iface br0 inet static
address 192.168.1.90
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
bridge_ports bond0
bridge_stp off
bridge_fd 0
bridge_maxwait 0
# Interfaz Red Bridge (br0 IP Dinamica)
#auto br0
#iface br0 inet dhcp
# bridge_ports bond0
# bridge_stp off
# bridge_fd 0
# bridge_maxwait 0
# Interfaz Red Bridge (IPv6)
iface br0 inet6 auto
accept_ra 1
Guardamos, salimos del editor y reiniciamos el sistema:
sudo reboot
Tras el reinicio podemos comprobar que el sistema esta debidamente configurado ejecutando individualmente o en conjunto estas instrucciones:
lsmod |grep bonding && \
cat /proc/net/bonding/bond0 && \
dmesg | grep -i bond0 && \
ip -br addr show
Y listo!