VMware的Guest与Host进行通信的三种方式

From My Blog(http://bloglong123king.sourceforge.net/?p=48)

1.概述

VMware为Guest与Host通信提供了以下的设施:

VMnet0:这是VMware 用于虚拟桥接网络下的虚拟交换机;

VMnet1:这是VMware 用于虚拟Host-Only 网络下的虚拟交换机;

VMnet8:这是VMware 用于虚拟NAT 网络下的虚拟交换机;

VMware Network Adapter VMnet1:这是Host 用于与Host-Only 虚拟网络进行通信的虚拟网卡;

VMware Network Adapter VMnet8:这是Host 用于与NAT 虚拟网络进行通信的虚拟网卡;

其中,在Host上面的虚拟网卡(包括与Host-Only和NAT虚拟网络进行通信的网卡)都是通过驱动的形式实现的,而Host本机的物理网卡是用来与虚拟桥接网络进行通信的,这样正好是三个网卡分别与三个虚拟交换机连接,而在Guest里面会同样有三个网卡与这三个虚拟交换机连接,从而实现了Guest与Host之间的通信。

那么三者的区别在哪里呢?

2.桥接

桥接方式下,Guest的虚拟网卡会与Host的物理网卡共同连接到一个虚拟交换机上,因此二者处于相同的地位,如果二者之间要进行通信,二者必须各自拥有不同的IP地址,处于同一子网,并且拥有相同的子网掩码以及相同的网关(该网关是Host物理网卡所处的外部网络的网关),换句话说,虚拟网卡就像是与物理网卡处于同一网段的一个真实的物理网卡一样。因此,虚拟网卡可以与处于该网段的其他网卡之间进行通信,也可以通过网关访问外部网络,当然,这一切的通信流量都是要从物理网卡上通过的。物理网卡相当于在其所在的网段内虚拟化了两个网卡,一个本身,还有一个Guest中的虚拟网卡。

桥接方式下各网卡的IP地址是外部有效的, 或者说有两个外部IP地址。

桥接方式下,虚拟网络的网关就是Host物理网卡所处的外部网络的网关。

3.NAT

NAT方式下,Guest的虚拟网卡也会与Host的虚拟网卡共同连接到一个虚拟交换机上,二者处于相同地位,与二者一同连接到虚拟交换机上的还有NAT服务器,这是Host上的一个后台运行的服务,它被设置为二者的网关,即NAT虚拟网络内的各个网卡如果想要访问外部内容,需要经过NAT服务器(网关)来访问外部,换句话说,NAT服务器为内部网卡提供路由功能(路由功能可以简单地理解为找到到达目的地的下一个物理设备,这里的下一个物理设备就是Host物理网卡所处的外部网络的网关)。

NAT方式下各网卡的IP地址是内部有效的,但是外部的IP地址仍然是Host的物理网卡的IP地址。或者说NAT方式下只有一个外部IP地址。

NAT方式下,虚拟网络的网关(NAT服务器)会提供路由到达Host物理网卡所处的外部网络的网关(或者理解为NAT服务器告诉内部的网卡,如果想访问外网,就把数据发给Host物理网卡的网关,至于下一步Host物理网卡的网关要把数据转发给谁,就由它自己的路由算法来决定了)。

4.Host-Only

Host-Only方式与NAT方式十分类似,只是没有提供类似NAT服务器这样的网关,因此该虚拟网络内部的流量无法外流,即无法与外部进行通信。

Host-Only方式下没有外部IP地址,因此无法与外部进行通信。

Host-Only方式下没有网关。

你可能感兴趣的:(最佳实践,VMware,Bridged,Host-Only,NAT)