1. 程式人生 > >VMware ESXI5.5虛擬機更改MAC地址

VMware ESXI5.5虛擬機更改MAC地址

vmware vm mac address

  上周在盤點和整理服務器信息時,發現一臺去年上線的臨時服務器(POS查貨系統)還運行在PC機上。看樣子公司是不打算換新服務器了,為防止出意外打算遷移到VMware虛擬機上。現有vSphere環境可利用資源不多,遂打算把前年更換的A8服務器(已更換OA系統,但原數據要保留3年以上供查詢。硬件資源使用率不到一半)重裝成vSphere環境,再遷移POS系統到A8服務器上。實施步驟:

一、P2V遷移A8系統到vCenter6.5(ESXI主機為5.5,IBMx3650M2兼容性問題不建議升級),遷移過程比較順利,由於需修改配置而使用文件級數據遷移,在文件較多的情況下,速度較慢;

二、停止原A8系統,把加密狗插到ESXI主機上,編輯虛擬機設置,新增Host USB Device設備,並選擇識別到的加密狗。啟動遷移後的虛擬機,安裝vmware tools。

三、重啟後A8服務無法啟動,檢查後發現加密狗綁定了網卡的MAC地址,在遷移時沒有修改MAC地址,導致MAC地址變更後加載加密狗時報錯。

修改虛擬機MAC地址為原物理機MAC地址,解決辦法:

1、關閉vm虛擬機,並從清單中移除虛擬機;

2、開啟ESXI主機的SSH服務,使用Putty登錄到ESXI主機,並進入到虛擬機目錄,如下:

# cd /vmfs/volumes/DatastoreName/VMFolderName

技術分享

3、備份原vmname.vmx文件,並修改.vmx文件

# cp vmname.vmx vmname.vmx.old

# vi vmname.vmx 修改或添加以下內容:

ethernetN.checkMACAddress = "false"
ethernetN.addressType = "static"
ethernetN.Address = "XX:XX:XX:XX:XX:XX"

技術分享

其中 XX:XX:XX:XX:XX:XX 是虛擬機的新 MAC 地址。將 ethernetN 中的 N 改為網絡適配器值。例如:
網絡適配器 1 -> ethernet0
網絡適配器 2 -> ethernet1

註意:

修改MAC地址時,也可以在編輯虛擬機設置裏,修改網絡連接,並指定MAC地址為手動,輸入新的MAC地址保存即可。如下圖:

技術分享

但修改完成後,啟動虛擬機時會報錯:Invalid Ethernet address

技術分享

此時需要檢查ethernetN.checkMACAddress = "false"是否設置,虛擬網卡類型(Adapter Type)是否為"vmxnet3"。如果為E1000類型,可以刪除後重新添加網卡並選擇網卡類型為"VMXNET 3"。否則即使修改了.vmx文件,一樣會報以上錯誤。

一開始沒有註意到網卡類型的問題,測試修改幾次都無法開機。

4、在存儲中找到虛擬機vmx文件,並註冊虛擬機

技術分享

5、啟動虛擬機即可。

參考:遷移到 VMware vCenter Server 5.x 後打開虛擬機電源失敗並顯示錯誤:指定的 MAC 地址無效 (2102096)

四、重裝原A8服務器為ESXI6.0(Dell R710兼容性最高支持6.0),並加入vCenter6.5。在線遷移A8系統回到原服務器上。

五、P2V遷移POS系統到原A8服務器上,淘汰PC機。

VMware ESXI5.5虛擬機更改MAC地址