Ubuntu(VMware)虚拟机网络异常排查与解决方案

------以 DolphinScheduler 部署为实际场景

⸻ 1. 背景说明 1.1 使用场景 • 宿主机:Windows(VMware Workstation)

• 虚拟机系统:Ubuntu Server / Cloud Image

• 目标需求: • 虚拟机可访问外网

• 宿主机 / 其他主机可访问虚拟机内 DolphinScheduler Web 服务

• 涉及网络模式: • 桥接(Bridged) • NAT(最终采用)

⸻ 2. 初始问题描述

2.1 网络异常现象

• 虚拟机中执行 ip a:

• 网卡 ens33 存在

• 但无 IPv4 地址

• 执行 nmcli device status:

复制代码
ens33 ethernet 未托管

• 表现为: • 无法访问外网

• 宿主机无法访问虚拟机服务

• DolphinScheduler 无法对外提供服务

⸻ 3. 排查过程回顾(按时间与逻辑)

⸻ 3.1 桥接模式排查

尝试内容 • VMware 网络模式设置为 桥接

• 为虚拟机配置 DHCP / 静态 IP 遇到问题

• DHCP 不稳定,无法获取 IPv4

• 即使与宿主机同网段,仍无法互通

• 在 Wi-Fi、校园网或公司网络环境下尤其容易失败 结论 桥接模式在真实网络环境中依赖外部网络条件,稳定性不可控,不适合作为优先方案。

⸻ 3.2 NetworkManager 路线排查(关键误区) 排查思路

• 使用 NetworkManager 管理以太网(参考 Rocky / CentOS 经验) 具体尝试

• 修改 netplan,指定 renderer: NetworkManager

• 配置: • 90-force-managed.conf

• 10-ethernet-managed.conf

• 重启 NetworkManager 实际结果

• nmcli device status 始终显示:

复制代码
ens33 ethernet 未托管

根本原因(关键结论) Ubuntu Server / Cloud 镜像中,NetworkManager 默认不管理以太网 这是系统设计行为,而非配置错误。

⸻ 4. 技术路线纠正(关键转折点)

4.1 Ubuntu Server 官方网络架构 Ubuntu Server 的标准网络管理路径为:

复制代码
netplan
   ↓
systemd-networkd

而不是:

复制代码
NetworkManager

👉 继续强行使用 NetworkManager 管理以太网是一条死路

⸻ 5. 最终解决方案(正确且稳定)

5.1 VMware 网络模式选择 最终选择:

NAT 模式 理由: • 不依赖外部网络环境

• DHCP 行为稳定 • 不受 Wi-Fi / 校园网 / 公司网限制

• 只需端口映射即可实现外部访问

• 更适合开发、测试、长期运行服务(如 DolphinScheduler)

⸻ 5.2 Ubuntu 网络配置(最终版)

5.2.1 Netplan 配置文件 路径:

复制代码
/etc/netplan/01-networkd.yaml

内容:

复制代码
network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      dhcp4: true

5.2.2 文件权限(非常关键)

复制代码
sudo chown root:root /etc/netplan/01-networkd.yaml
sudo chmod 600 /etc/netplan/01-networkd.yaml

若权限不正确,会出现:

复制代码
Permissions for /etc/netplan/*.yaml are too open

并导致配置无法生效。

5.2.3 启用并启动 systemd-networkd

复制代码
sudo systemctl enable systemd-networkd
sudo systemctl start systemd-networkd

确认状态:

复制代码
systemctl status systemd-networkd

应显示:

复制代码
Active: active (running)

5.2.4 应用网络配置

复制代码
sudo netplan generate
sudo netplan apply
  1. 成功判定标准

6.1 IPv4 获取成功

ip a

复制代码
输出 ens33 inet 192.168.66.128/24

ping -c 3 8.8.8.8

返回成功说明: • DHCP 正常 • 网关正常 • NAT 网络打通

⸻ 7. DolphinScheduler 在 NAT 模式下的访问方案

7.1 核心原则 • DolphinScheduler Web 服务必须监听:

接下来开放端口即可

相关推荐
小辰记事本7 小时前
从零读懂RoCEv2数据包构造:从WQE到线缆上的完整旅程
服务器·网络·网络协议·rdma
小鹏linux8 小时前
Ubuntu 22.04 部署开源免费具有精美现代web页面的Casdoor账号管理系统
linux·前端·ubuntu·开源·堡垒机
北京耐用通信9 小时前
全域适配工业场景耐达讯自动化Modbus TCP 转 PROFIBUS 网关轻松实现以太网与现场总线互通
网络·人工智能·网络协议·自动化·信息与通信
在角落发呆9 小时前
Linux转发配置:解锁网络互联的核心密码
linux·运维·网络
齐潇宇9 小时前
Zabbix 7 概述与配置
linux·zabbix·监控告警
江公望11 小时前
Ubuntu htop命令,10分钟讲清楚
linux·服务器
哎呦,帅小伙哦11 小时前
Linux 时间:从原子钟到 clock_gettime 的每一面
linux·运维·服务器
张小姐的猫11 小时前
【Linux】多线程 —— 线程互斥
linux·运维·服务器·c++
YMWM_12 小时前
UDP协议详解:从原理到Python实践
网络·网络协议·udp
pengyi87101512 小时前
共享 IP 与独享 IP 怎么选?被封后升级方案避坑
网络·网络协议·tcp/ip