最近想在本地用虛擬環境搭一個k8s環境,但是發現虛擬機的ip會不定時自動變化,導致mosh客戶端連接經常中斷。於是就想讓虛擬機的ip固定住,不再變動。
mac 上的 vmware fusion 設置固定 ip 沒有 windows 下那么方便。百度之后找到一種方法。
-
設置 vm 虛擬機對應的靜態ip
首先修改
/Library/Preferences/VMware\ Fusion/vmnet8/dhcpd.conf
文件在
####### VMNET DHCP Configuration. End of "DO NOT MODIFY SECTION" #######
這一行之后添加虛擬機靜態ip配置。如下圖
這里需要注意的是, master-k8s, node1-k8s, node2-k8s 這個主機名要和虛擬機的名稱相對應。
我這里有三個虛擬機,所以有三個配置。
可以在vmware fusion 中的虛擬機資源庫中查看或修改。如下圖
-
刷新 vm 網絡配置
運行以下命令刷新網絡配置
$ sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cli --configure $ sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cli --stop $ sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cli --start
輸出應該如下圖所示

-
虛擬機重新獲取配置
可以直接重啟 vmware fusion 和 虛擬機系統,
也可以直接在虛擬機命令行中執行
sudo dhclient -v -r eth0
。 eth0 為對應網卡。
這樣虛擬機的ip就不會變來變去了。
參考: