Create NIC Channel Bonding in RedHat/CentOS/Fedora

If You Appreciate What We Do Here On TecMint, You Should Consider:

  1. Stay Connected to: Twitter | Facebook | Google Plus
  2. Subscribe to our email updates: Sign Up Now
  3. Get your own self-hosted blog with a Free Domain at ($3.45/month).
  4. Become a Supporter - Make a contribution via PayPal
  5. Support us by purchasing our premium books in PDF format.
  6. Support us by taking our online Linux courses

We are thankful for your never ending support.

Narad Shrestha

He has over 10 years of rich IT experience which includes various Linux Distros, FOSS and Networking. Narad always believes sharing IT knowledge with others and adopts new technology with ease.

Your name can also be listed here. Got a tip? Submit it here to become an TecMint author.

RedHat RHCE and RHCSA Certification Book
Linux Foundation LFCS and LFCE Certification Preparation Guide

You may also like...

29 Responses

  1. Chris Burgess says:

    Network Manager in my experience needs to be off.

    Flag is NM_CONTROLLED=”no” on each interface

    Another useful flag in Bonding is selecting which interface is going to be the primary. This is useful if you have two switches and you want to have preference which switch the traffic goes over.

    BONDING_OPTS=”mode=1 miimon=100 primary=em1″

    primary=em1 means that it will always have em1 interface (Sorry Dell Server, EM1 is also considered eth0) if you lose this link which I have tested by pulling the cable. You lose two pings and em2 or eth1 whichever you are using takes over the load. When you plug the cable back in it will drop 2 pings and switch back to EM1 or eth0

  2. ED Fochler says:

    networkmanager is running, and I create my bond at boot in /etc/rc.local
    If the secondary slave is marked for DHCP, it will spontaneously leave your bond0 interface. Check the mac addresses of your slaves with ifconfig, if they don’t match, there’s a problem.

    Killing networkmanager may also work. Seriously RedHat, straighten out your networking stack.

  3. chris says:


    That’s Excellent.
    But for above NIC bonding could you please put the details of eth0 and eth1 before bonding.

    Novice to the Linux world and ether channel bonding!!


  4. Surendra says:

    Hi All,

    Can anyone tell me how to manually test the failover without bringing down the master interfaces

    • Matt says:

      ifenslave -c bond0 eth1

      this will change the active slave to eth1 without bringing down the master. if eth1 is of couse configured as the second slave.

      or to manually failover

      sudo ifconfig eth0 down
      the bond will failover to eth1
      sudo ifconfig eth0 up

      sudo ifconfig eth1 down
      the bond will fail back over to eth0
      sudo ifconfig eth1 up

  5. Bob Dobalina says:

    Sorry but shouldnt the entry for eth1 read “/etc/sysconfig/network-scripts/ifcfg-eth1”? (above it reads “eth0”). Could confuse some people. ;)

  6. Parmod says:

    Please also mention mode of bonding.

  7. joe says:

    I had the hwaddr commented out for each interface in the bond. Once I removed the comment and updated the driver it worked. Lesson learned.

  8. Joe says:

    I am running Oracle Linux 5.7 (Red Hat based) and have configured bonding. I can activate the bond manually once the host is up but the bonded interfaces do not exist on reboot and the bond fails. Any ideas?

  9. Dave Hostetler says:

    I’ve set up channel bonding following these steps on CentOS 6.3 bonding eth1 and eth2. The device seems to bond okay, but once bonded, the network traffic just stops. No ping, no nothing. Any clues?

    These are both ports on a Syba dual port gigabit adapter (Realtek chipset).

  10. Bob Styma says:

    Excellent how to. However, the ifcfg-bond0 needs the line defining the default gateway.
    as in:
    Otherwise you will not be able to get off that subnet.

Got something to say? Join the discussion.

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.