Channel Bonding Interfaces
Community 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
, replacing <N>
<N>
with the number for the interface, such as 0
.
The contents of the file can be identical to whatever type of interface is getting bonded, such as an Ethernet interface. The only difference is that the DEVICE=
directive must be bond
, replacing <N>
<N>
with the number for the interface.
The following is a sample channel bonding configuration file, ifcfg-bond0
:
DEVICE=bond0
IPADDR=192.168.1.1
NETMASK=255.255.255.0
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
BONDING_OPTS="<bonding parameters separated by spaces>
"
After the channel bonding interface is 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 two Ethernet interfaces are being channel bonded, 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. To ensure that the module is loaded when the channel bonding interface is brought up, add the following line to /etc/modprobe.conf
:
alias bond<N>
bonding
Replace <N>
with the number of the interface, such as 0
.
Do not place parameters for the bonding kernel module in the /etc/modprobe.conf
file. Instead, specify them as a space-separated list in the BONDING_OPTS="
directive in the <bonding parameters>
"ifcfg-bond
interface file.
<N>
The only exception is the debug
parameter, which cannot be used on a per-device basis, and which should therefore be specified in /etc/modprobe.conf
as follows:
options bonding debug=1
For further instructions and advice on configuring the bonding module, as well as to view the list of bonding parameters, refer to "The Channel Bonding Module".