This is an old revision of the document!
Table of Contents
CentOS Bonding Interfaces
Jun 2017
Introduction
For network redundancy, we can bond interface pairs on the G6/G7 servers. For this example I am using CentOS 6.x, so luckily still have the ethx naming convention.
Two bond a pair of interfaces requires three files (four if you want to do some multicast routing). first we will look at bonding a pair of interfaces for management, then we can look at bonding a pair of interfaces for ingest/egress.
Management Interface Bonding
For bonding the management interfaces, we will require three files. I am making the assumption that we are using the first two interfaces (eth0 and eth1) for management, and that this is our first bond on this device (so bond0):
ifcfg-eth0 ifcfg-eth1 ifcfg-bond0
For this to work, you will need the UUID of each interface, if you don't have this, look here for instructions on how to generate the UUIDs.
ifcfg-eth0
DEVICE=eth0 HWADDR=00:1E:67:EB:6D:F2 TYPE=Ethernet UUID=cceda895-dd2b-4096-9d9c-5985dd0872d7 ONBOOT=yes MASTER=bond0 SLAVE=yes
Notice that there is no addressing information in the interface configuration file(s)
ifcfg-eth1
DEVICE=eth1 HWADDR=00:1E:67:EB:6D:F3 TYPE=Ethernet UUID=7ecc849f-eefb-43a0-9796-99d368bbb28a ONBOOT=yes MASTER=bond0 SLAVE=yes
ifcfg-bond0
InDEVICE=bond0 ONBOOT=yes BOOTPROTO=static USERCTL=no BONDING_OPTS="mode=1 miimon=100" IPADDR=192.168.27.100 NETMASK=255.255.255.0 GATEWAY=192.168.27.254 DNS1=172.16.178.100 DNS2=8.8.8.8
So ifcfg-eth0 and ifcfg-eth1 don't contain any address information, but they both contain the entry MASTER=bond0 to tie them to a particular bond file.
ifcfg-bond0 contains all of the addressing information for the two interfaces that are bonded (ifcfg-eth0 and ifcfg-eth1)
Reboot the server, and you should be able to ping the management address (192.168.27.100 in this case) and if you only unplug one interface at a time, the pings should continue (you might miss one or two pings during transition).
miimon specifies the MII link monitoring frequency in milliseconds. This determines how often the link state of each slave is inspected for link failures. A value of zero disables MII link monitoring. A value of 100 is a good starting point.