在使用 CentOS 7 的虛擬機時,我們通常需要配置靜態 IP 地址,以確保在每次虛擬機重啟后能夠通過 SSH 連接。本文將介紹如何在 CentOS 7 系統中配置靜態 IP 地址,并確保配置在系統重啟后依然生效。
步驟 1:檢查虛擬機網絡接口
首先,確保你的虛擬機已經正確連接到網絡,并且網絡接口正常運行。可以通過以下命令檢查網絡接口的狀態:
ip a
或者
ifconfig
在輸出中找到你虛擬機的主要網絡接口(例如 ens33
),確保它已經啟用并且正在運行。
步驟 2:配置靜態 IP 地址
接下來,我們需要修改 CentOS 7 中的網絡配置文件,為虛擬機配置一個靜態 IP 地址。
-
打開網絡配置文件
/etc/sysconfig/network-scripts/ifcfg-ens33
:sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33
-
修改或添加以下配置:
TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="static" DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" IPV6_ADDR_GEN_MODE="stable-privacy" NAME="ens33" UUID="04095f36-1c67-45fb-9a4f-dec4b4dc1b13" DEVICE="ens33" ONBOOT="yes"IPADDR=192.168.101.129 NETMASK=255.255.255.0 GATEWAY=192.168.101.2 DNS1=8.8.8.8 DNS2=8.8.4.4
解釋:
-
BOOTPROTO="static"
:表示使用靜態 IP 地址。 -
IPADDR=192.168.101.129
:為虛擬機分配一個靜態 IP 地址。 -
NETMASK=255.255.255.0
:子網掩碼,表示虛擬機與網段的關系。 -
GATEWAY=192.168.101.2
:設置默認網關。 -
DNS1=8.8.8.8
和DNS2=8.8.4.4
:配置 DNS 服務器(Google 公共 DNS)。
-
-
保存并退出文件編輯器。
步驟 3:重新啟動網絡服務
更改完配置后,重新啟動網絡服務以使配置生效:
sudo systemctl restart network
或者,重新啟動虛擬機,網絡服務也會隨之啟動。
步驟 4:驗證配置
重啟后,使用以下命令檢查虛擬機的 IP 配置:
ip a
你應該看到類似于以下的輸出:
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000inet 192.168.101.129/24 brd 192.168.101.255 scope global noprefixroute ens33valid_lft forever preferred_lft foreverinet6 fe80::8cea:a781:25bc:f93e/64 scope link noprefixroute valid_lft forever preferred_lft forever
步驟 5:通過 SSH 連接虛擬機
如果一切設置正確,虛擬機將會使用配置的靜態 IP 地址,且你可以使用 SSH 從宿主機連接到虛擬機:
ssh username@192.168.101.129
其中 username
是虛擬機中的用戶名。
小貼士:如何確保虛擬機重啟后網絡配置不丟失
為了確保每次虛擬機重啟后依然能夠使用靜態 IP 地址并能夠 SSH 連接,以下幾點需要注意:
-
確保網絡接口自動啟動: 通過配置
ONBOOT="yes"
,保證虛擬機重啟時網絡接口會自動啟用。 -
檢查虛擬機網絡模式: 確保虛擬機的網絡模式配置正確。通常可以使用橋接模式(Bridge)或 NAT 模式。使用橋接模式時,虛擬機可以直接與宿主機的網絡通信;使用 NAT 模式時,虛擬機通過宿主機的網絡連接外部。
-
防火墻配置: 如果虛擬機上啟用了防火墻,確保開放了
22
端口(默認 SSH 端口)。可以使用以下命令查看防火墻設置:sudo firewall-cmd --list-all
如果需要,可以運行以下命令打開 SSH 端口:
sudo firewall-cmd --zone=public --add-port=22/tcp --permanent sudo firewall-cmd --reload
結語
通過以上步驟,你已經成功配置了 CentOS 7 虛擬機的靜態 IP 地址,并確保它在每次重啟后仍然能夠通過 SSH 連接。靜態 IP 地址配置對于需要穩定網絡連接的虛擬機(如 Web 服務器、數據庫服務器等)非常重要。希望本篇教程對你有所幫助。
如果你在配置過程中遇到任何問題,歡迎在評論區留言,我會盡快為你解答。