Je suis en train de courir Rhel 6.4, Kernel-2.6.32-358.EL6.I686, sur un HP ML 350 G5 avec deux niques Broadcom Netxtreme II BCM5708 1000BASE-T. Mon objectif est de canaliser les deux interfaces dans un mode=1
paire de basculement.
Mon problème est que malgré toutes les preuves que la liaison est configurée et acceptée, tirant le câble de la primaire NIC amène que toutes les communications cessent.
Premièrement, 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
Ensuite, 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
Fichier de configuration de mon lien:
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"
J'ai un /etc/modprobe.d/bonding.conf
fichier qui est peuplé donc:
alias bond0 bonding
Le lien est opérationnel et je peux accéder aux services publics du serveur via l'adresse IP de l'obligation:
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
...est chargé:
# cat /proc/modules | grep bond
bonding 111135 0 - Live 0xf9cdc000
Les /sys/class/net
Le système de fichiers montre de bonnes choses:
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
Rien d'inquiétude n'apparaît dans le fichier journal. En fait, tout semble plutôt heureux.
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
Yanking Le câble réseau d'ETH0 provoque la sombre de toutes les communications. Quel pourrait être le problème et quelles mesures supplémentaires dois-je prendre pour résoudre ce problème?
Le réseau est un seul sous-réseau, simple VLAN fourni par un commutateur Procurve 1800-8g. J'ai ajouté primary=eth0
à ifcfg-bond0
et redémarrer les services de réseautage, mais cela n'a changé aucun comportement. J'ai vérifié /sys/class/net/bond0/bonding/primary
Les deux avant et après l'ajout primary=eth1
Et il a une valeur nulle, ce que je ne suis pas sûr est bon ou mauvais.
Voie /var/log/messages
lorsque eth1
Le câble a-t-il été supprimé ne montre rien de plus que:
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
J'ai ajouté use_carrier=0
à ifcfg-bond0
's BONDING_OPTS
Section Pour activer l'utilisation de MII/EthTool IOCTLS. Après avoir redémarré le service réseau, il n'y avait pas de changement de symptômes. Tirant le câble de eth0
provoque la cessation de toutes les communications de réseau. Encore une fois, pas d'erreurs dans /var/log/messages
Enregistrer pour la notification selon laquelle le lien sur ce port est tombé en panne.
Et quand ça échoue ...
Voyez-vous ce qu'il y a dans ifcfg-bond0
? Non, vous comprenez Qu'est-ce que c'est en ifcfg-bond0
?
[.____] quoi dans le monde des pingouins glissants est miimmon=100
?
[.____] Oh je suis désolé, tu voulais dire miimon=100
?
Ouais, je pense que vous vouliez dire miimon
et pas miimmon
.
En outre, un grand cadeau est que lorsque vous redémarrez votre service réseau, vous voyez ceci:
service network restart
Shutting down interface bond0: [ OK ]
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface bond0: ./network-functions: line 446: /sys/class/net/bond0/bonding/miimmon: No such file or directory
./network-functions: line 446: /sys/class/net/bond0/bonding/miimmon: No such file or directory
[ OK ]
Portez une attention particulière à tout ce que vous tapez et lorsque vous faites votre faute de frappe inévitable, faites une attention particulière à chaque sortie que vous voyez.
Vous êtes une mauvaise personne et vous devriez vous sentir mal.
Essayez de spécifier l'un des NICS comme l'esclave principal.
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 primary=eth0"
Plus de documentation à partir de RH :
primaire = Spécifie le nom de l'interface, tel que Eth0, du périphérique principal. Le périphérique principal est la première des interfaces de liaison à utiliser et n'est pas abandonnée à moins qu'elle échoue. Ce paramètre est particulièrement utile lorsqu'un NIC dans l'interface de liaison est plus rapide et, par conséquent, capable de gérer une charge plus grande. Ce paramètre n'est valide que lorsque l'interface de liaison est en mode de sauvegarde active. Reportez-vous à /usR/Share/doc/kernel-Doc-/documentation/networking/bonding.txt Pour plus d'informations.
Ajoutez l'option de liaison suivante Downdelay = XXXX dans MILISEC qui échoue à une ETH après avoir été détectée comme ayant échoué et définir l'esclave principal sur le reste. Si ce paramètre n'est pas dans la liaison_opt, la liaison détecte l'échec (parce que vous incluez Miimom = aaaa), mais il n'éteint jamais l'ETH0. Vous pouvez voir cela se produire en examinant le fichier/proc/net/liaison/bondx.
Quoi qu'il en soit, avec Rhel 6.3 (presque la même version que la même version), nous avons plusieurs autres problèmes liés au collage associé à l'échec du dos, Dupliqué Mac Addr vus de l'interrupteur.
bonne chance.