Когда одного сетевого интерфейса мало - приходит время объединять их в «команду». Это называется агрегация каналов, и один из самых популярных способов реализовать ее - протокол LACP (Link Aggregation Control Protocol).
LACP - часть стандарта IEEE 802.3ad. Он позволяет объединить несколько физических интерфейсов в один логический (LAG - Link Aggregation Group), который операционная система и приложения видят как один.
🌟 Зачем это нужно?
📍 Повышение пропускной способности;
📍 Повышение отказоустойчивости (если один порт отваливается - остальные продолжают работать);
📍 Балансировка нагрузки между портами.
🌟 Как это работает
📍 LACP автоматически обнаруживает, какие интерфейсы можно объединить
📍 Обе стороны (свитч и хост) договариваются, какие порты войдут в LAG
📍 Если кабель выпал или порт упал - он просто исключается из группы, ничего не рушится
▪️ Настройка в Linux. Пример для двух интерфейсов ens33 и ens34:
1️⃣ Устанавливаем ifenslave (если нужно):
sudo apt install ifenslave
2️⃣ Настраиваем bonding-мод LACP (mode 4): В
/etc/network/interfaces или аналогичном конфиге:
auto bond0
iface bond0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
bond-slaves ens33 ens34
bond-mode 802.3ad
bond-miimon 100
bond-lacp-rate fast
bond-xmit-hash-policy layer3+4
3️⃣ Важно! На свитче тоже нужно включить LACP на соответствующих портах (обычно называются channel-group или LAG в интерфейсе).
⭐️ Несколько нюансов:
📍 LACP работает только при поддержке с обеих сторон (сервер + свитч)
📍 LAG не удваивает скорость для одного TCP-соединения, но позволяет нескольким соединениям распределяться по разным каналам
📍 Лучше всего работает с хешированием по Layer3+4 (IP + порт)
#network #LACP
🧑💻 NetworkAdmin