Chinaunix首页 | 论坛 | 博客
  • 博客访问: 336785
  • 博文数量: 245
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: -10
  • 用 户 组: 普通用户
  • 注册时间: 2016-08-24 23:21
文章分类

全部博文(245)

文章存档

2017年(2)

2014年(6)

2013年(1)

2011年(15)

2010年(68)

2009年(153)

分类: WINDOWS

2010-05-26 11:24:27

宿主机没插网线无法与虚拟机通讯如何解决?


方法 、当主机无网卡或有网卡没联网(没插网线)的情况下,可以这样设置:
1、将虚拟机的网卡连接方式设置为NAT方式;
2、查看主机中 VMNET8 (也在网络连接内)的状态,找到它的 IP 地址,比如 192.168.166.1   ;
3、将虚拟机中的 IP 地址设置为与上面 IP 同一个网段,如 192.168.166.100 ,并且要在网关和 DNS 里面填上刚才找到的那个 IP 地址( VMNET8 的 IP 地址)。

经过上面几步设置,无论主机插不插网线,有没有网卡,都可以与主机 PING 通了。但是有一点要注意,当主机联网时,可以直接 PING 主机网卡的地址,如 192.168.1.18 ,没关系,不在一个网段也能 PING 得通的;当主机未联网时,只能 PING 通 VMNET8 的 IP 地址,但是这并不影响我们从主机上获取共享文件夹的内容。


   需要在一台演示用的笔记本上安装演示系统,演示系统需要安装Oracle、Tomcat、Apache等应用。由于笔记本是HP较新的 TouchSmart tx2-1012,操作系统缺省是Vista Home Premium 版本,无法安装Oracle,换成Windows XP 包括触摸屏驱动在内的很多驱动都找不到。同时由于演示系统需要供非技术人员用,需要将演示系统做成相对傻瓜化的方式,要让他们记住从系统服务里启动一堆东 西是很麻烦的事情。如果所有的都做成服务随系统自动启动,Vista系统已经足够缓慢了,再加上Oracle、Tomcat等更慢的让人崩溃。

    于是乎装个VMWARE倒是不错的方案,在虚拟机中装个符合演示系统需要的最简版本的Linux,将demo、Oracle、Tomcat、Apache 等装到虚拟机环境中,所有的应用都做成随系统自动启动。平常不演示时候,不用启动VMWARE,演示时候再启动,这样能够较好平衡日常使用系统性能与傻瓜 化使用的需要。

    只不过又遇到一个问题,平常做演示的时候,很多地方并不具备网络环境。怎样在无网络的环境下让Host与Guest直接能够相互通信呢?

    其实很简单,问题的关键在于理解Vmware的vmnet0、vmnet1、vmnet8。

1、vmnet0

    这是Vmware Bridged模式使用的Network Adapter。在Bridged模式下,Vmware实际上构建了一个也叫vmnet0的虚拟网桥,Host的物理网卡及Guest的虚拟网卡都连接到 虚拟网桥的端口上。与sniffer的原理类似,Vmware通过将Host的物理网卡设置为混杂模式,连接在虚拟网桥上的Host和Guest遵循 Ethernet的CSMA/CD 协议进行信道的争用和共享,这样Host的物理网卡就可以监听多个目标地址的包。

    由于Host和guest都处在同一个Bridged网络中,Host 的物理网卡就可以把目标地址为Guest虚拟机的数据包截获下来,通过VMware Bridge Protocol协议转发给Guest的虚拟网卡,达到了“桥接”的功能。

   由于此种模式只能在具有网络环境的情况下使用,不是我们讨论的重点。

2、vmnet1

    这是Vmware Host-Only模式使用的Network Adapter。在Host-Only模式下,Vmware实际上构建了一个也叫VMnet1的Virtual Network。

    VMnet1 Virtual Network的子网地址为:192.168.205.0,子网掩码为:255.255.255.0,网关地址为:192.168.205.2 。  

    Host通过“VMWare Virtual Ethernet Adapter for VMnet1”连接到虚拟网络。对于VMnet1网络Vmware提供了DHCP服务,这样Host与Guest都可以通过Vmware的DHCP服务器 可以分配到192.168.205.0网段的ip地址。

    缺省情况下在host下VMware Network Adapter VMnet1属性中,vmnet1 的ip地址已经设置为192.168.205.1/255.255.255.0。

   Guest虚拟机的Linux在采用DHCP的情况下,eth0获得的ip地址为192.168.205.128,由于是Host-Only模式,因此缺省情况下没有gateway。

   因此在无网络环境的情况下,Host与Guest要相互通信,可以通过VMnet1的DHCP服务器给host主机的vmnet1 Network Adapter和Guest虚拟主机的Network Adapter分配的ip地址来相互通信。

3、vmnet8

    这是Vmware NAT模式使用的Network Adapter。在NAT模式下,Vmware实际上构建了一个叫VMnet8的Virtual Network。VMnet8 Virtual Network的子网地址为192.168.8.0,子网掩码为255.255.255.0 ,NAT网关地址为192.168.8.2。  

    Host通过“VMWare Virtual Ethernet Adapter for VMnet8”连接到虚拟网络。对于VMnet8网络Vmware提供了DHCP服务,这样Host与Guest虚拟机都可以通过Vmware的DHCP 服务器可以分配到192.168.8.0网段的ip地址。

   在Host 网络链接的VMware Network Adapter VMnet8属性中,Host主机vmnet8的ip地址已经被缺省设置为192.168.8.1/255.255.255.0。

   在Guest虚拟机的Linux采用DHCP的情况下,Guest虚拟机的eth0获得的ip地址为192.168.8.130,gateway地址为 192.168.8.2,实际上就是vmnet8的网关地址。当然也可以不使用DHCP,手工将虚拟机的eth0的ip地址配置为192.168.8.0 网段的ip地址。

   因此在具有网络环境及无网络环境的情况下,host与虚拟机要相互通信,可以通过VMnet8的DHCP服务器给host主机的vmnet8 Network Adapter适配器和虚拟主机的Network Adapter分配的ip地址来相互通信。

总结:

    在无网络环境下,可以采用vmnet1、vmnet8的ip地址来完成host主机与Guest虚拟机之间的通信。相比较而言,NAT模式在具有网络的条件下也能够正常使用,因此在无网络的环境下,采用NAT模式比Host-Only模式方便得多。


文章来自互联网,感谢作者!

阅读(1447) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~