【Linux】虛擬機中,如何把虛擬機的IP地址固定,而不是DHCP自動分配。(Linux系統為ubuntu 18.4)


我的個人博客: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,虛擬機可以訪問外部網絡:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM