虚拟机vmnet0、vmnet1和vmnet8的区别 虚拟网卡概述

vmnet0,实际上就是一个虚拟的网桥

vmnet0,实际上就是一个虚拟的网桥,这个网桥有很若干个端口,一个端口用于连接你的Host,一个端口用于连接你的虚拟机,他们的位置是对等的,谁也不是谁的网关。所以在Bridged模式下,你可以让虚拟机成为一台和你的Host相同地位的机器。


vmnet1,这是一个Host-Only网络模式

vmnet1,这是一个Host-Only网络模式,这是用于建立一个与世隔绝的网络环境所用到的,其中vmnet1也是一个虚拟的交换机,交换机的一个 端口连接到你的Host上,另外一个端口连接到虚拟的DHCP服务器上(实际上是vmware的一个组件),另外剩下的端口就是连虚拟机了。虚拟网卡 “VMWare Virtual Ethernet Adapter for VMnet1”作为虚拟机的网关接口,为虚拟机提供服务。在虚拟机启动之后,如果你用ipconfig命令,你会很清楚的看到,你的默认网关就是指向 “VMWare Virtual Ethernet Adapter for VMnet1”网卡的地址的。(实际上它并不能提供路由,这是VMware设计使然,它是干了除了提供路由之外的一些事情——实际上是我也不知道它干了什 么事情),这里没有提供路由主要表现在没有提供NAT服务,使得虚拟机不可以访问Host-Only模式所指定的网段之外的地址。


vmnet8,这是一个NAT方式,最简单的组网方式了

vmnet8,这是一个NAT方式,最简单的组网方式了,从主机的“VMWare Virtual Ethernet Adapter for VMnet8”虚拟网卡出来,连接到vmnet8虚拟交换机,虚拟交换机的另外的口连接到虚拟的NAT服务器(这也是一个Vmware组件),还有一个口 连接到虚拟DHCP服务器,其他的口连虚拟机,虚拟机的网关即是“VMWare Virtual Ethernet Adapter for VMnet8”网卡所在的机器,废话,这肯定就是你的Host机器啦。同样,用ipconfig也可以看出来,你的虚拟机的默认网关也指向了你的 “VMWare Virtual Ethernet Adapter for VMnet8”虚拟网卡地址。相比之下,可以看出来,NAT组网方式和Host-Only方式,区别就在于是否多了一个NAT服务。


host-only与wmnet1虚拟网卡进行通信
NAT模式与VMnet8虚拟网卡进行通信
桥接使用的是你机器的真实网卡进行上网

  大家已经知道了VMnet1、VMnet8与VMnet0虚拟交换机的关系,用过VMware Workstation或者VMware Server的朋友可能会问:既然VMnet1、VMnet8是交换机,那连接到交换机的网卡(就是虚拟机中使用的网卡)应该是设置什么地址都行的,但为什么在VMware虚拟机中,网卡地址会被固定在192.168.0.0—192.168.255.255的范围呢?大家已经知到VMnet1与VMnet8的子网范围是192.168.x.x的网段。下面将讲解这个问题。  

     首先,VMnet1与VMnet8虚拟交换机(包括没有极少的其他虚拟交换机,如VMnet2、VMnet3—VMnet7、VMnet9等),是可以使用任意网段的地址的。使用192.168.x.x的网段,只是VMware Server在安装的时候,从192.168.x.x地址段中选出两个地址段来用,这两个地址段是随机产生的,并且不同的机器,甚至同一台机器在重复安装时也是不同的。用户可以根据需要或者爱好使用其他的地址,如可以使用172.16.0.0/12或10.0.0.0/8等其他地址范围,也可以使用公网的地址范围。例如,有些用户习惯为VMware虚拟交换机使用表1的地址范围,并且在每次安装VMware Server(或其他VMware产品后)按照表1的规划进行配置,这样可以减轻试验(或者实际应用)中记忆不同Ip地址的负担。 
表1   VMware虚拟网卡使用网络地址规划表   
虚拟网卡名称 使用网段 子网掩码
VMnat1(Host网卡)   192.168.10.0   24
VMnat2(默认没有安装)   192.168.20.0   24
  VMnat3(默认没有安装)   192.168.30.0   24
  VMnat4(默认没有安装)   192.168.40.0   24
  VMnat5(默认没有安装)   192.168.50.0   24
  VMnat6(默认没有安装)   192.168.60.0   24
  VMnat7(默认没有安装)   192.168.70.0   24
VMnat8(NAT网卡)   192.168.80.0   24
  VMnat9(默认没有安装)   192.168.90.0   24
       修改网卡ip之类的就不再烦述。一般在做虚拟机时,都会被建议NAT网络。
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓网络连接简述↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
  Bridge:这种方式最简单,直接将虚拟网卡桥接到一个物理网卡上面,和linux下一个网卡 绑定两个不同地址类似,实际上是将网卡设置为混杂模式,从而达到侦听多个IP的能力.  在此种模式下,虚拟机内部的网卡(例如linux下的eth0)直接连到了物理网卡所在的网络上,可以想象为虚拟机和host机处于对等的地位,在网络关系上是平等的,没有谁在谁后面的问题.  使用这种方式很简单,前提是你可以得到1个以上的地址.对于想进行种种网络实验的朋友不太适合,因为你无法对虚拟机的网络进行控制,它直接出去了.   nat方式:这种方式下host内部出现了一个虚拟的网卡vmnet8(默认情况下),如果你有过做nat服务器的经验,这里的vmnet8就相当于连接到内网的网卡,而虚拟机本身则相当于运行在内网上的机器,虚拟机内的网卡(eth0)则独立于vmnet8.  你会发现在这种方式下,vmware自带的dhcp会默认地加载到vmnet8界面上,这样虚拟机就可以使用dhcp服务.更为重要的是,vmware自带了nat服务,提供了从vmnet8到外网的地址转 换,所以这种情况是一个实实在在的nat服务器在运行,只不过是供虚拟机用的. 很显然,如果你只有一个外网地址,此种方式很合适.  hostonly:  这应该是最为灵活的方式,有兴趣的话可以进行各种网络实验.和nat唯一的不同的是,此种方式下,没有地址转换服务,因此,默认情况下,虚拟机只能到主机访问,这也是hostonly的名字的意义. 默认情况下,也会有一个dhcp服务加载到vmnet1上.这样连接到vmnet8上的虚拟机仍然可以设置成dhcp,方便系统的配置.  是不是这种方式就没有办法连接到外网呢,当然不是,事实上,这种方式更为灵活,你可以使用自己的方式,从而达到最理想的配置,例如:  a.使用自己dhcp服务:首先停掉vmware自带的dhcp服务,使dhcp服务更为统一.  b.使用自己的nat,方便加入防火墙.windows host可以做nat的方法很多,简单的如windows xp的internet共享,复杂的如windows server里的nat服务.  c. 使用自己的防火墙.因为你可以完全控制vmnet1,你可以加入(或试验)防火墙在vmnet1和外网的网卡间.  
从以上可以看出,hostonly这种模式和普通的nat server带整个内网上网的情形类似,因此你可以方便的进行与之有关的实验,比如防火强的设置等。host-only可通过共享pc的网络方式来达到虚拟机访问internet。
posted @ 2019-05-23 15:00  星朝  阅读(4861)  评论(0编辑  收藏  举报