Sto eseguendo RHEL 6.4, kernel-2.6.32-358.el6.i686, su un HP ML 350 G5 con due schede di rete Broadcom NetXtreme II BCM5708 1000Base-T integrate. Il mio obiettivo è quello di incanalare le due interfacce in una mode=1
coppia di failover.
Il mio problema è che, nonostante tutte le prove che il legame sia impostato e accettato, l'estrazione del cavo dalla scheda di rete primaria provoca l'interruzione di tutte le comunicazioni.
ifcfg-etho e ifcfg-eth1
Innanzitutto, ifcfg-eth0:
DEVICE=eth0
HWADDR=00:22:64:F8:EF:60
TYPE=Ethernet
UUID=99ea681d-831b-42a7-81be-02f71d1f7aa0
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
Quindi, ifcfg-eth1:
DEVICE=eth1
HWADDR=00:22:64:F8:EF:62
TYPE=Ethernet
UUID=92d46872-eb4a-4eef-bea5-825e914a5ad6
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ifcfg-bond0
Il file di configurazione del mio legame:
DEVICE=bond0
IPADDR=192.168.11.222
GATEWAY=192.168.11.1
NETMASK=255.255.255.0
DNS1=192.168.11.1
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
BONDING_OPTS="mode=1 miimmon=100"
/etc/modprobe.d/bonding.conf
Ho un /etc/modprobe.d/bonding.conf
file che viene popolato così:
alias bond0 bonding
uscita addr ip
Il legame è scaduto e posso accedere ai servizi pubblici del server tramite l'indirizzo IP del legame:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP qlen 1000
link/ether 00:22:64:f8:ef:60 brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP qlen 1000
link/ether 00:22:64:f8:ef:60 brd ff:ff:ff:ff:ff:ff
4: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
link/ether 00:22:64:f8:ef:60 brd ff:ff:ff:ff:ff:ff
inet 192.168.11.222/24 brd 192.168.11.255 scope global bond0
inet6 fe80::222:64ff:fef8:ef60/64 scope link
valid_lft forever preferred_lft forever
Modulo del kernel di legame
... è caricato:
# cat /proc/modules | grep bond
bonding 111135 0 - Live 0xf9cdc000
/ Sys / class / net
Il /sys/class/net
filesystem mostra cose buone:
cat /sys/class/net/bonding_masters
bond0
cat /sys/class/net/bond0/operstate
up
cat /sys/class/net/bond0/slave_eth0/operstate
up
cat /sys/class/net/bond0/slave_eth1/operstate
up
cat /sys/class/net/bond0/type
1
/ var / log / messages
Nulla di preoccupante appare nel file di registro. In effetti, tutto sembra piuttosto felice.
Jun 15 15:47:28 rhsandbox2 kernel: Ethernet Channel Bonding Driver: v3.6.0 (September 26, 2009)
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: setting mode to active-backup (1).
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: setting mode to active-backup (1).
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: setting mode to active-backup (1).
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: setting mode to active-backup (1).
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: Adding slave eth0.
Jun 15 15:47:28 rhsandbox2 kernel: bnx2 0000:03:00.0: eth0: using MSI
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: making interface eth0 the new active one.
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: first active interface up!
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: enslaving eth0 as an active interface with an up link.
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: Adding slave eth1.
Jun 15 15:47:28 rhsandbox2 kernel: bnx2 0000:05:00.0: eth1: using MSI
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: enslaving eth1 as a backup interface with an up link.
Jun 15 15:47:28 rhsandbox2 kernel: 8021q: adding VLAN 0 to HW filter on device bond0
Jun 15 15:47:28 rhsandbox2 kernel: bnx2 0000:03:00.0: eth0: NIC Copper Link is Up, 1000 Mbps full duplex
Jun 15 15:47:28 rhsandbox2 kernel: bnx2 0000:05:00.0: eth1: NIC Copper Link is Up, 1000 Mbps full duplex
Allora, qual'è il problema?!
Se si strappa il cavo di rete da eth0, tutte le comunicazioni diventano scure. Quale potrebbe essere il problema e quali ulteriori passi devo prendere per risolvere questo problema?
MODIFICARE:
Ulteriore risoluzione dei problemi:
La rete è una singola sottorete, singola VLAN fornita da uno switch ProCurve 1800-8G. Ho aggiunto primary=eth0
al ifcfg-bond0
e servizi di riavvio di rete, ma che non è cambiata qualsiasi comportamento. Ho controllato /sys/class/net/bond0/bonding/primary
sia prima che dopo l'aggiunta primary=eth1
e ha un valore nullo, che non sono sicuro sia buono o cattivo.
La coda /var/log/messages
quando eth1
viene rimosso il cavo non mostra altro che:
Jun 15 16:51:16 rhsandbox2 kernel: bnx2 0000:03:00.0: eth0: NIC Copper Link is Down
Jun 15 16:51:24 rhsandbox2 kernel: bnx2 0000:03:00.0: eth0: NIC Copper Link is Up, 1000 Mbps full duplex
Ho aggiunto use_carrier=0
a ifcfg-bond0
's BONDING_OPTS
sezione consente l'utilizzo di ioctls MII / ethtool. Dopo aver riavviato il servizio di rete, non si sono verificati cambiamenti nei sintomi. L'estrazione del cavo eth0
causa l'interruzione di tutte le comunicazioni di rete. Ancora una volta, nessun errore nel /var/log/messages
salvataggio per la notifica che il collegamento su quella porta è andato giù.
up
. La coda /var/log/messages
al momento della disconnessione di eth0 mostra solo che il collegamento in rame è stato scollegato. Nessun messaggio dal modulo di collegamento.