RHEL bond 中的奴隸之一無法工作

RHEL bond 中的奴隸之一無法工作

我有一個紅帽企業 Linux 6.3 虛擬機器 (VMware vsphere)。

我從兩個介面建立了一個綁定,它可以工作,但僅在eth0處於活動狀態時有效。當我使用ifdown eth0echo -eth0 > /sys/class/net/bond0/bonding/slaves失去與綁定的網路連線時。

我可以在 cat 上看到/proc/net/bond0兩個介面處於綁定狀態,並且當eth1處於活動狀態時它不起作用。

如果我eth0再次添加回來,它仍然不起作用,因為 eth1 是活動的。只有當我刪除並重新添加eth1到它才有效的債券時(使其處於eth0活動狀態)

當然,該債券處於容錯模式。

奇怪的是,如果我eth1從綁定中刪除並將其定義為一個簡單的接口,它就可以正常工作!

我嘗試重新啟動(多次),但在網路上找不到任何幫助。我什至嘗試刪除該介面(從 VMware 端)並添加一個新介面,但這並沒有幫助。有人有主意嗎?

有些指令可能不準確,因為我是用手機記憶寫的,但我想你知道我的意思,只是不要暗示問題是拼字錯誤或文法錯誤。

先致謝

答案1

我解決了。 Linux 端一切正常。

問題出在VMware方面:連接埠群組的安全設定是拒絕MAC位址更改,一旦我將其更改為接受它就可以了。

此設定一旦設定為拒絕,將不允許虛擬機器使用與 vSphere 提供的 MAC 位址不同的 MAC 位址。

使用 bond 時,即使其他 NIC 發生故障,MAC 也保持不變。因此,在我的例子中,綁定 MAC 設定為 eth0,一旦故障轉移到 eth1,MAC 保持不變 - 這與 eth1 的「實體」MAC 不同,因此被 vswitch 拒絕。

相關內容