VMware Ubuntu 22.04 虚拟机从创建到静态网络完整配置指南(含踩坑大全)

📅 2026/7/23 12:47:57
VMware Ubuntu 22.04 虚拟机从创建到静态网络完整配置指南(含踩坑大全)
一、环境说明1. 软件VMware Workstation2. 系统Ubuntu 22.04 LTSServer 无桌面版默认使用 netplan cloud-init3. 虚拟网卡VMnet8 NAT 模式子网192.168.100.0/24网关固定192.168.100.24. 集群规划多台虚拟机统一网段192.168.100.111/112/113二、第一步VMware 虚拟网络前置配置Windows 主机操作1. 打开虚拟网络编辑器顶部菜单【编辑】→【虚拟网络编辑器】→ 右下角【更改设置】管理员权限2. 选中 VMnet8 NAT 模式子网 IP192.168.100.0子网掩码255.255.255.0点击【NAT 设置】记录网关 IP192.168.100.2保持【使用本地 DHCP 服务】勾选后续虚拟机关闭 DHCP 不影响 VMware点击【应用】→【确定】保存3. 虚拟机硬件网卡设置虚拟机设置 → 网络适配器 → 选择【NAT 模式】勾选「已连接、启动时连接」三、第二步Ubuntu 系统安装后彻底关闭 cloud-init 自动网络核心解决双 IP 冲突问题背景Ubuntu 云镜像自带cloud-init开机自动发起 DHCP 获取动态 IP会和我们手动配置的静态 IP 产生双网卡双网段、路由冲突、ping 不通网关。正确操作1. 一键写入禁用配置复制整条执行echo network: {config: disabled} | sudo tee /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg2. 校验文件是否写入成功cat /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg正确输出network: {config: disabled}3. 清理 cloud-init 缓存可选彻底清除旧网络缓存sudo cloud-init clean高频错误 1配置文件放错目录❌ 错误把network: {config: disabled}写到/etc/netplan/*.yamlnetplan 不识别config关键字执行sudo netplan apply直接报错unknown key config✅ 正确仅能放在/etc/cloud/cloud.cfg.d/目录下netplan 和 cloud-init 配置文件完全隔离。高频错误 2单词拼写错误❌config: disable✅config: disabled末尾必须带 d拼写错误 cloud-init 不生效。四、第三步netplan 静态 IP 标准配置Ubuntu 22.04 专用1. 创建静态配置文件sudo vim /etc/netplan/01-static-network.yaml2. 标准完整模板192.168.100.111 示例仅空格缩进禁止 Tab 键network: ethernets: ens33: addresses: [192.168.100.111/24] routes: - to: default via: 192.168.100.2 nameservers: addresses: [114.114.114.114,8.8.8.8] version: 2111、112、113 节点仅修改addresses里最后一段数字网关统一.2文件禁止出现dhcp4: true否则依然会获取动态 IP 产生冲突3. 修复文件权限消除 netplan 权限警告sudo chmod 600 /etc/netplan/01-static-network.yaml4. 加载网络配置生效命令sudo netplan apply警告ovsdb-server.service is not running直接忽略未安装 Open vSwitch 不影响网络。高频错误 3yaml 缩进错误YAML 严格依赖空格Tab 键、少空格、多空格都会导致配置失效出现路由缺失、IP 不生效。解决复制模板原样粘贴不要手动打空格。高频错误 4网段与 VMnet8 不匹配90% 用户 ping 不通网关根源VMware VMnet8 子网是192.168.100.0虚拟机静态 IP 写成192.168.158.x现象ping 网关提示Destination Host Unreachable100% 丢包解决虚拟机 IP 前三段必须和 VMnet8 子网完全一致。五、第四步网络连通性校验全套命令1. 查看网卡 IP确认无多余动态 IPip a✅ 正常ens33 仅存在192.168.100.xxx/24一个 inet 地址无192.168.100.128这类动态地址2. 查看路由仅一条默认路由ip route✅ 正常仅有default via 192.168.100.2 dev ens33 proto static3. 连通测试# 测试虚拟网关内网通断核心 ping 192.168.100.2 -c3 # 测试外网 ping 8.8.8.8 -c3 # 测试 DNS 解析 ping baidu.com -c3六、桥接模式与 NAT 模式网段区别补充知识点1. NAT 模式集群推荐虚拟机网段由 VMware 虚拟网卡定义所有 VMnet8 下虚拟机前三段 IP 必须统一和主机真实网段隔离。2. 桥接模式虚拟机接入物理路由器局域网网段由家里路由器控制可使用192.168.10.x等任意路由器分配网段不依赖 VMnet8 设置。集群实验统一使用 NAT 模式隔离家庭网络IP 稳定不冲突。七、完整踩坑汇总CSDN 重点板块坑 1cloud-init 未关闭一块网卡双 IP、双路由现象ip a同时存在静态 IP DHCP 动态 IP路由两条 defaultping 网关不通解决执行 cloud-init 禁用命令 清理缓存重启虚拟机清除残留动态地址。坑 2cloud-init 禁用配置写到 netplan 文件现象netplan apply报unknown key config解决删除 netplan 里错误内容配置文件固定存放路径/etc/cloud/cloud.cfg.d/。坑 3VMware 网段和虚拟机静态 IP 前三段不一致现象目标主机不可达完全无法访问网关解决统一 VMnet8 子网与虚拟机 IP 网段网关同步修改。坑 4yaml 使用 Tab 缩进、空格错乱现象netplan 配置不生效无报错但 IP/路由不加载解决全程使用空格直接复制标准模板。坑 5混淆 CentOS 与 Ubuntu 网络配置文件CentOS 配置路径/etc/sysconfig/network-scripts/ifcfg-ens33Ubuntu 无此目录统一使用/etc/netplan/*.yaml两套系统网络管理工具不互通。坑 6修改 VMware 虚拟网段后未同步修改所有虚拟机静态 IP现象修改 VMnet8 子网后旧静态 IP 网段不匹配直接断网解决VMware 网段修改后全部虚拟机 netplan 同步更新 IP 与网关。八、集群多节点快速配置模板节点 1111addresses: [192.168.100.111/24] routes: - to: default via: 192.168.100.2节点 2112、节点 3113仅修改最后一段数字网关、DNS 完全复用。