Подробный гайд по агрегации каналов (bonding) в Debian 13 - Часть 3

Практический гайд по агрегации каналов (bonding) в Debian 13. Настройка режимов LACP и active-backup через ifupdown, nmcli и systemd-networkd.

2026.09.29                  


Подробный гайд по агрегации каналов (bonding) в Debian 13 - Часть 3Подробный гайд по агрегации каналов (bonding) в Debian 13 - Часть 3

13. Настройка через NetworkManager

Если у вас настольная система или сервер управляется через NetworkManager, можно настроить bond через nmcli.

Проверьте статус:

systemctl status NetworkManager

Пример создания LACP bond через nmcli

Создаём bond:

nmcli connection add type bond \
  con-name bond0 \
  ifname bond0 \
  bond.options "mode=802.3ad,miimon=100,lacp_rate=fast,xmit_hash_policy=layer3+4" \
  ipv4.addresses 192.168.10.10/24 \
  ipv4.gateway 192.168.10.1 \
  ipv4.method manual \
  connection.autoconnect yes


Создаём подчинённые интерфейсы:

nmcli connection add type bond-slave \
  con-name bond0-slave1 \
  ifname enp3s0 \
  master bond0 \
  connection.autoconnect yes

nmcli connection add type bond-slave \
  con-name bond0-slave2 \
  ifname enp4s0 \
  master bond0 \
  connection.autoconnect yes

Активируем:

nmcli connection up bond0-slave1
nmcli connection up bond0-slave2
nmcli connection up bond0

Проверка:

nmcli connection show
nmcli device status
cat /proc/net/bonding/bond0

14. Настройка через systemd-networkd

Альтернативный способ — systemd-networkd.

Используйте его только если он действительно является основным сетевым менеджером. Не рекомендуется одновременно использовать NetworkManager, ifupdown и systemd-networkd для одних и тех же интерфейсов.

14.1. Создайте файл устройства

nano /etc/systemd/network/10-bond0.netdev

Содержимое:

[NetDev]
Name=bond0
Kind=bond

[Bond]
Mode=802.3ad
MIIMonitorSec=100ms
LACPTransmitRate=fast
TransmitHashPolicy=layer3+4
MinLinks=1

14.2. Настройте физические интерфейсы

Файл для первого интерфейса:

nano /etc/systemd/network/10-enp3s0.network

Содержимое:

[Match]
Name=enp3s0

[Network]
Bond=bond0

Файл для второго интерфейса:

nano /etc/systemd/network/10-enp4s0.network

Содержимое:

[Match]
Name=enp4s0

[Network]
Bond=bond0

14.3. Настройте IP для bond0

nano /etc/systemd/network/20-bond0.network

Содержимое:

[Match]
Name=bond0

[Network]
Address=192.168.10.10/24
Gateway=192.168.10.1

14.4. Включите и перезапустите сервис

systemctl enable systemd-networkd
systemctl restart systemd-networkd

Проверка:

networkctl status bond0
cat /proc/net/bonding/bond0

15. Проверка состояния bonding

15.1. Основной файл состояния

cat /proc/net/bonding/bond0

Пример полезных строк:

Bonding Mode: active-backup fault tolerance
MII Status: up
Slave Interface: enp3s0
MII Status: up
Slave Interface: enp4s0
MII Status: up

Для LACP:

Bonding Mode: IEEE 802.3ad Dynamic link aggregation

15.2. Посмотреть параметры через sysfs

cat /sys/class/net/bond0/bonding/mode
cat /sys/class/net/bond0/bonding/miimon
cat /sys/class/net/bond0/bonding/xmit_hash_policy
cat /sys/class/net/bond0/bonding/lacp_rate

15.3. Проверить сетевой интерфейс

ip -br addr show bond0
ip -s link show dev bond0
ip -d link show dev bond0

15.4. Посмотреть состояние физических интерфейсов

ethtool enp3s0
ethtool enp4s0

15.5. Посмотреть журналы

journalctl -u networking -b

или:

journalctl -b -p warning | grep -Ei 'bond|lacp|network|enp'

16. Проверка отказоустойчивости

16.1. Посмотреть активный интерфейс

Для active-backup:

cat /sys/class/net/bond0/bonding/active_slave

16.2. Временно переключить активный интерфейс

echo enp4s0 > /sys/class/net/bond0/bonding/active_slave

Проверка:

cat /sys/class/net/bond0/bonding/active_slave

16.3. Проверить поведение при падении линка

Можно программно выключить один интерфейс:

ip link set enp3s0 down

Затем проверить:

cat /proc/net/bonding/bond0

После теста поднять обратно:

ip link set enp3s0 up

Если используется ifupdown, корректнее возвращать интерфейс через:

ifup enp3s0

Мы делимся этой технической информацией, чтобы помочь вам в решении задач — используйте её с пониманием. Статья носит рекомендательный характер, поэтому, пожалуйста, применяйте описанные методы осмотрительно.


Статью подготовил: Аверко Денис Сергеевич @Nymexis г. Омск (специалист по ЗИ)

Комментарии

Загрузка...
Если комментарии не загружаются, можете попробовать отключить блокировщик рекламы для этого сайта