🔥个人主页:杨利杰YJlio
❄️个人专栏:《Windows 疑难杂症与工单复盘案例库》 《Sysinternals实战教程》
《WINDOWS教程》 《Windows PowerShell 实战》 《IOS插件分析测试》
《超简单:用Python让Excel飞起来》
🌟让复杂的事情更简单,让重复的工作自动化
VMware Workstation Pro 17.0实战复盘:磁盘扩容、系统盘救援与虚拟网络进阶
- VMware Workstation Pro 17.0 实战复盘:磁盘扩容、系统盘救援与虚拟网络进阶
- 1. 课程内容、实验环境与安全原则
- 1.1 第 17~22 节分别解决什么问题
- 1.2 实验前必须确认的安全边界
- 2. 扩展虚拟磁盘:VMDK 变大不等于 C 盘变大
- 2.1 VMware 中的“扩展”改了什么
- 2.2 为什么截图中没有直接扩展 C 盘
- 2.3 为什么存在快照时无法扩展
- 2.4 磁盘扩容验收
- 3. 系统盘救援:使用已有 VMDK 重建虚拟机
- 3.1 这个方法适合什么故障
- 3.2 模拟配置损坏前先关闭虚拟机
- 3.3 新建虚拟机并挂载旧系统磁盘
- 3.4 第一次开机与结果验证
- 3.5 恢复失败时优先检查什么
- 4. 读懂 VMware 虚拟网络:网卡、VMnet 与出口
- 4.1 VMnet 可以理解为软件交换机
- 4.2 不同 VMnet 如何通信
- 4.3 课程中的网段规划
- 5. 同一 VMnet 仍然 Ping 不通:从地址到防火墙逐层检查
- 5.1 本组连通性实验的地址
- 5.2 同一 VMnet 直接通信需要满足什么
- 5.3 关闭全部防火墙只能用于短时定位
- 5.4 Ping 只能验证 ICMP
- 6. 仅主机与自定义网络:宿主机是否加入是关键区别
- 6.1 仅主机网络包含哪些组件
- 6.2 取消宿主机虚拟适配器后发生什么
- 6.3 将虚拟机切换到 VMnet2
- 7. 桥接与 NAT:两条不同的上网路径
- 7.1 桥接网络
- 7.2 NAT 网络
- 7.3 NAT 网关、宿主机虚拟网卡和 DNS 的区别
- 7.4 VMware NAT Service 停止后会怎样
- 8. NAT 端口映射:通过宿主机 4000 访问虚拟机 3389
- 8.1 端口映射解决什么问题
- 8.2 添加 4000 到 3389 的映射
- 8.3 先确认目标虚拟机的 RDP 服务
- 8.4 宿主机防火墙只放行 TCP 4000
- 8.5 为什么外部测试机改成桥接
- 8.6 本机实际验证的三条访问路径
- 9. 存储与网络的统一排障方法
- 9.1 磁盘扩容失败
- 9.2 同一 VMnet 无法通信
- 9.3 VMnet8 无法上网
- 9.4 NAT 端口映射不通
- 10. 本次实验中最容易记错的知识点
- 11. 实验验收、记录模板与总结
- 11.1 存储部分验收
- 11.2 网络部分验收
- 11.3 建议保存的实验记录
- 11.4 六节课程的关系
VMware Workstation Pro 17.0 实战复盘:磁盘扩容、系统盘救援与虚拟网络进阶
本文整理自VMware Workstation课程第 17~22 节的学习与实操记录,承接前面的虚拟机创建、Windows 10安装、VMware Tools、快照、克隆和虚拟磁盘管理等内容。
本次实验分为存储和网络两条主线。存储部分包括扩展VMDK、在Windows中处理未分配空间,以及使用已有系统磁盘重建虚拟机;网络部分包括VMnet虚拟交换机、仅主机、自定义网络、桥接、NAT和端口映射。
本文使用VMware Workstation Pro 17.0,客户机包括Windows 10和Windows Server 2022。实验中的VMnet8子网为192.168.80.0/24。
地址说明:本文包含两组独立实验。基础连通性实验使用192.168.80.99和192.168.80.100;远程桌面端口映射实验中的目标Windows 10使用192.168.80.121。这些地址不能混在同一张拓扑中照抄。
| 颜色标记 | 文章中的含义 |
|---|---|
| 红色重点 | 高风险操作、易错点和可能导致数据丢失的行为 |
| 绿色重点 | 推荐操作、验证方法和排障顺序 |
| 蓝色重点 | 磁盘、网络和系统行为原理 |
1. 课程内容、实验环境与安全原则
1.1 第 17~22 节分别解决什么问题
| 课次 | 实验主题 | 完成后应掌握的能力 |
|---|---|---|
| 第 17 节 | 扩展虚拟机磁盘 | 区分扩展VMDK与扩展 Windows 分区 |
| 第 18 节 | 使用已有系统磁盘创建虚拟机 | 在配置文件损坏后,使用完好的VMDK恢复启动 |
| 第 19 节 | VMware 虚拟网络 | 理解虚拟网卡、虚拟交换机、宿主机虚拟网卡和物理网卡 |
| 第 20 节 | 仅主机与自定义网络 | 理解宿主机是否加入 VMnet,以及不同 VMnet 默认为什么隔离 |
| 第 21 节 | 桥接与 NAT | 区分直接接入真实局域网与借助宿主机转发上网 |
| 第 22 节 | NAT 端口映射 | 让 VMnet8 外部客户端访问内部虚拟机服务 |
六节课程可以压缩为两条数据路径:
存储路径: VMDK总容量 → Windows识别磁盘 → 分区表 → 文件系统 → C盘或其他卷 网络路径: 虚拟机 → 虚拟网卡 → VMnet虚拟交换机 → 桥接、NAT或路由出口 → 目标网络1.2 实验前必须确认的安全边界
| 操作 | 安全要求 |
|---|---|
| 扩展虚拟磁盘 | 正常关闭虚拟机,不使用挂起代替关机 |
| 删除或合并快照 | 先备份重要数据,确认宿主机有足够空间 |
| 使用已有 VMDK | 保留原磁盘副本,确认是否存在快照链 |
| 修改虚拟网络 | 记录原 VMnet、IP、掩码、网关和 DNS |
| 桥接或端口开放 | 在企业网络中先获得管理员授权 |
| 防火墙排障 | 优先按协议和端口放行,不长期关闭全部防火墙 |
不要在文件资源管理器中手动删除不认识的.vmdk、.vmsd、.vmsn或快照增量文件。基础磁盘、快照磁盘和链接克隆之间可能存在父子依赖,删除其中一环可能导致虚拟机无法启动。
实验记录应保存网络设计逻辑,而不是只记住老师使用的 IP 地址。更换宿主机、公司网络或VMnet子网后,地址必须按当前环境重新规划。
2. 扩展虚拟磁盘:VMDK 变大不等于 C 盘变大
2.1 VMware 中的“扩展”改了什么
在虚拟机设置中选中虚拟硬盘并点击扩展,修改的是VMDK向客户机提供的最大磁盘容量。
扩容前:60GB 扩容后:100GB 新增空间:40GB这一步只让虚拟硬盘从60GB变成100GB,不会自动修改客户机内部的分区表和文件系统。
启动 Windows 并打开磁盘管理后,可以看到磁盘总容量已经接近100GB,原有C:仍为约59.29GB,右侧新增了约40GB未分配空间。
2.2 为什么截图中没有直接扩展 C 盘
截图中的磁盘布局为:
EFI系统分区 → C盘 → 608MB恢复分区 → 40GB未分配空间Windows 磁盘管理只能把基本卷扩展到其右侧紧邻的未分配空间。由于608MB恢复分区位于C:和未分配空间之间,C:无法直接使用这40GB。
本次实验没有删除恢复分区,而是把新增空间创建成新的E:卷。
| 处理方式 | 适用情况 | 注意事项 |
|---|---|---|
| 扩展 C 盘 | 未分配空间紧邻 C 盘右侧 | 使用 Windows“扩展卷”向导 |
| 创建新分区 | 不需要扩大 C 盘,或中间存在恢复分区 | 适合单独存放软件、日志和实验文件 |
| 移动恢复分区 | 必须把空间合并到 C 盘 | 需先备份,并使用支持移动分区的工具 |
| 删除恢复分区 | 已经确认恢复环境和恢复方案 | 风险较高,不能直接照搬课程操作 |
2.3 为什么存在快照时无法扩展
有快照时,当前磁盘不再是单一基础磁盘。新的写入通常进入编号差分磁盘:
基础磁盘.vmdk ↓ 快照增量-000001.vmdk ↓ 当前运行状态快照管理器可以看到当前快照节点。
在存在快照的情况下,磁盘扩展按钮会变为不可用,并提示无法扩展具有快照的虚拟机磁盘。
正确顺序为:
备份重要数据 → 确认不再需要回退 → 在快照管理器中删除或合并快照 → 等待合并完成 → 正常关闭虚拟机 → 扩展VMDK → 启动Windows → 在磁盘管理中处理未分配空间“删除快照”通常会把需要保留的增量数据合并到磁盘链中,不等于删除客户机当前文件。合并过程仍可能需要较长时间和额外空间,不能强制关机或结束 VMware 进程。
2.4 磁盘扩容验收
| 验收项目 | 通过标准 |
|---|---|
| VMware 磁盘容量 | 虚拟机设置中显示新的最大容量 |
| Windows 磁盘容量 | 磁盘管理识别新的磁盘总容量 |
| 空间分配 | 新增空间已经扩展到目标分区,或创建为新卷 |
| 文件系统 | 卷状态正常,可以正常读写 |
| 重启验证 | 重启客户机后容量和盘符仍然正确 |
3. 系统盘救援:使用已有 VMDK 重建虚拟机
3.1 这个方法适合什么故障
本次实验模拟虚拟机配置文件损坏或丢失,但系统虚拟磁盘仍然完好的场景。
虚拟机配置文件损坏 + Windows系统VMDK仍然完整 = 新建虚拟机并挂载旧磁盘尝试恢复一台 VMware 虚拟机通常由多种文件组成:
| 文件或后缀 | 主要作用 |
|---|---|
.vmx | 处理器、内存、固件、网卡和磁盘等虚拟硬件配置 |
.vmdk | 虚拟磁盘描述文件或磁盘数据文件 |
.nvram | 虚拟 BIOS 或 UEFI 变量 |
.vmsd | 快照数据库和元数据 |
.vmsn | 快照状态文件 |
.vmem | 运行或挂起状态下的虚拟内存数据 |
如果原虚拟机存在快照,不能只保留基础.vmdk。必须保留完整差分磁盘链和对应元数据;无法确认链关系时,优先复制整个虚拟机目录。
3.2 模拟配置损坏前先关闭虚拟机
实验开始前,确认虚拟机状态为已关机。截图中还可以看到当前虚拟机使用Workstation 17.x硬件兼容性。
打开虚拟机目录后,可以看到基础磁盘、编号磁盘、快照状态文件、配置文件和日志。
课程通过移除配置类文件并保留磁盘文件,模拟.vmx损坏或丢失。
3.3 新建虚拟机并挂载旧系统磁盘
新建虚拟机时选择自定义(高级),这样可以尽量还原原虚拟机的固件和磁盘控制器。
设置虚拟机名称和保存位置时,最好使用新的目录,避免覆盖原始文件。截图中还出现了“目录已包含同名虚拟机”的提示,恢复时不应直接覆盖。
进入磁盘选择页面后,选择使用现有虚拟磁盘,再浏览到原系统磁盘。
应选择小体积的.vmdk描述文件,不要手动选择-flat.vmdk、-s001.vmdk等数据分片。描述文件记录了磁盘几何结构、分片关系和父磁盘信息。
3.4 第一次开机与结果验证
完成硬件配置后启动虚拟机。如果固件类型、磁盘控制器和磁盘链匹配,原 Windows 系统应开始启动。
出现 Windows 启动画面说明新虚拟机已经识别到旧系统磁盘。
启动过程中,VMware 会在新目录中生成新的.vmx、.nvram、.vmem和日志等文件。
3.5 恢复失败时优先检查什么
| 故障表现 | 重点检查 |
|---|---|
| 找不到可启动设备 | 原系统使用的是 BIOS 还是 UEFI,新虚拟机固件是否一致 |
INACCESSIBLE_BOOT_DEVICE | 原磁盘控制器与新虚拟机的 SATA、SCSI 或 NVMe 类型是否匹配 |
| 提示父磁盘丢失 | 是否遗漏快照增量磁盘或父磁盘路径 |
| 系统启动但网络冲突 | 计算机名、静态 IP、MAC 地址和应用身份是否重复 |
| 复制后需要长期同时运行 | 是否需要使用 Sysprep 泛化系统 |
VMware 询问虚拟机是“移动”还是“复制”时,应根据实际情况选择。原机只是换了目录,选择我已移动该虚拟机;另存为独立副本并准备与原机同时运行,通常选择我已复制该虚拟机,让 VMware 生成新的UUID和MAC。
4. 读懂 VMware 虚拟网络:网卡、VMnet 与出口
4.1 VMnet 可以理解为软件交换机
一台虚拟机不会直接连接互联网。它的数据先经过虚拟网卡,再进入对应的VMnet虚拟交换机。
虚拟机 → 虚拟网卡 → VMnet虚拟交换机 → 桥接、NAT、仅主机或路由器 → 目标网络连接同一虚拟交换机的虚拟机,在地址和防火墙配置正确时可以直接通信;连接不同VMnet的虚拟机,默认互相隔离。
虚拟网络编辑器中的VMnet1、VMnet8等条目,可以看作不同的软件交换机和广播域。
4.2 不同 VMnet 如何通信
两个VMnet之间没有自动转发关系。需要跨网段通信时,必须存在具有两张网卡的路由器或其他三层设备,并在两侧客户机中配置正确网关。
一台虚拟机可以添加多张虚拟网卡,每张网卡连接不同的VMnet,从而模拟路由器、防火墙或多宿主服务器。
下面的拓扑进一步展示了宿主机虚拟网卡、VMnet虚拟交换机、虚拟机、真实无线网络和NAT服务之间的关系。
VMware Network Adapter VMnetX是宿主机加入该虚拟网络使用的虚拟网卡,不是虚拟交换机本身。虚拟机选择哪个VMnet,才决定它连接到哪一台虚拟交换机。
4.3 课程中的网段规划
| 虚拟网络 | 实验子网 | 用途示例 |
|---|---|---|
VMnet1 | 192.168.10.0/24 | 仅主机网络或内部实验网段 |
VMnet2 | 192.168.20.0/24 | 第二个隔离实验网段 |
VMnet3 | 192.168.30.0/24 | 纯自定义网络 |
VMnet8 | 192.168.80.0/24 | NAT 网络 |
宿主机虚拟网卡在各网段中使用了.1地址:
.1和.2不是 VMware 在所有环境中强制使用的固定地址。本文中宿主机VMnet8虚拟网卡为192.168.80.1,NAT 网关为192.168.80.2;其他计算机应以虚拟网络编辑器中的实际设置为准。
5. 同一 VMnet 仍然 Ping 不通:从地址到防火墙逐层检查
5.1 本组连通性实验的地址
基础连通性实验中,两台虚拟机都连接到VMnet8,地址分别为:
| 设备 | IPv4 地址 | 子网掩码 | 默认网关 |
|---|---|---|---|
| Windows 10 | 192.168.80.99 | 255.255.255.0 | 192.168.80.2 |
| Windows Server 2022 | 192.168.80.100 | 255.255.255.0 | 192.168.80.2 |
同时确认两台虚拟机的网络适配器均连接到VMnet8。
5.2 同一 VMnet 直接通信需要满足什么
| 检查项 | 要求 |
|---|---|
| 虚拟网卡状态 | 勾选“已连接”和“启动时连接” |
| 虚拟交换机 | 两台虚拟机连接同一个 VMnet |
| IP 地址 | 处于同一网段且没有重复 IP |
| 子网掩码 | 两端掩码一致,能够正确判断本地网段 |
| Windows 防火墙 | 允许 ICMP 回显请求或相应业务端口 |
初始测试中,两台虚拟机互相Ping均超时。
5.3 关闭全部防火墙只能用于短时定位
课程记录中使用下面的命令暂时关闭三种网络配置文件的防火墙:
Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled False执行后,Ping立即恢复,说明虚拟交换机、IP 地址和掩码配置本身没有问题,阻断发生在 Windows 防火墙。
宿主机随后可以同时Ping通192.168.80.99和192.168.80.100。
长期实验不应保持全部防火墙关闭。完成定位后,应重新启用防火墙,只放行需要的协议和端口。
Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled True需要测试ICMPv4时,可以在“高级安全 Windows Defender 防火墙”中启用:
文件和打印机共享 → 回显请求 - ICMPv4-In也可以根据系统语言搜索相应入站规则:
Get-NetFirewallRule -DisplayName "*ICMPv4-In*" | Enable-NetFirewallRule5.4 Ping 只能验证 ICMP
Ping不通,不代表所有网络服务都不可用;Ping成功,也不能证明远程桌面或 Web 服务已经开放。
| 要验证的服务 | 建议测试 |
|---|---|
| 远程桌面 | Test-NetConnection 192.168.80.121 -Port 3389 |
| HTTP | Test-NetConnection 目标IP -Port 80 |
| HTTPS | Test-NetConnection 目标IP -Port 443 |
| DNS | nslookup 域名 DNS服务器地址 |
6. 仅主机与自定义网络:宿主机是否加入是关键区别
6.1 仅主机网络包含哪些组件
仅主机网络通常包含虚拟交换机、虚拟机和宿主机虚拟网卡:
虚拟机 → VMnet虚拟交换机 → VMware Network Adapter VMnetX → 宿主机虚拟机可以与同一VMnet中的其他虚拟机通信,也可以通过宿主机的VMware Network Adapter VMnetX与物理机通信,但默认没有桥接或NAT出口。
6.2 取消宿主机虚拟适配器后发生什么
在虚拟网络编辑器中取消:
将主机虚拟适配器连接到此网络宿主机对应的 VMware 虚拟网卡会被移除,该VMnet变成纯虚拟机内部网络。
| 网络形式 | 虚拟机之间 | 虚拟机与宿主机 | 默认上网能力 |
|---|---|---|---|
| 仅主机 | 可以通信 | 可以通信 | 无 |
| 纯自定义 VMnet | 同一 VMnet 内可以通信 | 宿主机默认不能直接进入 | 无 |
| NAT | 同一 VMnet 内可以通信 | 宿主机通常可以通信 | 通过 NAT 服务上网 |
| 桥接 | 按真实局域网规则通信 | 通过真实网络通信 | 取决于真实网络 |
6.3 将虚拟机切换到 VMnet2
虚拟机设置中选择自定义:特定虚拟网络,再指定VMnet2。
两台虚拟机都连接VMnet2,并使用192.168.20.0/24内的地址后,具备二层直接通信条件。
切换 VMnet 不会自动修改客户机中手动配置的静态 IP。如果虚拟机从VMnet8 192.168.80.0/24切换到VMnet2 192.168.20.0/24,仍保留192.168.80.x静态地址,就会出现地址与网络不匹配。
下面的失败结果中,宿主机仍在尝试访问旧的192.168.80.100,并由192.168.80.1返回“无法访问目标主机”。这张图同时说明了两件事:目标地址没有按新网段修改,宿主机也没有直接加入目标自定义网络。
使用 DHCP 时,可以重新获取地址:
ipconfig /release ipconfig /renew ipconfig /all宿主机加入 VMnet,只获得与内部虚拟机通信的能力,不代表该 VMnet 自动拥有 Internet 出口。上网仍然需要桥接、NAT 或能够执行路由转发的设备。
7. 桥接与 NAT:两条不同的上网路径
7.1 桥接网络
虚拟机 → VMnet0 → VMware Bridge Protocol → 宿主机物理网卡 → 真实局域网桥接虚拟机像真实局域网中的独立设备。它通常从真实网络获取地址,并拥有独立IP和MAC。局域网中的其他设备能否访问它,还取决于交换网络、无线隔离、访问控制和客户机防火墙。
7.2 NAT 网络
虚拟机 → VMnet8 → VMware NAT Service → 宿主机物理网卡 → 外部网络NAT虚拟机使用私有地址,可以主动访问外部网络;外部客户端默认不能直接访问 VMnet8 中的客户机,需要端口映射或其他转发机制。
| 对比项 | 桥接 | NAT |
|---|---|---|
| 虚拟机地址 | 真实局域网地址 | VMnet8 私有地址 |
| 对局域网的可见性 | 通常像一台独立真实设备 | 默认隐藏在宿主机 NAT 后面 |
| 主动访问外部网络 | 取决于真实网络策略 | 通过 VMware NAT Service |
| 外部主动访问虚拟机 | 策略允许时可直接访问 | 通常需要端口映射 |
| 适合场景 | 服务器、局域网访问、网络设备实验 | 软件安装、系统更新、普通客户端实验 |
7.3 NAT 网关、宿主机虚拟网卡和 DNS 的区别
本文VMnet8的关键地址如下:
VMnet8子网:192.168.80.0/24 宿主机VMnet8虚拟网卡:192.168.80.1 NAT网关:192.168.80.2虚拟网络编辑器中的 NAT 设置显示网关为192.168.80.2。
宿主机VMware Network Adapter VMnet8使用的是192.168.80.1。
| 组件 | 职责 |
|---|---|
| NAT 网关 | 接收客户机发往非本地网段的流量,并交给 VMware NAT 服务转发 |
| 宿主机 VMnet8 虚拟网卡 | 让宿主机成为 VMnet8 中的一台设备 |
| DNS 服务器 | 把域名解析为 IP 地址 |
DNS 地址不必与默认网关相同。某些 NAT 环境会通过网关提供 DNS 代理,因此两者可能相同;企业网络也可能要求使用内部 DNS。应以 DHCP 下发和实际网络设计为准。
7.4 VMware NAT Service 停止后会怎样
宿主机中的VMware NAT Service负责 VMnet8 的地址转换。
实验中停止该服务后,VMnet8 虚拟机无法继续通过 NAT 访问外部网络;重新启动服务后恢复。
企业网络可能拦截ICMP,因此上网验证不应只使用Ping。可以分别验证网关、HTTPS 和 DNS:
ping 192.168.80.2 Test-NetConnection www.microsoft.com -Port 443 nslookup www.baidu.com8. NAT 端口映射:通过宿主机 4000 访问虚拟机 3389
8.1 端口映射解决什么问题
VMnet8 中的虚拟机可以主动访问外部网络,但外部客户端默认不能直接进入私有网段。端口映射会在宿主机上开放一个入口端口,再把连接转发给内部虚拟机。
客户端访问宿主机TCP 4000 → VMware NAT Service → Windows 10虚拟机192.168.80.121:3389下面的黑板图用于说明原理,其中的192.168.80.128和192.168.2.15是示例地址;本文实际实验地址以192.168.80.121和10.11.120.28为准。
8.2 添加 4000 到 3389 的映射
在虚拟网络编辑器中选择VMnet8 → NAT 设置 → 添加,填写:
| 配置项 | 本次设置 |
|---|---|
| 协议 | TCP |
| 宿主机端口 | 4000 |
| 虚拟机 IP | 192.168.80.121 |
| 虚拟机端口 | 3389 |
| 目标服务 | Windows 远程桌面 RDP |
3389是客户机内部的远程桌面端口,4000是宿主机对外提供的映射入口。映射不会把虚拟机自身的 RDP 端口改为4000。
8.3 先确认目标虚拟机的 RDP 服务
目标Windows 10必须启用远程桌面,并允许目标账号通过 RDP 登录。
先在 VMnet8 内部测试真实服务端口:
Test-NetConnection 192.168.80.121 -Port 3389只有3389正常,才继续排查4000映射。否则应先检查Remote Desktop Services、用户权限和客户机防火墙。
8.4 宿主机防火墙只放行 TCP 4000
课程中为了快速验证,曾暂时关闭宿主机 Windows 防火墙。
该做法只能用于短时定位,不能作为最终配置。正式实验应重新启用防火墙,并创建限定范围的TCP 4000入站规则。
New-NetFirewallRule ` -DisplayName "VMware NAT RDP 4000" ` -Direction Inbound ` -Protocol TCP ` -LocalPort 4000 ` -Action Allow ` -Profile Private在企业网络中,还应通过-RemoteAddress限制为经过授权的测试客户端地址。
8.5 为什么外部测试机改成桥接
课程把Windows Server 2022改为桥接,是为了让它离开 VMnet8,模拟一台位于“VMnet8 外部”的客户端。
被访问的 Windows 10 仍然必须留在 VMnet8。如果目标机也改成桥接,原来的4000 → 192.168.80.121:3389规则就失去了目标。
8.6 本机实际验证的三条访问路径
宿主机真实IP:10.11.120.28/21 Windows 10虚拟机:192.168.80.121:3389 VMnet8子网:192.168.80.0/24 端口映射:10.11.120.28:4000 → 192.168.80.121:3389下面的示意图汇总了同一目标的三条访问路径。图中 Windows Server 的192.168.80.122是 DHCP 示例地址,实际实验应以ipconfig查询结果为准。
| 访问来源 | 连接目标 | 是否经过 NAT 映射 |
|---|---|---|
| 与目标同在 VMnet8 的 Windows Server | 192.168.80.121:3389 | 否,内部直接访问 |
| 宿主机直接访问 VMnet8 目标 | 192.168.80.121:3389 | 否,借助宿主机 VMnet8 虚拟网卡 |
| 宿主机验证本地端口映射 | 127.0.0.1:4000 | 是 |
| 宿主机通过真实网卡地址验证 | 10.11.120.28:4000 | 是 |
| 另一台经过授权的局域网客户端 | 10.11.120.28:4000 | 是 |
可以按顺序执行:
Test-NetConnection 192.168.80.121 -Port 3389 Test-NetConnection 127.0.0.1 -Port 4000 Test-NetConnection 10.11.120.28 -Port 4000 mstsc /v:10.11.120.28:4000远程桌面已经出现凭据窗口,说明客户端成功连接到了 RDP 服务入口。
记忆时只保留下面两条:
VMnet8内部访问 → 虚拟机IP:3389 VMnet8外部访问 → 宿主机IP:4000 → VMware NAT Service → 虚拟机IP:33899. 存储与网络的统一排障方法
9.1 磁盘扩容失败
确认虚拟机是否彻底关机 → 检查是否存在快照 → 检查宿主机剩余空间 → 确认VMDK类型和磁盘状态 → 执行扩展 → 启动Windows并重新扫描磁盘 → 检查未分配空间与目标分区的位置关系| 现象 | 判断方向 |
|---|---|
| VMware 扩展按钮灰色 | 虚拟机仍在运行、挂起,或存在快照 |
| VMware 显示 100GB,Windows 仍显示 60GB | 重新扫描磁盘或检查是否挂载了正确磁盘 |
| Windows 能看到未分配空间,但 C 盘无法扩展 | 检查中间是否存在恢复分区 |
9.2 同一 VMnet 无法通信
检查网卡已连接 → 确认两端连接同一VMnet → 检查IP和子网掩码 → 检查是否存在重复IP → 检查Windows防火墙 → 再测试具体业务端口9.3 VMnet8 无法上网
ping 192.168.80.2 Test-NetConnection www.microsoft.com -Port 443 nslookup www.baidu.com Get-Service "VMware NAT Service" Get-Service "VMware DHCP Service"| 测试结果 | 可能位置 |
|---|---|
| 连 NAT 网关都不通 | 虚拟网卡、VMnet8、IP、掩码或客户机防火墙 |
| 网关通,HTTPS 不通 | VMware NAT Service、宿主机外网、VPN 或企业策略 |
| HTTPS 通,域名不能解析 | DNS 配置或 DNS 访问策略 |
9.4 NAT 端口映射不通
Test-NetConnection 192.168.80.121 -Port 3389 Get-Service "VMware NAT Service" Get-NetTCPConnection -State Listen -LocalPort 4000 Test-NetConnection 127.0.0.1 -Port 4000 Test-NetConnection 10.11.120.28 -Port 4000| 结果 | 重点检查 |
|---|---|
192.168.80.121:3389不通 | 目标虚拟机 RDP 服务、用户权限和客户机防火墙 |
3389通,但127.0.0.1:4000不通 | NAT 映射规则、端口占用和 VMware NAT Service |
本机4000通,物理网卡地址不通 | 宿主机防火墙和监听范围 |
| 宿主机测试成功,其他电脑失败 | 企业 ACL、终端隔离、无线隔离和安全策略 |
10. 本次实验中最容易记错的知识点
| 容易误记的说法 | 正确理解 |
|---|---|
| VMDK 扩展后 C 盘会自动变大 | 还要在客户机磁盘管理中扩展分区或创建新卷 |
| 删除快照就是删除当前客户机数据 | 通常会合并增量磁盘,但仍需备份并等待合并完成 |
| 选择任意 VMDK 都能恢复原系统 | 应选择正确描述文件,并保持固件、控制器和完整磁盘链兼容 |
| 配置文件丢失时只复制最大的 VMDK | 存在快照时必须保留完整父子磁盘链 |
| Ping 不通就关闭全部防火墙 | 关闭防火墙只适合短时定位,最终应精确放行 ICMP 或业务端口 |
| 切换 VMnet 后静态 IP 会自动改变 | 静态 IP 必须手动修改,DHCP 客户机需要重新获取地址 |
| DNS 必须和默认网关相同 | 两者职责不同;地址相同通常是 DNS 代理设计 |
| 宿主机加入 VMnet 后该网络就能上网 | 宿主机加入只提供内部通信,上网还需要桥接、NAT 或路由出口 |
| 桥接和 NAT 不能出现在同一个实验中 | 不同虚拟机可以分别使用;必须明确目标虚拟机实际位于哪条路径 |
| 端口映射后虚拟机的 RDP 端口变成 4000 | 虚拟机仍监听 3389,4000 只是宿主机的外部入口 |
| 老师的 IP 地址可以直接复制 | 应复制拓扑和计算方法,地址必须适配当前网络 |
分析 VMware 网络时,先确认源设备、目标设备和中间经过的组件。只要这三项没有混淆,桥接、NAT、仅主机和端口映射就能分开判断。
11. 实验验收、记录模板与总结
11.1 存储部分验收
| 验收项目 | 通过标准 |
|---|---|
| 理解磁盘层次 | 能够区分 VMDK、磁盘、分区和文件系统 |
| 扩展 VMDK | 能够在无快照、已关机的状态下完成扩展 |
| 处理新增空间 | 能够判断扩展分区还是创建新卷 |
| 识别恢复分区阻挡 | 能够解释 C 盘扩展卷变灰的原因 |
| 使用已有 VMDK | 能够新建虚拟机并挂载旧系统盘 |
| 识别恢复风险 | 能够检查固件、磁盘控制器和快照链 |
11.2 网络部分验收
| 验收项目 | 通过标准 |
|---|---|
| 画出通信路径 | 能够从虚拟机画到 VMnet、出口和目标网络 |
| 理解 VMnet | 能够解释虚拟网卡、虚拟交换机和宿主机虚拟网卡 |
| 区分四种网络 | 能够区分桥接、NAT、仅主机和自定义网络 |
| 判断同网段通信 | 能够检查 VMnet、IP、掩码、重复 IP 和防火墙 |
| 按端口排障 | 会使用Test-NetConnection验证业务服务 |
| 解释 NAT 映射 | 能够解释4000 → 192.168.80.121:3389 |
| 选择访问地址 | 能根据访问来源选择虚拟机 IP 或宿主机 IP |
| 遵守网络边界 | 不在未授权企业网络中执行桥接和入站开放实验 |
11.3 建议保存的实验记录
| 记录项目 | 示例内容 |
|---|---|
| VMware 版本 | VMware Workstation Pro 17.0 |
| 客户机系统 | Windows 10 / Windows Server 2022 |
| 虚拟磁盘变化 | 60GB → 100GB |
| Windows 分区结果 | 新增40GB创建为E: |
| 固件类型 | UEFI或BIOS |
| 磁盘控制器 | NVMe / SATA / SCSI |
| VMnet8 子网 | 192.168.80.0/24 |
| 宿主机 VMnet8 地址 | 192.168.80.1 |
| NAT 网关 | 192.168.80.2 |
| RDP 目标 | 192.168.80.121:3389 |
| 宿主机映射入口 | 10.11.120.28:4000 |
| 验证结果 | 内部直连、本机映射、物理网卡映射是否成功 |
11.4 六节课程的关系
磁盘扩容: 先扩展VMDK,再处理Windows分区 系统盘救援: 保留完整磁盘链,新建虚拟机并挂载旧VMDK 虚拟网络: 虚拟机通过虚拟网卡接入VMnet虚拟交换机 仅主机: 虚拟机与宿主机内部通信,默认没有外网出口 自定义网络: 可以只保留虚拟交换机和虚拟机,宿主机不直接加入 桥接: 虚拟机直接进入真实局域网 NAT: 虚拟机使用私有地址,借宿主机转发访问外网 NAT端口映射: 外部客户端访问宿主机端口, VMware再把连接转发给内部虚拟机服务处理磁盘问题时,先区分VMDK、分区和文件系统;处理网络问题时,先确定虚拟机连接哪个VMnet,再确认出口是桥接、NAT 还是路由器。
入站访问则按固定顺序验证:目标服务是否监听、客户机防火墙是否放行、NAT 规则是否正确、宿主机端口是否监听、宿主机防火墙和外部网络策略是否允许。
点击回到顶部