恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

VMware中Ubuntu网络配置:netplan+systemd-networkd实战指南

  • 首页
  • 资讯中心
  • /
  • VMware中Ubuntu网络配置:netplan+systemd-networkd实战指南

相关资讯

SpringBoot农村老人个人信息管理系统毕业设计完整指南 2026/10/8 14:52:02
Spring Cloud Gateway + Redis限流:外卖API网关稳定性实战 2026/10/8 14:52:02
Flutter鸿蒙适配:resource_portable资源加载与异步IO桥接实战 2026/10/8 14:52:02

最新资讯

营销假视频冲击品牌销量:法务部为何失效,内容矩阵如何破局
硬件设计学习资源全攻略:FPGA、PCB、电源、STM32实战汇总
鸿蒙Flutter应用十万点位碰撞检测优化:rbush R-Tree实战
Flutter跨平台开发实战:在OpenHarmony上跑通Hello World指南
JavaWeb家用电器销售网站:从源码拆解到部署避坑全攻略
供应链数据分析四大关键:从指标口径到可视化看板落地

今日推荐

context-mode实战指南:从全量塞入到结构化裁剪与检索增强
大模型对话上下文管理实战:三种模式与Token优化
抖音用户主页视频数据爬虫详解:点赞、收藏、分享字段抓取与 TaoToken 统一 Key 配置

本周热门

MR25H40CDF + PIC18F65K40:工业记录仪高可靠存储实战
基于STM32的数控恒压恒流电源设计:从硬件到PID调参全解析
LT9211 MIPI重定时器原理与双路扇出实战指南

本月精选

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)

VMware中Ubuntu网络配置:netplan+systemd-networkd实战指南

发布时间:2026/10/8 14:52:02
VMware中Ubuntu网络配置:netplan+systemd-networkd实战指南 简介本资源是一份面向Linux虚拟化初学者与运维新手的VMware环境下Ubuntu网络配置实操指南聚焦NAT模式联网这一高频痛点问题。文档详细拆解了从VMware虚拟网络设置、vmnet8信息获取到Ubuntu系统内IPv4手动配置含IP段192.168.145.X/24、网关与DNS设定、Windows主机服务启用VMware NAT Service与DHCP Service的完整闭环流程附关键界面路径说明与参数取值依据具备强可复现性。资源为单文件Word文档.doc格式体积精简仅63KB内容紧凑无冗余适合作为速查笔记或实验预习材料。目前已有1014人学习下载适合在VMware 7.1.0Ubuntu 10.10典型旧版本环境中快速搭建连通网络亦可迁移参考至其他NAT场景。1. VMware里Ubuntu网络连接设置为什么刚装好的系统连不上网、ping不通主机、甚至ifconfig都看不到eth0你刚在VMware Workstation里装完Ubuntu 22.04或24.04桌面一出来就点开浏览器——空白页ping 8.8.8.8报connect: Network is unreachableip a一看只有lo回环接口ens33或ens32根本不显示更玄的是主机Windows/macOS能正常上网虚拟机却像被掐了网线。这不是Ubuntu装错了也不是ISO坏了而是VMware默认的网络模式与Ubuntu内核驱动、netplan配置、systemd-networkd服务三者没对齐。这个问题高频出现在 VMware Workstation Pro 17、Player 17、Fusion 13 环境下尤其 Ubuntu 22.04 LTS 及之后版本全面启用 netplan systemd-networkd 后传统/etc/network/interfaces写法彻底失效。它不挑人——新手会卡在“连不上”三字上反复重装老手也常因忽略vmxnet3驱动加载或 DHCP 超时阈值而浪费两小时查日志。本文只讲一件事用最小干预、最稳路径在 VMware 里让 Ubuntu 的网络从“黑匣子”变成“可诊断、可复现、可回滚”的确定性状态。不讲原理堆砌不推GUI点点点每一步命令都带验证逻辑和失败兜底。2. 确认VMware网络适配器类型与Ubuntu驱动匹配别让网卡在内核里“隐身”VMware虚拟机的网络能力本质是宿主机通过虚拟化层向Guest OS暴露的一块“假网卡”。这块卡的型号e1000e/vmxnet3/bridged/NAT直接决定Ubuntu能否识别、加载驱动、获取IP。很多人跳过这步直接改配置结果ip link里压根没设备名后续所有操作都是空中楼阁。2.1 查看当前VMware虚拟网卡型号宿主机侧关闭Ubuntu虚拟机不是挂起在VMware Workstation界面右键虚拟机 →Settings → Hardware → Network Adapter。重点看两项Network connection选中NAT mode最常用适合上网SSH访问、Bridged mode需宿主机同网段适合当独立设备、Host-only mode仅宿主互通无外网Network adapter type下拉菜单里必须选VMXNET3推荐或E1000E兼容性更好。绝对不要选E1000老旧Ubuntu 22.04 默认不加载其驱动或Custom除非你明确知道物理网卡绑定规则。提示VMXNET3是VMware优化的高性能驱动支持多队列、TSO/LRO卸载但依赖open-vm-tools中的vmw_vmci和vmxnet3内核模块E1000E模拟Intel千兆网卡驱动内置Linux主线内核兼容性无敌但性能略低。新手首次调试建议先用E1000E排除驱动问题后再切回VMXNET3。2.2 在Ubuntu中验证网卡是否被内核识别启动Ubuntu打开终端执行lspci | grep -i ethernet正常输出应类似02:01.0 Ethernet controller: VMware VMXNET3 Ethernet Controller (rev 01)或若选E1000E02:01.0 Ethernet controller: Intel Corporation 82545EM Gigabit Ethernet Controller (Copper) (rev 01)如果没有任何输出说明VMware没把网卡暴露给Guest回到第2.1步检查设置并重启虚拟机。如果输出有设备但ip a不显示对应接口如ens33继续查驱动lsmod | grep -E (vmxnet3|e1000e)对VMXNET3应看到vmxnet3模块已加载对E1000E应看到e1000e模块已加载。若无输出手动加载# VMXNET3 sudo modprobe vmxnet3 # E1000E sudo modprobe e1000e然后验证接口是否出现ip link show | grep -A1 state UP\|state DOWN | grep -E ^[0-9]:此时应看到类似2: ens33: BROADCAST,MULTICAST,UP,LOWER_UP的行。若仍无说明内核未启用该驱动——Ubuntu 22.04 默认启用极小概率需检查/etc/default/grub中GRUB_CMDLINE_LINUX是否含vmxnet3.disable1罕见一般不用动。2.3 确认网卡命名规则Predictable Network Interface NamesUbuntu 15.04 默认启用可预测网卡名如ens33,enp0s3而非旧式eth0。名字由PCI插槽位置决定每次重启不会变但克隆虚拟机后可能变。查当前实际接口名ip -br link | awk {print $1}输出类似lo ens33记下这个名称后文配置全用它比如ens33千万别硬写eth0——这是90%配置失败的第一原因。3. 用netplan精准控制网络行为NAT/Bridged模式下的DHCP与静态IP双路径Ubuntu 17.10起netplan成为官方网络配置工具取代了/etc/network/interfaces。它用YAML声明式语法由systemd-networkd或NetworkManager后端执行。VMware场景下必须用systemd-networkd后端轻量、无GUI依赖、启动快禁用NetworkManager它会和netplan抢控制权导致配置不生效。3.1 停用NetworkManager启用systemd-networkd# 停用NetworkManager避免冲突 sudo systemctl stop NetworkManager sudo systemctl disable NetworkManager # 启用systemd-networkd sudo systemctl enable systemd-networkd sudo systemctl start systemd-networkd # 验证状态 sudo systemctl status systemd-networkd | grep active (running)注意此操作不影响图形界面联网GNOME/KDE仍可用NetworkManager但VMware虚拟机通常无GUI或用CLI我们走纯systemd路径更稳。若你坚持用GUI可跳过此步但后续netplan配置必须指定renderer: NetworkManager且确保NetworkManager服务运行。3.2 编写netplan配置文件/etc/netplan/01-network-manager-all.yaml进入/etc/netplan/目录备份原文件如有sudo cp /etc/netplan/*.yaml /tmp/netplan-backup.yaml 2/dev/null || echo no yaml found创建新配置以NAT模式为例自动获取IPsudo tee /etc/netplan/01-network-manager-all.yaml EOF # This is the network config written by subiquity network: version: 2 renderer: systemd-networkd ethernets: ens33: # ← 替换为你2.3节查到的实际接口名 dhcp4: true dhcp6: false # 可选设置DHCP超时防卡死 dhcp4-overrides: timeout: 30 EOF保存后应用sudo netplan apply验证# 等10秒查IP ip -4 addr show ens33 | grep inet | awk {print $2} # 查路由 ip route | grep default via # 测试连通性 ping -c 3 8.8.8.8若成功你会看到类似192.168.174.128/24的IPNAT模式典型段default via 192.168.174.2且ping通。3.3 Bridged模式静态IP配置需与宿主机同网段若选Bridged需手动设IP避免DHCP冲突。假设宿主机WiFi网段是192.168.1.0/24网关192.168.1.1给Ubuntu分配192.168.1.100sudo tee /etc/netplan/01-network-manager-all.yaml EOF network: version: 2 renderer: systemd-networkd ethernets: ens33: # ← 替换为你的真实接口名 dhcp4: false addresses: [192.168.1.100/24] gateway4: 192.168.1.1 nameservers: addresses: [8.8.8.8, 114.114.114.114] EOF再sudo netplan apply。验证# IP应为192.168.1.100 ip -4 addr show ens33 | grep inet # 路由应指向宿主机网关 ip route | grep default via 192.168.1.1 # 宿主机ping虚拟机 # Windows: ping 192.168.1.100 # macOS: ping 192.168.1.100关键参数说明addresses: 必须带子网掩码/24表示255.255.255.0不能只写192.168.1.100gateway4: 必须是宿主机在该网段的IP不是VMware虚拟网卡IP查宿主机ipconfigWin或ifconfigmacOSnameservers: DNS服务器避免nslookup google.com失败。4. VMware Toolsopen-vm-tools深度集成解决剪贴板共享、时间同步、分辨率自适应三大刚需很多用户以为“网络通了就万事大吉”结果发现复制粘贴不了、虚拟机时间越跑越慢、窗口拉伸后显示模糊——这些全是open-vm-toolsVMware官方开源工具集没装或没启的锅。它不是可选插件而是VMware虚拟机的基础运行时组件尤其影响网络稳定性如DHCP租期续订、host-only网络发现。4.1 安装open-vm-tools核心包Ubuntu仓库已预装open-vm-tools但常缺桌面集成包。执行sudo apt update sudo apt install -y open-vm-tools open-vm-tools-desktop # 若用minimal安装无GUI只需 # sudo apt install -y open-vm-tools验证安装dpkg -l | grep open-vm-tools # 应看到 open-vm-tools, open-vm-tools-desktop 两行状态 iiinstalled4.2 启用关键systemd服务open-vm-tools由多个服务组成必须启用才能生效# 时间同步服务解决虚拟机时间漂移 sudo systemctl enable vmtoolsd sudo systemctl start vmtoolsd # 剪贴板/拖拽服务需桌面环境 sudo systemctl enable vmtoolsd --now # 分辨率自适应需安装open-vm-tools-desktop后才有 # GNOME/KDE下自动生效无需额外操作验证时间同步# 查vmtoolsd是否在同步 sudo vmtoolsd -n vmusr --cmd info-get guestinfo.toolsVersion # 输出应为数字如 12.3.0非空即正常 # 查时间状态 timedatectl status | grep System clock synchronized # 应为 yes4.3 配置文件微调解决NAT模式下DNS劫持VMware NAT模式会注入自己的DNS192.168.174.2有时导致解析慢或失败。可在netplan中强制指定DNS或修改VMware虚拟网络编辑器打开VMware →Edit → Virtual Network Editor→ 选VMnet8 (NAT)→NAT Settings→ 记下Gateway IP如192.168.174.2在netplan的nameservers中加入该IP作为备用nameservers: addresses: [8.8.8.8, 114.114.114.114, 192.168.174.2]血泪经验某次客户环境DNS总超时查日志发现systemd-resolved在/run/systemd/resolve/stub-resolv.conf里硬编码了127.0.0.53而open-vm-tools的DNS注入被覆盖。最终方案是sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf强制使用systemd-resolved再在netplan里设dhcp4-overrides: { use-dns: false}彻底绕过DHCP DNS。5. 常见问题排查5个真实翻车现场与10分钟自救指南网络配置最怕“试了没用不知哪错”。以下5个问题按发生频率排序每个都附现象→原因→解决三步法实测有效。5.1 现象ip a显示接口DOWNsudo ip link set ens33 up后立刻DOWN原因VMware虚拟网卡被禁用虚拟机设置里取消勾选或vmxnet3/e1000e驱动未加载或接口被systemd-networkd锁定。解决关机 → VMware设置 → Network Adapter → 确保Connected和Connect at power on勾选启动后执行sudo modprobe vmxnet3或e1000e查systemd-networkd日志journalctl -u systemd-networkd -n 50 --no-pager | grep ens33若见Could not set interface ens33 up: Device or resource busy执行sudo systemctl restart systemd-networkd。5.2 现象ping 8.8.8.8通但ping www.google.com超时原因DNS解析失败。常见于/etc/resolv.conf被覆盖、systemd-resolved未启用、或VMware NAT DNS不可达。解决查当前DNScat /etc/resolv.conf若指向127.0.0.53则systemd-resolved在工作测试DNSnslookup google.com 8.8.8.8若通 → DNS服务器问题若不通 → 本地解析链故障临时修复echo nameserver 8.8.8.8 | sudo tee /etc/resolv.conf永久修复在netplan中明确nameservers并执行sudo netplan apply。5.3 现象Bridged模式下虚拟机能上网但宿主机ping不通虚拟机IP原因宿主机防火墙拦截Windows Defender Firewall / macOS Firewall或VMware Bridged模式绑定到错误的物理网卡如绑到禁用的蓝牙网卡。解决WindowsWindows Defender Firewall → Advanced settings → Inbound Rules → New Rule → Program → C:\Program Files (x86)\VMware\VMware Workstation\vmware-vmx.exe → AllowmacOSSystem Preferences → Security Privacy → Firewall → Firewall Options → Allow incoming connections for VMware FusionVMware Bridged设置Virtual Network Editor → VMnet0 → Bridged → Replicate physical network connection state → 下拉选你正在用的网卡如 Wi-Fi。5.4 现象sudo netplan apply报错Error in network definition: Unknown key dhcp4-overrides原因netplan版本过低0.103。Ubuntu 20.04默认netplan 0.101不支持dhcp4-overrides22.04 默认0.104 支持。解决查版本netplan version若 0.103删掉dhcp4-overrides块或升级netplansudo apt install -y python3-netplan # Ubuntu 20.04可手动编译但更推荐换用基础DHCP配置降级写法兼容所有版本ens33: dhcp4: true # 删除 dhcp4-overrides 整块5.5 现象克隆虚拟机后网络完全消失ip a只有lo原因克隆导致MAC地址重复systemd-networkd生成的70-persistent-net.rules已废弃或netplan的match规则失效新网卡被识别为ens34但配置仍指向ens33。解决查新接口名ip -br link | awk {print $1}修改/etc/netplan/01-network-manager-all.yaml中ens33为新名字如ens34清理旧网卡残留可选sudo rm /etc/systemd/network/10-netplan-*.network 2/dev/null sudo systemctl restart systemd-networkd6. 进阶技巧用systemd-networkd实现网络故障自动恢复与多网卡策略路由当你的Ubuntu虚拟机需要同时接入NAT上网和Host-only与宿主机通信两个网络或遇到DHCP服务器偶尔失联时静态配置脚本兜底太糙。systemd-networkd原生支持link-local fallback、多网关优先级、路由表隔离比写shell脚本可靠十倍。6.1 双网卡场景NAT Host-only 共存配置假设ens33→ NAT模式上网DHCP获取192.168.174.xens34→ Host-only模式与宿主机通信静态IP192.168.18.100/24netplan配置如下network: version: 2 renderer: systemd-networkd ethernets: ens33: dhcp4: true dhcp4-overrides: route-metric: 100 # 低优先级网关 ens34: addresses: [192.168.18.100/24] routes: - to: 192.168.18.0/24 via: 192.168.18.1 metric: 50 # 高优先级仅用于该网段 # 禁用默认网关避免抢路 dhcp4: false关键点route-metric控制网关优先级数值越小优先级越高。ens34不设网关ens33设metric: 100确保外网走NATroutes块为ens34单独加一条直连路由保证192.168.18.0/24网段宿主机可达宿主机Host-only网卡IP需设为192.168.18.1VMware Virtual Network Editor → VMnet1 → Subnet IP。验证# 外网 curl -I https://google.com | head -1 # 宿主机假设其Host-only IP为192.168.18.1 ping -c 3 192.168.18.1 # 查路由表 ip route show table main | grep -E (default|192.168.18) # 应见default via 192.168.174.2 dev ens33 metric 100 # 和192.168.18.0/24 dev ens34 proto kernel scope link src 192.168.18.100 metric 506.2 DHCP失联时自动切静态IPLink-Local Fallback当NAT DHCP服务器宕机ens33获取不到IPsystemd-networkd可自动启用169.254.0.0/16链路本地地址保证基础通信。但更实用的是——fallback到预设静态IPens33: dhcp4: true addresses: [192.168.174.200/24] # fallback IP gateway4: 192.168.174.2 # 启用fallback需systemd 246 dhcp4-overrides: use-routes: false注意此功能依赖较新systemdUbuntu 22.04 默认支持。原理是systemd-networkd在DHCP超时后将addresses中的IP作为静态地址启用。6.3 一键诊断脚本把10分钟排查压缩成1条命令把高频检查打包成脚本放在~/bin/netdiag#!/bin/bash echo 网卡识别 lspci | grep -i ethernet echo -e \n 接口状态 ip -br link echo -e \n IP与路由 ip -4 addr show ip route echo -e \n DNS解析 cat /etc/resolv.conf nslookup google.com 8.8.8.8 2/dev/null | head -3 echo -e \n VMware Tools systemctl is-active vmtoolsd sudo vmtoolsd -n vmusr --cmd info-get guestinfo.toolsVersion 2/dev/null echo -e \n 日志线索 journalctl -u systemd-networkd -n 20 --no-pager | grep -E (ens33|error|fail)赋予执行权mkdir -p ~/bin chmod x ~/bin/netdiag # 加入PATH~/.bashrc末尾加export PATH$HOME/bin:$PATH以后只要netdiag所有关键信息一页刷出比翻10个命令快得多。我干这行八年给上百台VMware Ubuntu调过网结论很朴素90%的问题不在Ubuntu而在VMware设置与netplan的耦合点没对齐。记住三个锚点——网卡型号VMXNET3/E1000E、接口名ip -br link、netplan后端systemd-networkd——其他都是变量。每次重装前先lspci | grep eth确认硬件存在再ip a看接口名最后netplan apply基本零翻车。希望帮到你。本文还有配套的精品资源点击获取

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号