Network Bonding (aka trunking, link aggregation) David Liana http://www.thelinuxgeek.org dliana@frontiernet.net
What is network bonding? From Wikipedia: Channel bonding (also known as "Ethernet bonding") is a computer networking arrangement in which two or more network interfaces on a host computer are combined for redundancy or increased throughput.
Driver – “bonding” Several different modes supported Linux Support Driver – “bonding” Several different modes supported
Modes balance-rr or 0 active-backup or 1 balance-xor or 2 broadcast or 3 802.3ad or 4 balance-tlb or 5 balance-alb or 6
Pre-Reqs 2 or more network cards of the same speed Switch that supports bonding (aka Link aggregation or 802.3ad). Turn off/uninstall network manager
Steps Load module Edit configurations for interfaces Add config for bonded interface Restart networking
Example setup for RHEL / Scientific Linux / CentOS / Fedora
alias bond0 bonding options bond0 mode=4 miimon=100 /etc/modprobe.d/bonding.conf alias bond0 bonding options bond0 mode=4 miimon=100
/etc/sysconfig/network-scripts/ifcfg-p20p1 DEVICE=p20p1 ONBOOT=yes USERCTL=no BOOTPROTO=none HWADDR=00:24:1D:23:6F:28 SLAVE=yes MASTER=bond0
/etc/sysconfig/network-scripts/ifcfg-p21p1 DEVICE=p21p1 ONBOOT=yes USERCTL=no BOOTPROTO=none HWADDR=00:1F:D0:81:56:22 SLAVE=yes MASTER=bond0
/etc/sysconfig/network-scripts/ifcfg-bond0 DEVICE=bond0 ONBOOT=yes NM_CONTROLLED=no USERCTL=no BOOTPROTO=none IPADDR=192.168.1.3 NETWORK=192.168.1.0 BROADCAST=192.168.1.255 GATEWAY=192.168.1.1 DNS1=192.168.1.7 DNS2=209.18.47.61
/etc/sysconfig/network NETWORKING=yes HOSTNAME=kirk.enterprise.local GATEWAY=192.168.1.1 GATEWAYDEV=bond0 NETWORKDELAY=5 NETWORKWAIT=yes
Load Modules and Restart Network $ modprobe bonding $ /etc/init.d/network restart $ chkconfig –levels=345 network on
Questions?