VMware 三种网络模式(桥接 / NAT / Host-Only)原理与实验解析

1、概述

  网上关于 VMware 桥接(Bridged)、NAT、仅主机(Host-Only) 三种网络模式的文章很多,但大多停留在概念层面,文字描述较多,拓扑与数据流向不直观,初学者往往"看懂了字,却没真正理解网络是怎么走的"。

  本文将结合 实验用例 + 简化拓扑图,从网络组成和数据转发角度,系统剖析这三种模式的工作原理与核心区别。

  实验环境说明

  • VMware 运行在 Windows Host OS 上
  • VMware 中运行 Ubuntu Linux 虚拟机
  • VMware 属于 Type-2 Hypervisor,即运行在宿主操作系统(Host OS)之上

  以下所有实验,均以该环境为背景。

2、桥接模式

2.1 网络拓扑

  下面是简化后的 桥接 拓扑图:

2.2 工作原理说明

  选择桥接模式后,VMware 会创建一个虚拟交换机 VMnet0,该交换机具有以下特点:

  • Host OS 不可见
  • VMware 将:
    • Host OS 的物理网卡、 虚拟机的虚拟网卡, 同时接入该虚拟交换机

  可以理解为:

虚拟机被"直接插"进了真实的物理局域网

  打开 VMware,点击 "编辑",点击 "虚拟网络编辑器",就可以看到 VMent0 虚拟交换机。

2.3 网络特性总结

在桥接模式下:

  • 虚拟机与 Host OS 处于同一个局域网
  • 虚拟机在网络中的地位 ≈ 一台真实的物理主机
  • 虚拟机可以:
    • 被局域网内其他主机直接访问
    • 直接访问外网

如果 Host OS 的物理网卡 IP 是由局域网中的 DHCP Server 分配的,那么虚拟机的 IP 通常也由同一个 DHCP Server 分配,两者位于同一网段。

3、NAT 模式

3.1 网络拓扑

  下面是简化后的 NAT 模式拓扑图:

3.2 NAT 模式的核心组件

  在 NAT 模式下,除虚拟机网卡运行在虚拟机中外,其余组件均运行在 Host OS 中,包括:

  • 虚拟交换机(VMnet8)
  • 虚拟路由器
    • DHCP Server
    • NAT 转发功能
    • 默认网关(Default Gateway)
  • 物理网卡
    • Host OS 的真实物理网卡
  • VMware Virtual Ethernet Adapter for VMnet8
    • Host OS 可见的虚拟网卡
    • 仅用于 Host OS ↔ 虚拟机通信
  • 虚拟机网卡

下面分别说明这些组件的作用。

3.3 虚拟交换机(VMnet8)

  打开 VMware,点击 "编辑",点击 "虚拟网络编辑器",就可以看到 VMent8 虚拟交换机。

  虚拟交换机的作用很纯粹:为虚拟机、Host OS、虚拟路由器之间提供二层通信环境。

3.4 虚拟路由器

  虚拟路由器是 NAT 模式的核心。

3.4.1 DHCP servier 与网关

  虚拟路由器内置 DHCP Server,用于:

  • 给虚拟机自动分配:
  • IP 地址
  • 子网掩码
  • 默认网关
  • DNS

  为了便于理解,这里将 虚拟交换机虚拟路由器 在拓扑中刻意分开表示:

  打开 VMware,点击 "编辑",点击 "虚拟网络编辑器",就可以看到 VMent8 虚拟交换机。可以设置其 DHCP 配置。


  同样的,我们可以在虚拟机中,查看验证虚拟机被分配的 IP 和默认网关:

3.4.2 NAT 转发机制

  关于 NAT 转发的详细原理,这里不再展开,之前文章已有完整说明:

  网络中的数据包到底是如何转发的

  需要重点记住几个结论:

  • 在纯 NAT 模型下:
    • 外网 无法主动 访问内网主机
    • 只能响应内网已经建立的连接
  • NAT 中的两个关键概念:
    • Inside Local:内网真实 IP
    • Inside Global:NAT 映射后的对外 IP

  因此可以得出一个重要结论: NAT 实际上将虚拟机网络与 Host OS 所在的网络隔离开来。虚拟机自己形成了一个"私有局域网"。

3.5 抓包实验验证 NAT 行为

  我们可以做这样一个实验。在虚拟机中访问外部地址:

bash 复制代码
liangjie@liangjie-virtual-machine:~/Desktop$ curl http://1.1.1.1:80

  在 Host OS 上使用 Wireshark 抓包,观察源 IP 地址。结果如下:

  可以看到:

  • 抓到的数据包源 IP 不是虚拟机 IP
  • 而是 Host OS 物理网卡的 IP

  原因是:虚拟机的数据包经过虚拟路由器时,NAT 将源 IP 从"虚拟机 IP(Inside Local) "转换成了"Host OS 物理网卡 IP(Inside Global)"。

  如果不这样做:

  • Host OS 所在的局域网并不认识虚拟机的私有地址
  • 数据包会被直接丢弃
  • 虚拟机将无法访问外网

3.6 VMware Virtual Ethernet Adapter for VMnet8

   该虚拟网卡具有以下特性:

  • 由 VMware 创建
  • Host OS 可见
  • 仅用于 Host OS ↔ 虚拟机通信

   即使将该网卡禁用:

  • 虚拟机仍然可以访问外网
  • 但无法再通过网络访问 Host OS

  其 IP 地址通常由 VMware 自动分配,并且:与虚拟路由器 DHCP Server 分配给虚拟机的 IP 位于同一网段

4、仅主机模式(Host Only)

4.1 网络拓扑

  下面是 Host-Only 模式的简化拓扑图:

  可以非常直观地看到:虚拟机没有连接任何物理网卡

4.2 网络特性说明

在仅主机模式下:

  • 虚拟机 无法访问外网
  • 虚拟机 只能与 Host OS 通信

VMware 会创建:

  • VMware Virtual Ethernet Adapter for VMnet1

    • Host OS 可见
    • 用于 Host OS ↔ 虚拟机通信
  • VMnet1 虚拟交换机

  • 虚拟 DHCP Server

    其中:

  • VMnet1 虚拟交换机、DHCP Server 对于 Host OS 不可见

  • 虚拟机 IP 由虚拟 DHCP Server 分配

    • 与 VMware Virtual Ethernet Adapter for VMnet1 虚拟网卡处于同一网段

  可以在 Host OS 中和虚拟机中验证,虚拟机网卡 IP 如下:

  VMware Virtual Ethernet Adapter for VMnet1 网卡 IP:

5、三种模式一句话总结

桥接:虚拟机 = 局域网中的一台真实主机

NAT:虚拟机通过 Host OS "借网"上网,外界看不到它

Host-Only:虚拟机被完全关在 Host OS 内部的小局域网中

相关推荐
不昀12 小时前
VOOHU沃虎:如何选择卡侬自锁RJ45的安装方式?面板安装、PCB安装和穿墙式有何区别?
网络·以太网·电子元器件·rj45
济61712 小时前
ROS开发专栏---ROS2 机械臂应用入门(2)---机械臂自动抓取物品实验---适配Ubuntu 22.04
嵌入式硬件·嵌入式·ros2·机器人开发·机器人方向
济61712 小时前
ROS开发专栏---家庭服务机器人饮料递送实验---适配Ubuntu 22.04
嵌入式硬件·嵌入式·ros2·机器人方向
GensAI12 小时前
2026 电话机器人系统并发量与响应延迟实测,6款产品压力测试对比
网络
1892280486112 小时前
NV091固态MT29F16T08EWLCHD8-QJES:C
c语言·开发语言
sdm07042712 小时前
网络原理-5.NAT技术
服务器·网络·智能路由器
AI thought12 小时前
C语言企业项目实战(四)
c语言·单元测试·压力测试·企业项目·工程体系
奥莱维12 小时前
RCU改造避坑指南-蓝牙Mesh不拆墙升级
网络
AI科技星13 小时前
《数术工坊:无穷套娃录》 一部用数学套娃写成的“天书小说”
c语言·开发语言·网络·量子计算·agi
sdm07042713 小时前
网络原理-3.网络层&协议IP
网络·网络协议·tcp/ip