【CentOS】虚拟机网卡IP地址修改步骤

一、介绍

本文介绍了两种在Linux系统中配置静态IP的方法。

方法一使用nmcli命令:通过查看当前连接、修改IP/网关/DNS等参数并重启连接完成配置。

方法二通过编辑网卡配置文件(如ifcfg-ens33),修改BOOTPROTO为static并设置IP、子网掩码、网关等参数后重启网络服务。

两种方法最后都需验证配置是否生效,包括检查IP地址和测试网络连通性。第一种方法即时生效,第二种更适合习惯手动编辑配置文件的用户。

两种方式均需确保网卡名与实际一致,并正确设置网关以保证网络连通。

二、步骤

方法 1:用 nmcli 命令

nmcli 是 NetworkManager 的命令行工具,操作简单且即时生效,无需重启系统。

1. 查看当前网络连接名称(通常和网卡名一致):
bash 复制代码
nmcli connection show  # 输出中"NAME"列即为连接名(如ens33)
2. 修改 IP、子网掩码(默认 24 位),并设置为「手动配置」(静态 IP):
bash 复制代码
nmcli connection modify ens33 ipv4.method manual ipv4.addresses 192.168.150.103/24 ipv4.gateway 192.168.150.1 ipv4.dns 8.8.8.8,114.114.114.114

根据需求自行修改ens33位置为你的网卡名,ipv4.addresses为修改的目标地址

ipv4.gateway为网关地址,修改见:https://blog.csdn.net/2401_84926677/article/details/154566139

3. 重启网络连接,使配置生效:
bash 复制代码
nmcli connection up ens33  # 激活新配置
4. 验证
bash 复制代码
ip addr | grep "ens33"  #"ens33"为网卡名

#或

ifconfig 

方法 2:编辑网卡配置文件

直接修改 /etc/sysconfig/network-scripts/ 下的网卡配置文件,适合习惯手动编辑文件的场景。

1. 找到网卡配置文件(文件名格式 ifcfg-网卡名,如 ifcfg-ens33
bash 复制代码
cd /etc/sysconfig/network-scripts/
ls ifcfg-*  # 查看所有网卡配置文件
2. 用 vim 编辑文件(以 ifcfg-ens33 为例):
bash 复制代码
vim ifcfg-ens33
3. 修改 / 添加以下字段(注释用 # 开头,无关字段保留默认)
bash 复制代码
TYPE=Ethernet
BOOTPROTO=static  # 关键:改为static(手动配置),原可能是dhcp
DEFROUTE=yes
NAME=ens33        # 网卡连接名(和网卡名一致)
DEVICE=ens33      # 网卡名(必须和实际网卡一致)
ONBOOT=yes        # 开机自动激活网卡
IPADDR=192.168.150.103  # 新IP
NETMASK=255.255.255.0   # 子网掩码(对应/24)
GATEWAY=192.168.150.1   # 网关(必填,否则无法上网)
DNS1=8.8.8.8            # DNS(可选,建议配置)
DNS2=114.114.114.114
4. 保存退出(vim 中按 Esc → 输入 :wq → 回车)
5. 重启网络服务生效:
bash 复制代码
# CentOS7推荐用这个命令
systemctl restart NetworkManager
# 若无效,尝试旧命令(不推荐,但部分场景可用)
# systemctl restart network
6. 验证
bash 复制代码
ip addr show ens33  # 或简写 ip a s ens33

测试网络连通性

bash 复制代码
ping 192.168.150.1  # ping网关(通则网络正常)
ping www.baidu.com   # ping外网(通则DNS配置正常)
相关推荐
云飞云共享云桌面1 天前
传统工作站 vs 云飞云共享云桌面:制造业设计云桌面选型深度对比
运维·服务器·前端·网络·3d·架构·制造
暮云星影1 天前
全志linux开发屏幕适配(一)屏幕参数设置说明
linux·arm开发
Maynor9961 天前
我用 Codex 给自己的网站上线了一个智能体客服:从 Dify 到服务器部署,全程实战复盘
运维·服务器
java_cj1 天前
深入kubectl create源码:从YAML到Pod的完整链路拆解
运维·云原生·容器·kubernetes
swordbob1 天前
NIO 的 Channel 里有多个 BIO 吗?
linux·网络·nio
深圳恒讯1 天前
越南服务器BGP多线和单线有什么区别?
运维·服务器
Fcy6481 天前
Linux下 信号的保存与捕捉
linux·中断·信号的捕捉·信号的保存
志栋智能1 天前
超自动化运维如何提升安全合规水平?
运维·安全·自动化
A_humble_scholar1 天前
Linux(九) 进程管理完全指南:从入门到实战
linux·运维·chrome
江华森1 天前
Linux 操作命令完全指南
linux·运维