一、修改网络配置
vi /etc/sysconfig/network-scripts/ifcfg-ens33

2. 处理 NetworkManager 冲突
CentOS 7 中 NetworkManager 服务可能与传统网络服务冲突,执行以下命令关闭它:
| |
重新启动一下就好了
systemctl restart network
验证网络连通性
- 检查 IP 配置:
ip addr - 测试内网连通性:
ping 192.168.200.2(网关地址) - 测试外网连通性:
ping www.baidu.com
如果仍有问题,可检查虚拟机网络模式(如 NAT 模式的网关是否与配置文件一致),或查看错误日志 journalctl -xe 进一步排查。
一、 前置准备:VMware 虚拟网络编辑器设置
在修改 CentOS 内部配置之前,必须先确认 VMware 的外部网络设置。 这是一切配置的基础。
- 打开 VMware Workstation -> 编辑 (Edit) -> 虚拟网络编辑器 (Virtual Network Editor)。
- 选择 VMnet8 (NAT模式)(这是最常用的模式)。
- 点击 NAT 设置 (NAT Settings),记录下 网关 IP (Gateway IP)(例如:
192.168.200.2)。 - 返回主界面,记录下 子网 IP (Subnet IP)(例如:
192.168.200.0)。
注意:你在 CentOS 中设置的 IP 地址必须在“子网 IP”段内,且“网关”必须与 VMware 的 NAT 设置一致。
二、 核心配置:设置静态 IP(永久生效)
这是服务器最标准的配置方式,确保重启后 IP 不变。
1. 编辑网卡配置文件
使用 vi 或 vim 编辑默认网卡(通常是 ens33):
| |
2. 修改与新增内容(关键)
请参照以下模板修改,重点关注注释部分:
Properties
| |
3. 重启网络服务
修改完成后保存退出(:wq),并重启网络:
| |
三、 常见问题处理:NetworkManager 冲突
在 CentOS 7 中,NetworkManager 有时会覆盖手动修改的配置文件,导致配置不生效或报错。
推荐方案:如果是服务器环境,建议永久关闭 NetworkManager。
| |
四、 进阶配置:主机名与 Hosts 映射
1. 永久修改主机名 (推荐 Systemd 方式)
你提到的修改 /etc/hostname 是对的,但使用 hostnamectl 命令更规范,它会自动同步相关文件:
| |
2. 配置 Hosts 映射 (本地 DNS)
为了方便通过名字访问其他机器,编辑 /etc/hosts:
| |
添加如下内容:
| |
五、 高级网络:路由与子接口 (修正与补充)
你原文档中的路由配置部分有一些命令拼写错误,以下是修正后的版本:
1. 永久配置路由 (推荐方法)
修改 /etc/sysconfig/static-routes 文件(如果不存在则新建),这种方式比写在 rc.local 更稳定。
| |
格式:any net 目标网段 netmask 子网掩码 gw 下一跳网关
示例:
| |
2. 配置网卡子接口 (单网卡多 IP)
场景:一个网卡需要绑定两个不同的 IP 地址。
步骤:
复制物理网卡配置文件:
1 2cd /etc/sysconfig/network-scripts/ cp ifcfg-ens33 ifcfg-ens33:0编辑子接口文件
vi ifcfg-ens33:0:Properties
1 2 3 4 5 6DEVICE="ens33:0" # 修改设备名 ONBOOT="yes" BOOTPROTO="static" IPADDR="192.168.200.20" # 新的 IP NETMASK="255.255.255.0" # UUID 行建议删除,避免冲突重启网络:
systemctl restart network
六、 故障排查流程 (Troubleshooting)
如果配置后无法上网,请按以下顺序执行命令排查:
检查 IP 是否生效:
1ip addr # 此时应能看到你设置的静态IP如果看不到 IP,通常是
ONBOOT=no没改成yes。检查网关连通性:
1ping 192.168.200.2如果不通,检查 VMware 的“虚拟网络编辑器”设置是否正确,或者 Windows 宿主机的防火墙。
检查外网连通性 (IP):
1ping 8.8.8.8如果不通,说明网关配置错误或 NAT 服务异常。
检查域名解析 (DNS):
1ping www.baidu.com如果能 ping 通 8.8.8.8 但 ping 不通百度,说明
DNS1参数未配置或配置错误。
下一步建议:
如果您在执行 systemctl restart network 时遇到具体报错(例如 Job for network.service failed),可以查看详细日志:
| |
或者查看 /var/log/messages。