在配置網絡前,需先確認系統中網絡接口的名稱(如eth0
、ens33
等)。常用命令如下:
ip addr show
(顯示所有網絡接口的IP地址、MAC地址及狀態);ifconfig
(若未安裝,可通過yum install net-tools -y
安裝)。
執行命令后,找到需要配置的接口名稱(如ens33
),后續配置將基于此名稱操作。靜態IP需手動指定IP地址、子網掩碼、網關和DNS服務器,步驟如下:
CentOS 7及以上版本的網絡配置文件位于/etc/sysconfig/network-scripts/
目錄下,文件名格式為ifcfg-<interface>
(如ifcfg-ens33
)。使用文本編輯器(如vi
)打開文件:
sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33
將以下參數修改為靜態IP所需值(示例為192.168.1.100/24
網段):
TYPE=Ethernet # 網絡類型(以太網)
BOOTPROTO=static # IP分配方式(static為靜態,dhcp為動態)
DEFROUTE=yes # 是否為默認路由
IPV4_FAILURE_FATAL=no # IPv4失敗是否致命
IPV6INIT=yes # 是否啟用IPv6
IPV6_AUTOCONF=yes # IPv6自動配置
IPV6_DEFROUTE=yes # IPv6默認路由
IPV6_FAILURE_FATAL=no # IPv6失敗是否致命
NAME=ens33 # 接口名稱(需與文件名一致)
DEVICE=ens33 # 設備名稱(需與接口名稱一致)
ONBOOT=yes # 開機是否自動啟用接口(必須設為yes)
IPADDR=192.168.1.100 # 靜態IP地址
PREFIX=24 # 子網掩碼(24等同于255.255.255.0)
GATEWAY=192.168.1.1 # 默認網關(路由器IP)
DNS1=8.8.8.8 # 主DNS服務器
DNS2=8.8.4.4 # 備DNS服務器
注意:PREFIX
(CIDR格式)與NETMASK
(子網掩碼)二選一即可,若使用PREFIX
,無需填寫NETMASK
。
保存配置文件后,重啟網絡服務以應用更改:
sudo systemctl restart NetworkManager # CentOS 7及以上推薦使用NetworkManager
# 或使用傳統命令(部分系統仍支持):
# sudo systemctl restart network
使用以下命令檢查IP地址是否生效:
ip addr show ens33 # 查看指定接口的IP地址
ping -c 4 google.com # 測試網絡連通性(需聯網)
若網絡中有DHCP服務器(如路由器),可通過DHCP自動獲取IP地址,步驟如下:
打開對應的ifcfg-<interface>
文件:
sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33
將以下參數修改為DHCP模式:
BOOTPROTO=dhcp # IP分配方式為DHCP
ONBOOT=yes # 開機自動啟用接口
DHCP_HOSTNAME=myhost # 可選:發送給DHCP服務器的主機名
PEERDNS=no # 防止DHCP服務器覆蓋手動設置的DNS(可選)
sudo systemctl restart NetworkManager
ip addr show ens33 # 查看是否獲取到DHCP分配的IP
ping -c 4 google.com # 測試網絡連通性
DNS配置用于將域名解析為IP地址,可通過以下兩種方式設置:
在ifcfg-<interface>
文件中添加或修改DNS1
、DNS2
參數(如上文靜態IP配置中的DNS1=8.8.8.8
、DNS2=8.8.4.4
)。
resolv.conf
文件(臨時生效)直接編輯/etc/resolv.conf
文件:
sudo vi /etc/resolv.conf
添加以下內容:
nameserver 8.8.8.8
nameserver 8.8.4.4
注意:若resolv.conf
被NetworkManager管理,修改后可能被覆蓋,建議優先通過接口配置文件設置。
cat -A ifcfg-ens33
檢查隱藏字符。NetworkManager
或network
服務已啟動:sudo systemctl status NetworkManager # 檢查NetworkManager狀態
sudo systemctl enable NetworkManager # 設置開機自啟
sudo systemctl stop firewalld # 關閉firewalld
sudo systemctl disable firewalld # 禁止開機自啟
通過以上步驟,可在CentOS系統中完成靜態IP或動態IP的網絡配置,并通過驗證命令確認網絡連通性。配置完成后,建議備份配置文件(如cp ifcfg-ens33 ifcfg-ens33.bak
),以便后續恢復。