====== Агрегирование каналов 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''