文章目录

  • Bridged 网络
  • NAT 网络
  • Host-Only 网络
  • LAN Segments
  • 我该使用什么网络 ?
  • 对比 VirtualBox 网络


Bridged 网络

虚拟机上布置vxlan网络 虚拟机中的网络_Vmware


Bridged 网络 就是我们通常说的桥接网络。使用这种网络方式,就相当于使用一台 VMware 创建的虚拟交换机 VMnet0 将虚拟机中的网口和宿主机中的网口连接起来,这样就将虚拟机加入到宿主机所在的局域网中,可以直接访问局域网中的其他主机。如果使用的是无线网络,那么虚拟机中的网口就会自动获取到一个IP地址,可以直接访问外网。


NAT 网络

虚拟机上布置vxlan网络 虚拟机中的网络_IP_02


使用这种网络方式,VMware 会将虚拟机加入到一个由虚拟交换机 VMnet8 组成的私有网络里,这个网络里还包括一台虚拟 NAT 设备和一个虚拟的 DHCP 服务器,这个 DHCP 服务器为所有使用 NAT 的网络的虚拟机动态分配 IP 地址。

DHCP 服务器动态分配 IP 使用的地址空间是 net.128 ~ net.254。在我的电脑中,net 是192.168.36.0/24子网 ,那么这个地址空间就是 192.168.36.128 ~ 192.168.36.254,这也是为什么你创建的第一个使用 NAT 网络的虚拟机网口 IP 最后一个字节通常是128的原因。

这个网络中的其他的 IP 地址使用都有规范,不能随意使用。192.168.36.1 是宿主机虚拟网口IP,使用这个 IP 直接与宿主机通信。192.168.36.2 是虚拟 NAT 设备的 IP。192.168.36.3 ~ 192.168.36.127 则作为静态IP 使用。

在虚拟机启动过程中使用 DHCP 获取 IP 地址时,DHCP 服务器除了返回分配的 IP 地址外,还告诉虚拟机使用 IP 192.168.36.2 作为默认网关及 DNS 服务器。这样,从虚拟机发往外网所有的数据报都会到到达 NAT 设备,NAT 设备会将数据报的源IP修改为宿主机的IP,从宿主机网口发送出去。回来的数据报经过 NAT 设备时,它的目的IP地址会被替换成虚拟机的IP地址,这样就能到回到虚拟机了。

同理,所有的 DNS 请求都会发送到 NAT 设备,然后 NAT 设备将它转发到宿主机使用的 DNS 服务器。

使用 NAT 网络,外网中的客户端无法访问虚拟机中的服务,需要配置端口转发才可以。


Host-Only 网络

虚拟机上布置vxlan网络 虚拟机中的网络_NAT_03


使用这种网络方式,VMware 会使用虚拟交换机 VMnet1 将这台虚拟机、一个虚拟 DHCP 服务器和宿主机连接起来组成一个私有网络。DHCP 服务器用于给虚拟机分配IP地址。使用这种网络方式,默认是不能访问外网的,必须在宿主机上设置代理才可以访问外网。


LAN Segments

LAN Segments 是虚拟机之间共享的私有网络,只要虚拟机使用同一个 LAN Segments,那么这些虚拟机之间就可以互相通信。


我该使用什么网络 ?

  • 单纯想外网,使用 NAT 网络
  • 除了上外网外,还需要和宿主机所在局域网内的其他主机通信,使用 Bridged 网络
  • 只想和宿主机通信,使用 Host-Only 网络
  • 只想虚拟机之间通信,使用 LAN Segments

一个虚拟机可以有多个网口,每个网口可以使用不同的网络,可以根据需求灵活组网。


对比 VirtualBox 网络

  • Host-Only 网络:与 VirtualBox 的完全相同
  • LAN Segments:相当于 VirtualBox 的 Internal
  • Bridged 网络:与 VirtualBox 的完全相同
  • NAT 网络:与 VirtualBox 的 NAT 和 NAT Network 不同的是:VMware 中的 NAT 网络可以使虚拟机与宿主机之间通信(VM<->Host)。与 VirtualBox 的 NAT 不同的是:VMware 中的 NAT 网络可以使虚拟机之间通信(VM1<->VM2)。