United States (change)
Shortcuts: Downloads Fedora Red Hat Network
Account Links: Cart Your Account Logout
Red Hat Enterprise Linux allows administrators to bind multiple network interfaces together into a single channel using the bonding kernel module and a special network interface called a channel bonding interface. Channel bonding enables two or more network interfaces to act as one, simultaneously, increasing the bandwidth and providing redundancy.
To create a channel bonding interface, create a file in the /etc/sysconfig/network-scripts/ directory called ifcfg-bond<N>, replacing <N> with the number for the interface, such as 0.
The contents of the file can be identical to whatever type of interface that is getting bonded, such as an Ethernet interface. The only difference is that the DEVICE= directive must be bond<N>, replacing <N> with the number for the interface.
The following is a sample channel bonding configuration file:
DEVICE=bond0 BOOTPROTO=none ONBOOT=yes NETWORK=10.0.1.0 NETMASK=255.255.255.0 IPADDR=10.0.1.27 USERCTL=no
After the channel bonding interfaces are created, the network interfaces to be bound together must be configured by adding the MASTER= and SLAVE= directives to their configuration files. The configuration files for each of the channel bonded interfaces can be nearly identical.
For example, if channel bonding two Ethernet interfaces, both eth0 and eth1 may look like the following example:
DEVICE=eth<N> BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes USERCTL=no
In this example, replace <N> with the numerical value for the interface.
For a channel bonding interface to be valid, the kernel module must be loaded. The procedure for loading the module is slightly different on Red Enterprise Linux Version 3 and Red Hat Enterprise Linux Version 4.
To ensure that the module is loaded when the channel bonding interface is brought up, add the following line to /etc/modules.conf:
alias bond<N> bonding
Replace <N> with the number of the interface, such as 0. For bonded aliases other than bond0 a line is also needed such as:
options bond<N> -o bonding<N>
For each configured channel bonding interface, there must be a corresponding entry in /etc/modules.conf.
Once /etc/modules.conf is configured and the channel bonding interface and network interfaces are configured, the ifup command can be used to bring up the channel bonding interface or you can simply restart your networking services with service network restart.
Additional Information: Important aspects of the channel bonding interface are controlled through the kernel module.