RedHat 5.4 bonding issue
I'm trying to do some network bonding in RHEL 5.4, and I'm not seeing the results I expect. I have set up a number of servers using mode 1 with no issue, but I need to configure a new server differently.
bond1 is created from eth1 & eth2 bonded together using mode 802.3ad with layer2 lacp bond0 is created from bond1 & eth3 using mode active-backup with bond1 as the primary interface When I bring the network services up, all traffic is passing over eth3 instead of bond1, which is the primary. Below are the modprobe.conf * ifcfg-* files involved. Any help is appreciated. My modprobe.conf: alias eth0 e1000 alias eth1 e1000 alias eth2 e1000 alias eth3 e1000 alias scsi_hostadapter mptbase alias scsi_hostadapter1 mptsas alias scsi_hostadapter2 qla2xxx alias scsi_hostadapter3 usb-storageDEVICE=bond0 alias bond0 bonding alias bond1 bonding ifcfg-bond0: ONBOOT=yes BOOTPROTO=none IPADDR=10.10.10.10 NETMASK=255.255.248.0 GATEWAY=10.10.10.1 TYPE=Ethernet USERCTL=no IPV6INIT=no PEERDNS=yes BONDING_OPTS="mode=active-backup miimon=100 downdelay=200 updelay=200 primary=bond1" ifcfg-bond1: DEVICE=bond1 ONBOOT=yes BOOTPROTO=none MASTER=bond0 SLAVE=yes USERCTL=no BONDING_OPTS="mode=802.3ad xmit_hash_policy=layer2 miimon=100 downdelay=200 updelay=200" PRIMARY=yes ifcfg-eth1: # Intel Corporation 82546EB Gigabit Ethernet Controller (Copper) DEVICE=eth1 HWADDR=00:14:4F:40:68:6D ONBOOT=yes BOOTPROTO=none MASTER=bond1 SLAVE=yes USERCTL=no ifcfg-eth2 # Intel Corporation 82546EB Gigabit Ethernet Controller (Copper) DEVICE=eth2 HWADDR=00:14:4F:40:68:6E ONBOOT=yes BOOTPROTO=none MASTER=bond1 SLAVE=yes USERCTL=no ifcfg-eth3: # Intel Corporation 82546EB Gigabit Ethernet Controller (Copper) DEVICE=eth3 HWADDR=00:14:4F:40:68:6F ONBOOT=yes BOOTPROTO=none MASTER=bond0 SLAVE=yes USERCTL=no PRIMARY=no |
I think you will have to renamed the bond1 to something like zbond1.
I think I have seen this before and I battled with a bonding issue a while back. I can't remember where I read a work-around for this, but try changing the name on the bond. See if that works? |
That fixed it. I renamed bond1 to aggr1 and had to hard code the MAC address for eth1 in ifcfg-aggr1. Now that shows up as the active interface in /proc/net/bonding/bond0:
cat /proc/net/bonding/bond0 Ethernet Channel Bonding Driver: v3.4.0 (October 7, 2008) Bonding Mode: fault-tolerance (active-backup) Primary Slave: aggr1 Currently Active Slave: aggr1 MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 200 Down Delay (ms): 200 Slave Interface: aggr1 MII Status: up Link Failure Count: 0 Permanent HW addr: 00:14:4f:40:68:6d Slave Interface: eth3 MII Status: up Link Failure Count: 0 Permanent HW addr: 00:14:4f:40:68:6f |
I am glad that fixed it, I read the same problem and the re-named worked.
I had a similar problem, however I had a brand new Dell R610 with 4 on board ports & 2 extra ports on a added in Intel Network card. What was strange the eth0 kept pointing to the Intel card that was added on, I yanked the Intel card and the on-board Broadcom 1G ports worked perfectly. Bonding nics appears to be simple in appearance, but it is very challenging working with different hardware or configurations on stand-alone servers. |
All times are GMT -5. The time now is 04:35 PM. |