====== Агрегирование каналов c помощью LACP в Debian ======
Объединение портов в Linux Debian для увеличения пропускной способности канала.
Управление агрегированием осуществляется с помощью утилиты ''ifenslave'', установим её.
|apt-get install ifenslave
|
Модуль “бондинга” входит в состав ядра уже давно. Загрузим его:
|modprobe bonding
|
Если не последовало никакого вывода - значит все хорошо. На всякий случай можно проверить командой ''lsmod | grep bond''
Бондинг может работать в нескольких режимах:
**0 - balance-rr** - (round-robin) - режим циклического выбора активного интерфейса для исходящего трафика (рекомендован для включения по умолчанию, не требует применения специальных коммутаторов);
**1 - active-backup** - активен только один интерфейс, остальные в режиме горячей замены (самый простой режим, работает с любым оборудованием, не требует применения специальных коммутаторов);
**2 - balance-xor** - режим, в котором каждый получатель закрепляется за одним из физических интерфейсов, который выбирается по специальной формуле (не требует применения специальных коммутаторов);
**3 - broadcast** - трафик идет через все интерфейсы одновременно (примитивный и потенциально конфликтный режим);
**4 - 802.3ad** - (dynamic link aggregation) - в группу объединяются одинаковые по скорости и режиму интерфейсы. Все физические интерфейсы используются одновременно в соответствии со спецификацией IEEE 802.3ad. Для реализации этого режима необходима поддержка на уровне драйверов сетевых карт и коммутатор, поддерживающий стандарт IEEE 802.3ad (коммутатор требует отдельной настройки);
**5 - balance-tlb** - (adaptive transmit load balancing) - исходящий трафик распределяется в соответствии с текущей нагрузкой (с учетом скорости) на интерфейсах (для данного режима необходима его поддержка в драйверах сетевых карт);
**6 - balance-alb** - (adaptive load balancing) - включает в себя balance-tlb, плюс балансировку на приём (rlb) для IPv4 трафика и не требует применения специальных коммутаторов (балансировка на приём достигается на уровне протокола ARP, перехватом ARP ответов локальной системы и перезаписью физического адреса на адрес одного из сетевых интерфейсов, в зависимости от загрузки).
Настраиваем интерфейс и настраиваем параметры модуля ''/etc/network/interfaces'':
|iface bond0 inet static
address 10.10.2.36
netmask 255.255.255.0
network 10.10.2.0
gateway 10.10.2.254
|
|up /sbin/ifenslave bond0 eth0 eth1
down /sbin/ifenslave -d bond0 eth0 eth1
|
Редактируем ''/etc/modprobe.d/arch/i386'':
|alias bond0 bonding
options bonding mode=5 miimon=100 downdelay=200 updelay=200
|
Указываем режим настройки сети:
|# update-modules
# ifdown eth0 eth1
# ifup bond0
# /etc/init.d/networking restart
|
Либо, как второй вариант, в ''interfaces'' добавим:
|bond_mode balance-tlb
bond_miimon 100
bond_downdelay 200
bond_updelay 200
slaves eth0 eth1
|
И обновим:
|update-modules
# ifdown eth0 eth1
# ifup bond0
# /etc/init.d/networking restart
|
Проверяем: ''cat /proc/net/bonding/bond0''