VMware Workstation的3种网络模式(bridged、NAT、Host-only)的介绍
0、实验环境
VMware Workstation版本:7.0.0build-203739
宿主机(Host):Windows 7 SP1
虚拟机(Guest):CentOS 5.5
1、前言
我在网上找到2篇关于介绍VMwareVirtual Network(见最后面的参考资料),这里我就不赘述有关知识,只是给出虚拟机和宿主机的通信方法(使用Ping)和虚拟机上网(Internet)的情况,作为自己的笔记,仅供参考。
首先,VMware默认有以下的网络:
VMnet0:虚拟桥接(bridged)网络;
VMnet1:虚拟Host-Only网络;
VMnet8:虚拟NAT网络;
VMware Network Adapter VMnet1:Host用于与Host-Only虚拟网络进行通信的虚拟网卡;
VMware Network Adapter VMnet8:Host用于与NAT虚拟网络进行通信的虚拟网卡。
2、桥接模式(bridged)
由上图可以看到,VMnet0网络增加一个VirtualEthernet Switch,虚拟机就像是局域网中的一台独立的主机,和宿主机在同一网络中。如果在网络中存在DHCP服务器,那么虚拟网卡同样可以从DHCP服务器上获取IP地址。
在VMware中,找到“Edit”->“Virtual NetEditor…”,将“Bridged to”设置为我的无线网卡为例子,如下
然后在虚拟机的Settings中,将Network Adapter设置为Bridged,即使用VMnet0网络,如下
注意,虚拟机的配置修改后,需要Power Off再启动才生效。
由于虚拟机和宿主机在同一网络中,应该可以互相ping通的。但是可能会出现下面的情况,如下
这时需要把Cent OS的防火墙和Windows的防火墙都关闭了,如下
完成后,Cent OS和Windows都可以互相ping通了,如下
补充几点:
(1)VMnet0没有使用VMwareNetwork Adapter VMnet1和VMware Network Adapter VMnet8这2块虚拟网卡,因此虚拟网卡都被禁用了,和上面互相ping没有关系。
(2)虽然虚拟机的IP地址和宿主机的IP地址不一样,且在同一网络,但是虚拟机上网是依赖宿主机的物理网卡,因此禁用无线网卡或断开无线连接,虚拟机都连上不了网。
3、网络地址转换模式(NAT)
在NAT网络中,会使用到VMnet8虚拟交换机(即使用VMnet8网络),Host上的VMwareNetwork Adapter VMnet8虚拟网卡被连接到VMnet8交换机上,来与Guest进行通信,但是VMware Network Adapter VMnet8虚拟网卡仅仅是用于和VMnet8网段通信用的,它并不为VMnet8网段提供路由功能,处于虚拟NAT网络下的Guest是使用虚拟的NAT服务器连接Internet的。
因此,虚拟机使用VMnet8网络上网(连接Internet),不需要VMwareNetwork Adapter VMnet8这块虚拟网卡,如下
但是,禁用VMwareNetwork Adapter VMnet8后,Host不能访问虚拟机的IP地址,而虚拟机可以访问Host的物理网卡的IP地址,如下
可见虚拟NAT服务器使用192.168.0.27地址去访问Internet,而且屏蔽了NAT内部的虚拟机的IP地址。
4、Host-only模式
根据别人的资料,如下
“在Host-Only网络中,Host-Only网络被用来设计成一个与外界隔绝的网络,其实Host-Only网络和NAT网络非常相似,唯一不同的地方就是在Host-Only网络中,没有用到NAT服务,没有服务器为VMnet1做路由,它当然就没有办法访问Internet啦,可是如果Host要和Guest通信呢?怎么办?当然就要用到VMware Network Adapter VMnet1这块虚拟网卡了。”
我的实验结果是Host-only模式下虚拟机连不上Internet,虚拟机不能访问Host的物理网卡IP地址,但是访问VMwareNetwork Adapter VMnet1的IP地址,同时Host可以访问虚拟机的IP地址,如下
5、总结
(1)Bridged模式中,虚拟机就像是局域网中的独立的主机,和Host在同一网段,因此虚拟机可以用作服务器,让Host去访问,其他2种模式是做不到的。
同时,在Bridged模式下,虚拟机要上网,就和主机情况一样,即主机需要拨号上网,则虚拟机要也拨号上网(我属于校园网,测试过锐捷可以在虚拟机中拨号成功-:));如果主机连路由器上网,则虚拟机直接可以上网了。
(2)NAT模式中,虚拟机被虚拟DHCP服务器分配了IP,虚拟机共享Host的IP,虚拟机可以访问物理网卡的IP,而Host访问不了虚拟机的IP,因为NAT的缘故。如果NAT模式下,虚拟机上不了网,考虑是不是虚拟机的IP和主机所连的路由器所分配的IP有冲突(我遇到这种情况)。
(3)Host-only模式中,虚拟机不能上网,只能和Host通信。我觉得这种网络模式在VMware中用的少,也不多啰嗦了。
参考资料:
1、http://blog.163.com/security_help/blog/static/24510903201131425048623/
2、http://www.cnblogs.com/xiaochaohuashengmi/archive/2011/03/15/1985084.html