vmware esx 虛擬機器MAC 位址修改

2021-08-25 15:29:09 字數 1382 閱讀 4490

先看一下真實世界的mac位址是如何分配,如何保證沒有重複的。

每塊網絡卡都有乙個mac位址,mac位址是乙個6位元組、也即48bit的資料。前3位元組稱為oui ,是由ieee組織註冊給網路裝置生產商的;每個廠商擁有乙個或多個oui,彼此不同。後三位元組則是由網路裝置生產商分配給自己生產的每乙個擁有mac位址的裝置,互不重複。

在vm的世界中,每一台擁有虛擬nic(網絡卡)的裝置當然也擁有mac位址。這虛擬網絡卡的mac位址,當然也是按照規定,前三位元組為oui,後三位元組逐一分配給每個裝置。

由於虛擬網絡卡的」製造商「是vmware,xensource,微軟等虛擬平台軟體的生產商,oui當然就分配給了他們。

oui有了,後三位元組如何生成呢?要知道虛擬機器是經常被建立和銷毀的,這一點不像實體pc。網絡卡生產商可以計算每年生產多少塊網絡卡,從而為每塊網絡卡分配不同的mac位址; vmware卻不可能計算出每年有多少臺vm、有多少塊虛擬網絡卡被建立。

vmware esx server的演算法是,使用雜湊演算法,通過vm的uuid來生成mac位址。vm的uuid是每一台vm特有的、128bit的id,是由esx server硬體smbios的uuid、加上vm的路徑生成的。因此,一台虛擬機器的虛擬網絡卡的mac位址就與下面四個因素有關:

mac位址一旦生成,就不會再有變化,除非上面所述的四項因素發生改變(最可能發生的就是第三項,vm在伺服器上的路徑改變)。

儘管如此,由於雜湊演算法本身的特徵,還是有萬一發生mac位址衝突的可能(可能性極小,和年末ジャンボ中頭彩的機率差不多)。esx server會不斷跟蹤和檢測執行中和掛起(suspend)的vm,以保證沒有mac位址衝突。但是已經關閉電源的vm是不在檢查物件之內的。

因此,萬一一台vm啟動時esx檢測到mac位址衝突,它會分配給vm的虛擬網絡卡乙個新的mac位址。所以從這個意義上說,vm的mac位址是可能發生變化的——只是這個概率實在太小。

手動指定mac位址僅用於一些極其特殊的情況,通常是進行p2v的時候。例如,某物理伺服器上的軟體,其license已經與該伺服器的mac位址 繫結,如果mac位址改變則軟體無法執行;再如,某些底層網路軟體以mac位址來鑑別機器時,為了不做更改能夠繼續使用,在p2v的時候也要手動指定 mac位址。

開啟乙個vm的.vmx檔案,可以看到如下設定:(如果有多塊nic的話,那麼就會有ethernet0、ethernet1、ethernet2……)

ethernet0.addresstype = "generated"

ethernet0.generatedaddress = "00:0c:29:9b:fb:18"

ethernet0.addresstype = "static"

ethernet0.address = "00:50:56:00:00:01"

其中的00:50:56:00:00:01就是手動指定的mac位址。

比較VMware ESX虛擬機器的物理與虛擬硬體

通過使用軟體,虛擬機器就表現得如同物理機,擁有自己的一套虛擬硬體,包括其上載入的作業系統和應用。使用虛擬化,不管下面主機伺服器所執行的作業系統如何,每台虛擬機器都擁有一致的虛擬硬體。這一系列的文章旨在幫助vmware系統管理員更好地理解虛擬機器的內部工作,有助於每天對基礎架構的管理。除了硬碟,多數虛...

VMware ESX主機上虛擬機器檔案介紹

在這一系列的第一部分中,我們從硬體角度了解了什麼是虛擬機器。在本部分中,techtarget中國的特約虛擬化專家eric siebert將介紹esx主機上虛擬機器檔案的組成。與虛擬機器相關的檔案有很多,它們位於主機上虛擬機器的目錄裡。32.73 kb 2010 1 8 16 54 如果你使用像win...

vmware esx和xen虛擬機器效能評估和對比

今天和同事聊到虛擬機器效能問題,回來找了下文件和工具,結論是vmware esx超越xen許多。雖然這些個報告都是vmware發的,但是從產品本身可以揣摩出vmware會比xen更成熟可靠一些。1 vmware esx已經經過無數的免費 收費和破解使用者的考驗了。在可靠性方面vmware esx的優...