Network Bonding Helper

Updated -

Red Hat Enterprise Linux allows administrators to bind NICs together into a single channel using the bonding kernel module and a special network interface, called a bonding(or channel bonding) interface. Bonding enables two or more network interfaces to act as one, simultaneously increasing the bandwidth and providing redundancy.

This app is designed to help you configure bonding. It has two modes: guided mode and manual mode . If you just want to input minimum information and use default or recommended parameters whenever possible, simply use the guided mode (the default mode), which will present you a few steps with clear instructions to help you choose or input a proper parameter. If you have a very good understanding of network bonding and want to control as many options as possible, the manual mode will be your choice. It allows you to adjust all parameters.

Once you click the "Generate" button, the app will generate a script for you to configure bonding based on the information you provided. Just run it on your server, and after it finishes, your "bonded" interface will be ready to use.

As an alternative, you can download the generated configuration files, copy them to you server, and then manually perform a few steps to configure and enable your "bonded" interface. If you have a large number of "bonded" interfaces to enable, you can parameterize the configuration files and reuse them.

Was this helpful?

We appreciate your feedback. Leave a comment if you would like to provide more detail.
It looks like we have some work to do. Leave a comment to let us know how we could improve.

Get notified when this content is updated



Subscriber exclusive content

An active Red Hat subscription is required to participate.

Log In

Awesome !!!
Very useful .


bonding new

Receiving "Error on page" when I click the "Generate" button

Hi Alfred,

Can you clarify the problem you saw? We tested it several times, but did not see "Error on page". What are your steps and inputs before seeing the problem?
We appreciate your reply.


I don't see an error but it doesn't work on Internet Explorer 11. When I click on Download (for both options), I don't get any response. But I was able to download the same using Firefox.

Thanks. We will test this in Internet Explorers. Please use Firefox as the workaround at this moment.

Unable to choose bonding mode

The bonding mode and some other options are only choosable in the manual mode. You can click the button in the top right corner to switch to manual mode.

Nothing happens when I click Generate.
Using default values for everything but DHCP, for RHEL6.

Doesnt seem to work (hitting the generate button) under IE9 + Compatability mode. Firefox 23.0.1 works fine.

Hi all,

This app is experience a JS loading issue that may be related to a thirdparty library. The symptom is that the app page may be a blank page, or there is no responding when you click a button. Just like some reports the generate button does nothing.

We are now actively working to fix this issue and it's definitely our top priority at this moment. A workaround you can use is to refresh your browser to force the JS files to be loaded again when you see the problem.

Thanks a lot for your patience.

Dong Zhao

I'm running IE9 on win7pro, and it doesn't work. Refreshing page doesn't help.
It does work in Firefox 30.0.

Please use Firefox or Google Chrome for now.

Hello Doesnt work for me on Firefox ... btw, can this be automated to automatically detect interface using ( tcpdump) and create bonding for them ? and distribute as rpm pacakge.

Did you refresh the page? a known issue
If a refresh does not work, then this may be some other issue. Please share more details of the problem and we will investigate it.

Thanks, Worked now.. Good if this can be automated to detect interface automatically and deciding which interfaces to bond, rather then providing it manually .. this is just a feedback

Hi Dhaval, this is definitely a feedback. I've opened an internal ticket to track it.

BTW, we can easily enable the script to detect MAC address for interfaces, IP address, gateway etc, but how to automatically determine which interface to bond? Do you have a logic? Or you just mean detect MAC address, IP address, gateway?

Thanks a lot.

Hello, no MAC is not required, you run tcpdump on all interface, and find out which 2 interface are in same subnet and decide to create bond for them .. ofcourse you cannot control bonding mode.

Thanks for the information. We may contact you when implementing this feature. BTW, I forgot to mention MAC is required for RHEL 5.

For RHEL 6, will there be a detection based on MAC? Please do provide the configuration script.

Hi Pravin, My apologies for not getting back to you sooner, but can you explain a little bit on your expectation here? Is it related t something discussed in the solution

Thanks, Dong

Hi Dong,

This has already been implemented as a python script which you can find at
It basically does peer detection by enabling all interfaces and broadcasting specially crafted datagrams from each interface.
Then it checks which interfaces the packages actually reach by sniffing on the interfaces.
I have tested the script on numerous platforms and it works except for a few minor issues.
It would be very valuable if this functionality is somehow implemented in RHEL.



The "generate" button does not do anything.

Hi Andy,

a known issue
Can you try again by refreshing the page? If a refresh does not work, then this may be some other issue. Please share more details of the problem and we will investigate it.

Hi all,

This app is now compatible with Microsoft Internet Explorer 9 and above. Please try it.
That said, we recommend you use Mozilla Firefox or Google Chrome as your browser to get all cool features.

Dong Zhao

There is some problem with file, as it has 12 bytes size and my unzip tool does not recognize the file as a zip archive.

Hi Marek,

We tested the app in various browsers(e.g. Firefox, Internet Explorer) on Linux and Window systems just now, and it worked well for us. Can you try again and make sure the file is fully downloaded? The file should be about 600 bytes.

If the problem persists, please let us know what system and browser you are using, and their versions.

Dong Zhao

Hi Dong

I tried it again and the result was the same. I used FF 31 on Windows 8.1. I've also checked it on IE11 and the app (Network Bonding Helper) does not even start by which I mean I can only see white page.

BTW I wonder why you use flash to present "Save as" window? Why not make it standard way ?



Marek, thanks for your patience.

Are you using the guided mode or manual mode? And what are your steps/options leading to this issue? Are you using Windows 8.1 32bit or 64bit?

Do you see the flash "Save as" window in IE11? We mainly use the blob API for file downloading, and only use flash where blob does not work, e.g. IE9.

Dong Zhao

I did a test in both modes with the same result. I use 64bit Win 8.1 version.
For the save as window: I only have it in FF, as I wrote before with Windows I can only see white screen. No single object I can see with FF. I went thru some other apps with IE11 and for all there is only a white screen.

Back to FF: I noticed you use flash, because I use flash block extension so it showed me the object blocked.





Finally found this - thanks for making this

in this example it is not provided VLAN configuration.

The download link is not working.

Hi Robert,
Thank you for reporting this issue.
But I can not reproduce it.
Can you provide the reproduce steps as detailed as possible?

Please let me know how to fetch those configuration files, Totally useful for LACP.

Hi Pravin,

Please follow the steps in the app and downloadable files will be shown on the last page. Let me know more details if you have other questions.

Thanks, Dong

Great lab! You may want to revisit the back-end programming for the lab to either make NetworkManager management optional or the default for RHEL 7. Opting out of NetworkManager management is becoming risky in RHEL 7 due to boot-time dependency ordering of what gets brought up first. Additionally, it's just the way the Red Hat is moving.

Hi Kodiak, Thanks for the suggestion. We will do some research and update you of our progress.

Thanks, Dong

Hi Kodiak, We've updated the app based on your feedback. Can you check it?

Thanks, Dong

Thanks Dong! I just ran through it and the resulting output files look great! Hopefully this helps keep NetworkManager the default for folks using bonding.

For me it's complaining gw IP is not in same subnet. Used several different IP's ie. bond0 netmask GW I have Firefox ESR.

Actual error text. "Invalid IP address or not same network segment with bonding IP"

Unable to go beyond the option where IP addresses are mentioned. Somehow it is not validating the IP address of the Gateway IP. There is a javascript error :

Error: IpSubnetCalculator is not defined validateTwoIPSameNetwork@ validateIPConfigAll@ a.goNext@

I have tried with multiple browsers.

Hi Hemant,

Thank you very much for reporting the issue.

It has been fixed.

Can you try it again?



This is broken in 8.2.

echo "Network service will be restarted." service network restart ---------> will not work. cat /proc/net/bonding/bond0

It can be fixed manually with

systemctl restart NetworkManager.service

Hi Agustin,

Thank you for reaching out use.

We will investigate the issue and fix it soon.


Hi Agustin,

I failed to reproduce the issue. The script generated by the app works for me in RHEL 8.2.

Would you like to file a bug here and provide the script you used?