在说到VMware的网络模型之前,先说一下VMware的几个虚拟设备:


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

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

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

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

关于桥接网络:

拓扑图:

Host的物理网卡和Guest的网卡在VMnet0交换机上通过虚拟网桥进行桥接,这也就是说,你的物理网卡和你的Guest的虚拟网卡(注:这个虚拟网卡不等于VMware Network Adapter VMnet1或者VMware Network Adapter VMnet8)处于同等地位,此时的Guest就好像你的Host主机所在的一个网段所在的另外一台机器。打个比方来说:

我的Host的物理网卡配置如下:

IP地址为手工指定方式,网关为192.168.0.1

那么我的Guest就应该和你的Host处于同一个网段,它的配置可为:

同样,IP地址也为手工指定方式,网关也为192.168.0.1

这样的话,IP地址为192.168.0.2的Host和IP地址为192.168.0.158的Guest就可以互通了:
当然,Guest所配置的IP一定要在192.168.0网段没有被占用,而且你的网络管理员允许你使用这个IP地址。
如果在192.168.0网段,存在DHCP服务器,那么Host和Guest都可以把IP地址获取方式设置为DHCP方式。

关于NAT网络

在NAT网络中,会使用到VMnet8虚拟交换机,Host上的VMware Network Adapter VMnet8虚拟网卡被连接到VMnet8交换机上,来与Guest进行通信,但是VMware Network Adapter VMnet8虚拟网卡仅仅是用于和VMnet8网段通信用的,它并不为VMnet8网段提供路由功能,处于虚拟NAT网络下的Guest是使用虚拟的NAT服务器连接的Internet的。
如图:我的VMware Network Adapter VMnet8虚拟网卡的IP地址配置如下:

IP地址是手工指定的,但却不是由我来指定的,而是VMware在安装的时候自动随机指定的一个IP地址(注意,不要修改VMware Network Adapter VMnet8虚拟网卡所在的网络ID,这样的话有可能造成Host和Guest无法通信)
那么,我的NAT网络的虚拟机的IP地址也为192.168.85.0这个网段,其IP地址配置为:

那么,它的IP地址分配方式是DHCP方式指定的,为什么会有DHCP方式呢?这是因为VMware安装之后,会有一台虚拟的DHCP服务器为虚拟机来分配IP地址,实际上它就是一个系统服务而已,在开始--->运行中输入services.msc,就会看到这个服务:

此时可以看到,Guest的IP地址我的VMware Network Adapter VMnet8虚拟网卡处于相同的网络ID,这样的话,ping通就没有问题了:

有一点需要说明的是,在NAT方式的网络中,Guest的Gateway都指向了192.168.X.2,在本例中,X=85,也就是那个虚拟的NAT服务器的地址,这个服务器是一台虚拟的NAT服务器,你可以ping通它,但是却无法访问到这台虚拟机,因为这同样也是一个系统服务:

这时候,你的Guest和Host就可以实现互访了,并且如果你的Host此时已经连接到了Internet,那么你的Guest也就可以连上Internet了。那么VMware Network Adapter VMnet8虚拟网卡在这里扮演了一个什么角色呢?它仅仅是为Host和NAT虚拟网络下的Guest通信提供一个接口,所以,即便Disable掉这块虚拟网卡,Guest仍然是可以上网的,只是Host无法再访问VMnet8网段而已。

关于Host-Only网络:

在Host-Only网络中,Host-Only网络被用来设计成一个与外界隔绝的网络,其实Host-Only网络和NAT网络非常相似,唯一不同的地方就是在Host-Only网络中,没有用到NAT服务,没有服务器为VMnet1做路由,它当然就没有办法访问Internet啦,可是如果我的Host要和Guest通信呢?怎么办?对了!当然就要用到VMware Network Adapter VMnet1这块虚拟网卡了。

如图,这是我的Host的VMware Network Adapter VMnet1虚拟网卡的配置:

那么如果我把Host的网络设置成了Host-Only的话,把它的IP获取方式设置为DHCP获取,它会到虚拟的DHCP服务器上拿到IP,这个IP和我的Host的VMware Network Adapter VMnet1虚拟网卡的IP处于同一个网络ID下:

可以看到,在Host-Only网络下,Guest的Default Gateway被设置为NULL,这是由于没有使用虚拟NAT服务器的缘故,但是,即便使用route add命令加上某个地址做它的路由,它仍然不能访问Internet(实际上也没有地址可加)。这样,我的Guest虽然没有办法访问Internet,但是仍然可以和我的Host进行通信:

至于为何要把Host-Only网络设置为没有Default Gateway的方式,这是VMware的设计使然,它就是为我们来建立一个isolated的网络来使用的,可以看看VMware中关于Host-Only网络的描述:

实施上,如果我们足够BT,也可以在Host上来为VMware Network Adapter VMnet1虚拟网卡来做路由,比如,我们可以用Windows 2000的RRAS来做,这样的话,处于Host-Only网络下的Guest就又可以上网了,他们只需要使用route add命令把自己的Default Gateway改成VMware Network Adapter VMnet1网卡即可,不过这样不推荐,也没有必要J
至此,VMware的3种网络,就应该可以理解了,那么如果嫌VMware为你分配的网络不好,比如它给你分了个192.168.148.0的网络ID,那么你可以到这里来修改,单击VMware上的“Host”菜单,选择“Virtual Network Settings ...”

选择“Host Virtual Network Mapping”中的VMnet1虚拟交换机,单击后边的按钮,选择“Subnet”菜单,即可以调整你的网络ID。

我在这里调整的是VMnet1,那么VMnet8当然也可以用这样的方式来调整
记住,在调整之后你的VMware Network Adapter VMnet1和VMware Network Adapter VMnet8也需要调整到相应的网络ID,不然Host和Guest如何通信呢?
切记,初学者在使用VMware的时候总是喜欢直接修改VMware Network Adapter VMnet1和VMware Network Adapter VMnet8虚拟网卡的IP,以为把它们设置为与Host在一个网段就可以实现通信和上网,实际上在看过这篇文章之后,应该明白,修改这两块虚拟网卡,对于实现网络通信,是多么的没有帮助!

理解 VMWare的3种网络模型 z的更多相关文章

  1. 快速理解VirtualBox的四种网络连接方式

    VirtualBox中有4中网络连接方式: NAT Bridged Adapter Internal Host-only Adapter VMWare中有三种,其实他跟VMWare 的网络连接方式都是 ...

  2. 转-深入理解VMware虚拟网络

    原文出处:http://wangchunhai.blog.51cto.com/225186/381225 VMware Workstation是一款非常不错的虚拟机软件,许多爱好者用VMware Wo ...

  3. Linux安装Tomcat-Nginx-FastDFS-Redis-Solr-集群——【第五集之补充-转载“深入理解VMware虚拟网络”】

    郑重声明,此文太好,按耐不住要保存起来好好研究研究,如果侵权,联系我. 转载自王春海的http://blog.51cto.com/wangchunhai/381225,有所更改. 同时可以参考:htt ...

  4. bridged(桥接模式)、NAT(网络地址转换模式)和host-only(主机模式)-VMware下三种网络配置方式

    VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换模式)和host-only(主机模式).要想在网络管理和维护中合理应用它们,你就应该先了解一下这三种工作模式. 1 ...

  5. VMWare中三种网络连接模式的区别

    VMWare中有桥接.NAT.host-only三种网络连接模式,在搭建伪分布式集群时,需要对集群的网络连接进行配置,而这一操作的前提是理解这三种网络模式的区别. 参考以下两篇文章可以更好的理解: V ...

  6. 【Tools】VMware虚拟机三种网络模式详解和操作

    目录 00. 目录 01. VMware虚拟机三种网络模式 02. Bridged(桥接模式) 03. NAT(地址转换模式) 04. Host-Only(仅主机模式) 00. 目录 @ 参考:htt ...

  7. VMware的三种网络连接方式区别

    关于VMware的三种网络连接方式,NAT,Bridged,Host-Only ,在刚接触的时候通常会遇到主机Ping不通虚拟机而虚拟机能Ping得通主机:主机与虚拟机互不相通等等网络问题.本文就这三 ...

  8. [OC] 理解Bitcode:一种中间代码

    Tip:参考资料 理解Bitcode:一种中间代码 (内容从该博客摘录的.本随笔摘录些简要内容.) App Distribution Guide – App Thinning (iOS, watchO ...

  9. Mysql加锁过程详解(6)-数据库隔离级别(2)-通过例子理解事务的4种隔离级别

    Mysql加锁过程详解(1)-基本知识 Mysql加锁过程详解(2)-关于mysql 幻读理解 Mysql加锁过程详解(3)-关于mysql 幻读理解 Mysql加锁过程详解(4)-select fo ...

随机推荐

  1. usb host和device的关系-ARM 论坛 - 21ic电子技术论坛

    usb host和device的关系 疑问1:我们通常所用的u盘应该是usb device吧?我想这个不用多说,呵呵. ===============恩.============== 疑问2:我们通常 ...

  2. jQuery Ajax(load,post,get,ajax)

    1.load(url, [data], [callback]) 载入远程 HTML 文件代码并插入至 DOM 中. 默认使用 GET 方式 - 传递附加参数时自动转换为 POST 方式.jQuery ...

  3. HDU 5790 Prefix(字典树+主席树)

    Prefix Time Limit: 2000/4000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Sub ...

  4. Spring bean 创建过程源码解析

    在上一篇文件 Spring 中 bean 注册的源码解析 中分析了 Spring 中 bean 的注册过程,就是把配置文件中配置的 bean 的信息加载到内存中,以 BeanDefinition 对象 ...

  5. POJ 3461Oulipo KMP模板

    KMP之所以线性,因为匹配的时候i是不往回走的 我们只用调整j的位置 假设在s中找t 用二元组(i,j)表示s串的[i-j+1,i] 与t串的[1,j]匹配 假设s[i+1]和t[j]匹配上了,就j+ ...

  6. HDU 1159 最长公共子序列(n*m)

    Common Subsequence Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  7. Codeforces Round #336 (Div. 2) A

    A. Saitama Destroys Hotel time limit per test 1 second memory limit per test 256 megabytes input sta ...

  8. hdu 4305 概率dp

    /* 题目大意:有n个房间由n-1个隧道连接起来,从1号房间开始, 每个节点i都有三种可能: 1.被杀死,回到节点1,概率为ki; 2.找到出口,离开迷宫,概率ei; 3.与它相连的有m个房间,到任意 ...

  9. Appium+python自动化12-appium元素定位【转载】

    前言 appium定位app上的元素,可以通过id,name.class这些属性定位到 一.id定位 1.appium的id属性也就是通过UI Automator工具查看的resource-id属性

  10. AC日记——数颜色 bzoj 2120

    2120 思路: 带修改的莫队: 对于离线排序询问的算法,如何修改呢? 每个询问添加一个修改标记: 表示当前询问在第几个修改之后: 然后把修改标记作为第三关键字来排序: 每次更新端点,先更新时间: 块 ...