VMware 中为 openEuler 配置静态 IP(桥接模式)
在 VMware 桥接模式下为 openEuler 24.03 配置静态 IP:网络规划、nmcli 与 ifcfg 两种做法、验证步骤与排错表,并附 NAT 与仅主机模式的快速模板。
目录23 节
| 文档版本 | 适用环境 | 最后更新 |
|---|---|---|
| 1.2 | VMware Workstation 16/17 + openEuler 24.03 LTS SP3 | 2026-06-14 |
摘要
本文档面向需要在VMware虚拟化环境中为openEuler 24.03 LTS SP3虚拟机配置静态IP地址的系统管理员和运维人员。文档以桥接模式为典型场景,详细说明从环境准备、网络规划,到使用nmcli命令行工具与传统ifcfg文件两种主流配置方法的完整流程,并提供验证步骤、常见问题排错指南以及其他网络模式的快速配置模板。通过遵循本指南,用户可以彻底解决DHCP动态分配导致的IP地址漂移问题,使虚拟机像物理机一样独立接入局域网,为服务器运维、集群搭建及远程SSH管理提供稳定的网络访问地址。
1. 概述
在VMware虚拟化环境中部署openEuler 24.03 LTS SP3后,若采用桥接模式,虚拟机将直接接入宿主机所在的物理局域网,获得与物理网络平等的地位。默认网络配置为DHCP动态获取IP,但对于需要固定访问地址的场景(如服务器运维、集群搭建、远程SSH管理),必须将虚拟机网络配置为静态IP。本文档以桥接模式为标准场景,提供配置流程、验证方法及排错指南。
2. 软硬件环境与基础设施
2.1 硬件环境
宿主机最低配置(物理机)
| 组件 | 要求 |
|---|---|
| CPU | x86_64架构,支持虚拟化技术(Intel VT-x / AMD-V)并已在BIOS中启用 |
| 内存 | ≥ 8GB(可用内存 ≥ 4GB用于虚拟机) |
| 磁盘 | ≥ 50GB空闲空间(建议SSD) |
| 网络连接 | 宿主机已通过有线或无线方式连接到目标物理局域网 |
虚拟机推荐配置
| 组件 | 建议值 | 说明 |
|---|---|---|
| CPU | 2核心 | 可满足日常服务与编译需求 |
| 内存 | 4GB | openEuler最小安装2GB,GUI或服务较多时建议4GB及以上 |
| 磁盘 | 20GB(系统盘) | 如需存放大量数据可另行挂载数据盘 |
| 网络适配器 | 1个,桥接模式 | 本文以桥接模式为例,虚拟机与宿主机处于同一物理网络 |
| 虚拟网络 | VMnet0(默认桥接) | 由VMware虚拟网络编辑器管理,自动桥接到宿主机物理网卡 |
2.2 软件环境
| 组件 | 版本/说明 |
|---|---|
| 宿主机操作系统 | Windows 10/11或Linux(本文以Windows为例,操作通用) |
| 虚拟化平台 | VMware Workstation 16 Pro / 17 Pro或VMware Player |
| 虚拟机操作系统 | openEuler 24.03 LTS SP3(x86_64) |
| 内核版本 | 6.6.x(系统自带,SP3与SP2内核版本可能相同) |
| 网络管理服务 | NetworkManager(默认运行) |
| 工具包 | network-scripts(如使用传统ifcfg方式,需单独安装) |
注意:openEuler 24.03 LTS SP3默认已安装并启用NetworkManager,推荐优先使用
nmcli命令行工具进行网络配置。传统ifcfg文件方式依赖network-scripts包,该包在最小化安装中可能缺失,可按需通过dnf install network-scripts -y补充。
3. 网络规划(以桥接模式为例)
| 参数 | 值 | 来源/说明 |
|---|---|---|
| 网络模式 | 桥接 | 虚拟机直接连接到宿主机所在的物理局域网,与物理机平等 |
| 物理网络网段 | 192.168.1.0/24 | 根据实际物理网络环境设定,本例假设局域网为192.168.1.0/24 |
| 子网掩码 | 255.255.255.0 | 同子网默认掩码 |
| 网关地址 | 192.168.1.1 | 物理路由器的IP地址,即物理局域网的默认网关 |
| 静态IP | 192.168.1.60 | 自行选择一个未被占用的IP地址,需与物理网络在同一网段 |
| DNS服务器 | 192.168.1.1或公共DNS | 可优先使用路由器自带的DNS转发,也可直接指定公共DNS(如8.8.8.8) |
如何查看物理网络网关和网段:
- Windows宿主机:打开命令提示符,执行
ipconfig,查看“默认网关”和“IPv4地址”,网段通常由IP地址和子网掩码推算。- Linux宿主机:在终端执行
ip route | grep default或ifconfig,查看默认网关和本机IP。桥接模式下,虚拟机的网关和网段必须与宿主机完全相同。请提前确认局域网内可用的静态IP地址,避免冲突。
4. 配置静态IP
4.1 前期检查(在openEuler虚拟机中执行)
# 1. 查看当前网卡名称(如ens33、ens160)
ip a
# 2. 确认NetworkManager运行状态
systemctl status NetworkManager
记录网卡名(本例为ens33),后续所有操作均基于此名称。
4.2 方法一:nmcli命令行配置(推荐)
4.2.1 查看当前连接
nmcli con show
输出中NAME列即为网络连接名,通常与网卡名相同(如ens33)。
4.2.2 设置静态IP、网关与DNS(桥接模式)
# 设置静态IP和子网掩码(CIDR 格式,根据实际网段调整)
nmcli con mod ens33 ipv4.addresses 192.168.1.60/24
# 设置默认网关(物理路由器地址)
nmcli con mod ens33 ipv4.gateway 192.168.1.1
# 设置DNS服务器(本例使用路由器自身DNS及公共DNS)
nmcli con mod ens33 ipv4.dns "192.168.1.1,8.8.8.8"
# 将获取方式改为手动(静态)
nmcli con mod ens33 ipv4.method manual
# 禁用再启用连接,使配置生效
nmcli con down ens33 && nmcli con up ens33
一条命令完成全部配置:
nmcli con mod ens33 ipv4.addresses 192.168.1.60/24 \
ipv4.gateway 192.168.1.1 \
ipv4.dns "192.168.1.1,8.8.8.8" \
ipv4.method manual
nmcli con down ens33 && nmcli con up ens33
4.3 方法二:修改ifcfg配置文件(传统方式)
4.3.1 确保必要软件包已安装
openEuler 24.03最小化安装可能不含network-scripts,执行:
sudo dnf install network-scripts -y
4.3.2 编辑网卡配置文件
sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33
修改或新增以下内容:
TYPE=Ethernet
BOOTPROTO=static # 静态IP
NAME=ens33
DEVICE=ens33
ONBOOT=yes # 开机自动激活
IPADDR=192.168.1.60
PREFIX=24 # 等价于NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
DNS2=8.8.8.8
4.3.3 重启网络服务
# 若系统使用NetworkManager管理(推荐)
sudo systemctl restart NetworkManager
# 若使用传统的network服务(不推荐混用)
# sudo systemctl restart network
提示:openEuler 24.03 LTS SP3默认由NetworkManager接管网络,重启NetworkManager即可使ifcfg文件中的配置生效。若同时启用
network服务可能导致冲突,建议保持仅使用NetworkManager。
5. 验证配置
依次执行以下命令,确认网络连通性:
# 1. 查看指定网卡的IP地址
ip a show ens33
# 2. 测试与网关(路由器)的连通性
ping -c 4 192.168.1.1
# 3. 测试与外网的连通性(公网IP)
ping -c 4 8.8.8.8
# 4. 测试域名解析
ping -c 4 baidu.com
若所有测试均成功返回响应,建议执行重启测试以确保配置持久化:
sudo reboot
重新登录后,再次运行ip a show ens33和ping -c 4 192.168.1.1,确认静态IP在重启后依然生效。
6. 常见问题与排错
| 现象 | 可能原因 | 解决方法 |
|---|---|---|
ping网关不通 |
VMware桥接模式未正确桥接到活动物理网卡;IP地址不在同一网段;网关地址填写错误 | 检查VMware虚拟网络编辑器中VMnet0是否桥接到正确的宿主机物理网卡(有线/无线);确保IP、网关与物理网络一致 |
| 无法解析域名 | DNS配置错误或路由器DNS服务异常 | 使用nmcli con mod ens33 ipv4.dns "8.8.8.8"直接设置公共DNS;检查宿主机是否可正常上网 |
| 重启后IP恢复为动态 | 连接未设置为manual模式,或ONBOOT=no |
检查ipv4.method是否为manual;若使用ifcfg文件,确保BOOTPROTO=static且ONBOOT=yes |
| 配置后SSH连接断开 | 虚拟机IP已变更 | 使用新配置的静态IP地址重新SSH连接 |
network-scripts包缺失 |
openEuler 24.03最小化安装未包含此包 | 执行sudo dnf install network-scripts -y安装后重新配置 |
| 宿主机或局域网其他设备无法访问虚拟机 | 虚拟机防火墙或SELinux阻断;IP地址冲突 | 临时放行SSH服务:sudo firewall-cmd --add-service=ssh --permanent && sudo firewall-cmd --reload;检查SELinux状态:getenforce,若为Enforcing可临时设为Permissive测试:sudo setenforce 0;确认静态IP未被其他设备占用 |
| 无线网卡宿主机桥接后网络异常 | 部分无线网卡不支持桥接或需要特殊设置 | 若宿主机使用无线网卡,在VMware虚拟网络编辑器中,为VMnet0选择“桥接到”具体无线网卡,或尝试更换为有线连接后再进行桥接 |
7. 附录
7.1 其他网络模式下的快速模板
NAT模式(VMnet8子网192.168.88.0/24,网关 .2)
nmcli con mod ens33 ipv4.addresses 192.168.88.100/24 \
ipv4.gateway 192.168.88.2 \
ipv4.dns "8.8.8.8,114.114.114.114" \
ipv4.method manual
nmcli con down ens33 && nmcli con up ens33
仅主机模式(VMnet1子网192.168.56.0/24,宿主机虚拟网卡192.168.56.1)
nmcli con mod ens33 ipv4.addresses 192.168.56.100/24 \
ipv4.gateway 192.168.56.1 \
ipv4.dns "192.168.56.1" \
ipv4.method manual
nmcli con down ens33 && nmcli con up ens33
注意:仅主机模式虚拟机无法直接访问互联网,DNS通常指向宿主机虚拟网卡IP或留空。
7.2 自动化脚本
将以下内容保存为update_static_ip.sh,可根据实际环境修改网卡名和IP参数。执行前赋予执行权限,并使用root权限运行。
#!/bin/bash
# 静态IP配置脚本 - 适用于openEuler 24.03 LTS SP3(桥接模式示例)
# 请根据实际物理网络环境修改变量值
IFACE="ens33" # 网卡连接名
IPADDR="192.168.1.62" # 静态IP地址(需与物理网络同段)
PREFIX="24" # 子网前缀长度
GATEWAY="192.168.1.1" # 物理路由器地址
DNS="192.168.1.1,8.8.8.8" # DNS服务器,逗号分隔
# 配置静态IP
nmcli con mod "$IFACE" ipv4.addresses "${IPADDR}/${PREFIX}"
nmcli con mod "$IFACE" ipv4.gateway "$GATEWAY"
nmcli con mod "$IFACE" ipv4.dns "$DNS"
nmcli con mod "$IFACE" ipv4.method manual
# 重启连接使配置生效
nmcli con down "$IFACE" && nmcli con up "$IFACE"
# 重启NetworkManager服务(可选,确保配置被完整加载)
systemctl restart NetworkManager
echo "静态IP配置完成,当前网络信息:"
ip a show "$IFACE" | grep inet
使用方法:
chmod +x update_static_ip.sh
sudo ./update_static_ip.sh
7.3 附加配置建议
-
IPv6 处理:如果不需要IPv6,建议关闭以避免干扰:
nmcli con mod ens33 ipv6.method disabled nmcli con down ens33 && nmcli con up ens33 -
多网卡环境:先通过
nmcli con show列出所有连接名,为每个需要静态IP的连接分别执行上述nmcli con mod命令,注意修改对应连接名。 -
防火墙与SELinux:若配置正确但服务(如SSH、HTTP)仍无法从外部访问,请检查虚拟机防火墙规则和SELinux状态,并针对所需服务放行端口。
-
桥接模式下的MAC地址绑定:某些企业网络中路由器设置了MAC地址过滤或IP-MAC绑定,若虚拟机需要固定IP,可能需要在路由器管理界面中进行静态IP-MAC绑定,或在VMware虚拟机设置中为网络适配器指定一个固定的MAC地址。
本文档所述内容已在VMware Workstation 17 Pro + openEuler 24.03 LTS SP3 (x86_64) 环境中,采用桥接模式验证通过。按流程操作即可为虚拟机获得与物理网络一致的固定静态IP,彻底告别地址漂移。