воскресенье, 18 марта 2012 г.

Объединение сетевых интерфейсов под Linux


Превращение двух 100 мбит/c сетевых карт в одну виртуальную, с пропускной способностью 200 мбит/c. (Ссылка)


Документация: Documentation/networking/bonding.txt в дереве исходных текстов
ядра и "modinfo bonding".

Кратко:


Подгружаем модуль ядра "bonding", в /etc/modules.conf указываем alias bond0 bonding

При желании устанавливаем опции для доп. настройки модуля, например: options bond0 mode=2, где mode=
        0 - balance-rr (Round-robin выбор интерфейса)
        1 - active-backup (работает только один интерфейс, остальные в режиме горячей замены)
        2 - balance-xor - для всех пересылок на MAC закрепляется один из интерфейсов
        3 - broadcast - трафик идет через оба интерфейса одновременно
        4 - 802.3ad - для коммутаторов с поддержкой IEEE 802.3ad Dynamic link aggregation
        5 - balance-tlb, 6 - balance-alb

# /sbin/ifconfig bond0 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255 up

# /sbin/ifenslave bond0 eth0
# /sbin/ifenslave bond0 eth1

Или для дистрибутивов в которых используется пакет initscripts (http://rhlinux.redhat.com/initscripts/)


/etc/sysconfig/network-scripts/ifcfg-bond0

     DEVICE=bond0
     BOOTPROTO=static
     BROADCAST=192.168.63.255
     IPADDR=192.168.1.1
     NETMASK=255.255.255.0
     NETWORK=192.168.0.0
     ONBOOT=yes

   /etc/sysconfig/network-scripts/ifcfg-eth0

     DEVICE=eth0
     BOOTPROTO=static
     ONBOOT=yes
     MASTER=bond0
     SLAVE=yes
     USERCTL=no

   /etc/sysconfig/network-scripts/ifcfg-eth1

     DEVICE=eth1
     BOOTPROTO=static
     ONBOOT=yes
     MASTER=bond0
     SLAVE=yes
     USERCTL=no




Комментариев нет:

Отправить комментарий