Один из подчиненных в связке RHEL не работает

Один из подчиненных в связке RHEL не работает

У меня есть виртуальная машина Red Hat Enterprise Linux 6.3 (VMware vsphere).

Я создал связку из двух интерфейсов, и она работает, но только когда eth0активна. Когда я использую ifdown eth0или echo -eth0 > /sys/class/net/bond0/bonding/slavesя теряю сетевое подключение к связке.

Я видел на cat /proc/net/bond0, что оба интерфейса соединены, и когда eth1он активен, он не работает.

Если я eth0снова добавлю, то все равно не работает, потому что eth1 активный. Только если я удалю и снова добавлю eth1в бонды, то работает (делаю eth0активным)

Разумеется, связь находится в режиме отказоустойчивости.

Самое странное, что если я уберу eth1связь и определю ее как простой интерфейс, то все будет работать просто отлично!

Я пробовал перезагружать (много раз), но не смог найти никакой помощи в Интернете. Я даже пробовал удалить интерфейс (со стороны VMware) и добавить новый, но это не помогло. Есть у кого-нибудь идеи?

Некоторые команды могут быть неточными, поскольку я пишу это с телефона, используя память, но я думаю, вы понимаете, что я имел в виду, просто не думайте, что проблема была в опечатке или синтаксической ошибке.

заранее спасибо

решение1

Я решил эту проблему. На стороне Linux все было в порядке.

Проблема была на стороне VMware: настройки безопасности группы портов отклоняли изменения MAC-адресов. Как только я изменил их на принимающие, все заработало.

После установки этого параметра на значение «Отклонить» виртуальная машина не сможет использовать MAC-адрес, отличный от предоставленного vSphere.

При работе с bond MAC остается прежним даже при отказе на другой NIC. Так что в моем случае bond MAC был установлен таким же, как eth0, и после того, как он переключился на eth1, MAC остался прежним, который отличался от «физического» MAC eth1 и поэтому был отклонен vswitch.

Связанный контент