在一臺DELL R710上安裝了esxi5.0,并部署了兩臺esxi5.0的VM,名為vesxA,vesxB.
并在兩臺vesx上分別創(chuàng)建了vmkernel,連接到同一vSwitch,完成后,發(fā)現(xiàn)兩臺vesx間不能用vmkernel通信。
后請教有經(jīng)驗的同事,說是虛中虛需要在vSwitch中開啟 混雜模式,經(jīng)測試問題解決。
但是為什么呢?
請教高人得出答案:
由于vSwitch中的MAC TABLE記錄只能從虛擬機的.vmx文件中讀取。而.vmx中記錄的MAC是虛擬機的網(wǎng)卡的MAC,當(dāng)我們新建了一個vmkernel port后,生成的MAC并沒有寫入.vmx。所以當(dāng)vSwitch 收到關(guān)于vmkernel port后,發(fā)現(xiàn)沒有相關(guān)MAC記錄,就會把包丟棄。
有人會問,交換機不是有Flooding功能么?
估計是由于vSwitch節(jié)省資源開銷的原因,沒有使用這個功能,所以這個時候就需要打開混雜模式,將vSwitch變成vHUB.