Find if initscripts or sysconfig has support for bonding
If you’re unsure whether your distro uses sysconfig or initscripts, or don’t know if it’s new enough, have no fear.
It will respond with a line of text starting with either “initscripts” or “sysconfig,” followed by some numbers. This is the package that provides your network initialization scripts.
Next, to determine if your installation supports bonding, issue the command:
$ grep ifenslave /sbin/ifup
If this returns any matches, then your initscripts or sysconfig has support for bonding.
Channel Bonding Interfaces
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
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.