深入分析VMware虚拟机的三种组网模式

上传人:hs****ma 文档编号:499097013 上传时间:2023-11-10 格式:DOCX 页数:3 大小:11.04KB
返回 下载 相关 举报
深入分析VMware虚拟机的三种组网模式_第1页
第1页 / 共3页
深入分析VMware虚拟机的三种组网模式_第2页
第2页 / 共3页
深入分析VMware虚拟机的三种组网模式_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《深入分析VMware虚拟机的三种组网模式》由会员分享,可在线阅读,更多相关《深入分析VMware虚拟机的三种组网模式(3页珍藏版)》请在金锄头文库上搜索。

1、大家都知道VMWare的三种组网模式,分别为Bridge, NAT, Host-Only。VMWare认为使用 这三种组网模式则可以搭建出任意的网络拓扑了,事实上也正是如此。如果你对网络很精通, 那么应该很容易就可以理解VMWare的网络配置模式,然而即使如此,VMWare由于只是一个 虚拟机,没有形象的拓扑展示出来。系统吧通过本文给大家简单的给出三种组网模式的形象 化的图示,另外,VMWare的帮助文档中也有相当详细的介绍VMNet的章节。一. Bridge 模式顾名思义,Bridge模式就是桥接模式,虚拟机里面的网卡直接桥接在宿主机的某一 个物理网卡所在的网段。这种方式很多时候是为像我这样

2、的懒人提供的,然而在非DHCP的情况下,很容易造 成IP地址冲突,因此如果不是非要将虚拟机配置在一个网段,就不要用Bridge模式。二. NAT模式所谓NAT模式就是将虚拟机网卡隐藏在了一个NAT设备之后,在外界看来,只能看到 宿主机物理网卡,甚至连NAT设备都看不到,NAT设备默默地转换着虚拟机内部出来的连接 的源地址,如下图所示:然而,有一个细节,那就是上图中的菱形到底是如何实现的,VMWare到底如何在不 同的宿主操作系统下模拟出一个一致的NAT设备的。为了实现的一致和简单,VMWare使用 了用户态连接代理的方式来实现NAT设备,因此NAT设备其实就是一个用户态进程,它来执 行地址转换

3、,如下图所示:所谓的地址转换其实不是真正的IP网络意义上的地址转换,而是一个代理。虚拟机 里面发起的连接在宿主机的NAT进程中完全被截获,然后NAT进程偷梁换柱代替虚拟机里面 的连接单独向目的地发起一个连接,随后和目的地通信,然后将数据转发给虚拟机。我们可 以通过一个简单试验来说明这一点:1. 只允许本地的TCP syn包发出去,禁止任何回包iptables -A OUTPUT -p tcp -tcp-flags SYN SYN -j ACCEPTiptables -A OUTPUT -j DROPiptables -A INPUT -j DROP2. 在虚拟机中建立到百度的tcp连接teln

4、et 74.125.128.94 803. 查看宿主机上的用户态nat进程的文件描述符lsof -p 271 -n.vmnet-nat 271 root 7u IPv4 0xffffff8017b621600t0 TCP 192.168.1.101:49256-74.125.128.94:http (ESTABLISHED).4. 结论虚拟机里面只能发出syn包,然而宿主机里面到74.125.128.94的连接已经建立,说 明nat进程是一个用户态的连接代理。同样的结论还可以通过tcp抓包来观测到,怎么观测 呢?很简单,查看序列号即可,虚拟机里面抓取的数据包的序列号和确认号和宿主机上抓取 的“

5、同样连接”(实际上不是一个连接,而是被代理的)的序列号以及确认号不是一致的,而 我们知道,常规的NAT只修改五元素,不会修改序列号。可见,由于NAT是一个代理,NAT模式可能会造成目的主机TCP连接统计的不准确, 比如上述实验中,虚拟机明明没有连接成功目的地,然而宿主机的NAT进程却已经建立了一 个TCP连接。使用NAT模式,就需要知道它所带来的一切副作用。最后NAT模式的组网拓扑 如下:三. Host-Only 模式这种模式其实是最纯粹的了,虚拟机和宿主机的一块网卡(虚拟网卡)直连,仅此而已, 如下图所示:可是Host-Only模式的虚拟机如何连接外网呢?虚拟机可以将宿主机作为一台路由器来看

6、待,如此一来,剩下的问题就是如何来配置 这个路由器了。以下步骤是必须的:1. 在虚拟机中将默认网关指向宿主机的虚拟网卡vmnet1,如果你不嫌麻烦也可以配 置主机路由2. 打开宿主机的路由功能Linux: sysctl -w net.ipv4.ip_forward=1Mac OS: sysctl -w net.inet.ip.forwarding=1Windows:打开 Tcpip 的 IPEnableRouter 注册表项3. 以下方法选其一3.1. 配置SNAT。Linux使用iptables配置出口网卡的SNAT; Mac OS使用natd以及 ipfw配置;Windows使用网卡的“共

7、享”上网来配置3.2. 配置纯路由,主要是解决回程路由的问题,然而很多外网服务器的路由我们没法 配置,因此这个只适用于实验环境四. vnnetX的含义VMWare在宿主机中虚拟了几块网卡,这些网卡实际上都是一些带有多个port的二层 或者三层网络设备。本文到此为止没有谈到DHCP,实际上每种组网模式都可以有一台DHCP 服务器插入这些虚拟设备的port,为虚拟机里面的网卡分配IP地址。默认情况下,VMWare提供了 vmnet0/1/8三块虚拟网卡,vmnet0外界看不到,它实际 上是一个纯链路层Bridge,该Bridge设备没有任何三层功能,该Bridge的其中一个port 就是宿主机的某一块物理网卡。vmnet1专门给Host-Only来使用,vmnet8专门用于NAT, 这两个虚拟网卡都有三层的功能,都可以配置IP地址,实实在在是一块宿主机上可见的网 卡啊,除此之外,这两块网卡同时也是Bridge设备,只是该Brdige并没有桥接任何宿主机 上的任何物理网卡。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号