LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Networking (https://www.linuxquestions.org/questions/linux-networking-3/)
-   -   Bonding only works when ethernet cards are in promisc (https://www.linuxquestions.org/questions/linux-networking-3/bonding-only-works-when-ethernet-cards-are-in-promisc-630772/)

bllewellyn 03-26-2008 09:02 AM

Bonding only works when ethernet cards are in promisc
 
Hi. I've been having trouble getting two gigabit NICs (r8169) bonded in "active-backup" mode.

After many hours of trial and error, I've noticed that everything works perfectly provided that I put the individual NICs into promisc mode. I discovered this because every time I did a tcpdump on the backup NIC, my pings would start to work.

In a nutshell:

Linux 2.6 kernel (OpenSuSE 10.3)
Both eth0 and eth1 are realtek 8169S
bond0 is setup with "mode=active-backup miimon=100 updelay=500 primary=eth0"

So basically I boot up the machine, bond0 comes up fine and gets an IP from my DD-WRT router. I ping the router, and it works fine. I pull the cable on eth0, and it stops responding. I background the ping, run "ifconfig eth1 promisc" and the pings resume.

Has anyone else ever experienced this, or have any idea what's going on? I can't find anything online that says you need to place the cards into promisc mode to make bonding happen. I did find many references online to people having problems using 8169S cards for bonding.

Thanks!

--Brad

snowtigger 03-27-2008 06:33 PM

Taken from kernel-src/Documentation/networking/bonding.txt
Quote:

For the active-backup, balance-tlb and balance-alb modes, the
promiscuous mode setting is propagated only to the active slave.
Are you sure the bond is recognizing that the connection had been lost from the active device?

:)

bllewellyn 03-29-2008 01:34 PM

Got it working...
 
Looks like the problem was with the r8169 driver, and had nothing to do with my bonding configuration. I detached eth1 from bond0, assigned a new MAC to the card and tried to ping my router. 100% loss. As soon as I put it into promiscuous mode, it started working.

So I guess the old driver didn't set the card up properly with the new MAC. I downloaded and compiled kernel 2.6.24 (was using 2.6.22), rebooted, and it worked perfectly.

I know there's at least one guy out there on the net who scrapped his cards and bought new ones...hopefully someone will come across this post and it will save them time.

--Brad

snowtigger 03-30-2008 04:07 PM

Good to hear you got it working

;)


All times are GMT -5. The time now is 05:46 AM.