我的個人博客:https://www.wuyizuokan.com
之前學習Redis的時候,准備搭建一個Redis集群試試,但是使用VMware創建好三個虛擬機之后,虛擬機的IP地址總是變化,每次都需要重新配置redis配置文件,很麻煩。
這是因VMware默認使用DHCP,動態給虛擬機分配IP地址,導致虛擬機的IP地址總是發生變化:
可以在編輯-》虛擬網絡編輯器中查看:
默認開啟了DHCP,動態分配IP地址,我這里IP地址的分配范圍是192.168.200.128~192.168.200.254,虛擬機的IP地址就是在這個里面分配的。
如果只創建了一台虛擬機,會總是分配192.168.200.128這個IP地址,即第一個IP地址;如果創建了多個虛擬機,IP地址就不會固定了,一般是先啟動的分配192.168.200.128,后啟動的按照啟動順序遞增分配IP地址。
為了能夠便於使用,需要讓每一台虛擬機的IP地址固定下來,下面是操作步驟:
讓所有的虛擬機都掛載到VMnet8這個子網下面來,先在虛擬網絡編輯器中查看VMnet8子網的網關信息:
設置每台虛擬機的網卡設置:
在虛擬機上右鍵-》設置
選擇網絡適配器-》選擇自定義-》選擇VMnet8:
下面開啟虛擬機,進入虛擬機配置IP地址信息(因為修改了IP地址分配方式,ubuntu系統啟動可能會比較慢,耐心等待):
進入/etc/netplan目錄,查看下面的文件,應該會有一個xxxx.yaml文件:
使用sudo vim ****.yaml命令修改這個文件:
1 # This file is generated from information provided by 2 # the datasource. Changes to it will not persist across an instance. 3 # To disable cloud-init's network configuration capabilities, write a file 4 # /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following: 5 # network: {config: disabled} 6 network: 7 ethernets: 8 ens33: 9 addresses: 10 - 192.168.200.128/24 11 dhcp4: false 12 gateway4: 192.168.200.2 13 nameservers: 14 addresses: 15 - 8.8.8.8 16 search: [] 17 version: 2
注意:
ens33就是虛擬機對外通訊使用的端口,這里的配置也就是給這個端口配置IP地址等信息:
addressers:本機IP地址和掩碼
dhcp4:false //關閉DHCP
gateway4:192.168.200.2 // VMare的虛擬網絡編輯器中查看到的VMnet8子網的網關IP地址。
下面的nameservers中配置了8.8.8.8的IP地址,這里是為了讓虛擬機能夠訪問DNS服務器。
配置OK后,運行 sudo netplan apply 使能配置:
使用ifconfig查看IP地址信息,端口的IP地址已經固定下來了:
嘗試重啟一下虛擬機,看看IP地址是否發生改變:
可以看到IP地址未發生改變。
可以測試一下ping www.baidu.com,虛擬機可以訪問外部網絡: