主机与VMware虚拟机通信

1、什么是虚拟机软件

虚拟机软件可以在一台电脑上模拟出来若干台PC,每台PC可以运行单独的操作系统而互不干扰,可以实现一台电脑“同时”运行几个操作系统,还可以将这几个操作系统连成一个网络。
在一台电脑上安装了Win2000 server,再在Win2000 server上安装虚拟机软件VMWare,利用VMWare模拟出来3台PC,在这3台PC上分别运行RedHat7.2、Win98和Solaris 8 for x86操作系统。包括Win2000在内,这4个操作系统同时在一台电脑上运行,互不干扰,并且同在一个局域网内。

目前PC上的虚拟机软件有下述两个:

VMWare https://www.360docs.net/doc/113671420.html,
Virtual PC https://www.360docs.net/doc/113671420.html,

本文主要介绍VMWare。

使用虚拟机的好处
================

1、如果要在一台电脑上装多个操作系统,不用虚拟机的话,有两个办法:一是装多个硬盘,每个硬盘装一个操作系统。这个方法比较昂贵。二是在一个硬盘上装多个操作系统。这个方法不够安全,因为硬盘MBR是操作系统的必争之地,搞不好会几个操作系统同归于尽。而使用虚拟机软件既省钱又安全,对想学Linux和unix的朋友来说很方便。

2、虚拟机可以在一台机器上同时运行几个操作系统,是SOHO开发一族的必备工具。有了虚拟机,在家里只需要一台电脑,或出差时只带着一个笔记本,就可以调试C/S、B/S的程序了。

3、利用虚拟机可以进行软件测试。

使用虚拟机的硬件要求
====================

虚拟机毕竟是将两台以上的电脑的任务集中在一台电脑上,所以对硬件的要求比较高,主要是CPU、硬盘和内存。目前的电脑CPU多数是PIII以上,硬盘都是几十G,这样的配置已经完全能满足要求。关键是内存。内存的需求等于多个操作系统需求的总和。现在的内存已经很便宜,也不成为问题了。

虚拟机的运行环境
================

VMWare可运行在windows(WinNT以上)和Linux操作系统上。

Virtaul PC可运行在windows(Win98以上)和MacOS上。

运行虚拟机软件的操作系统叫Host OS,在虚拟机里运行的操作系统叫Guest OS。

VMWare的使用经验
================

1、支持的Guest OS:
VMWare支持如下Guest OS:
MS-DOS、Win3.1、Win9x/Me、WinNT、Win2000、WinXP、https://www.360docs.net/doc/113671420.html,、Linux、FreeBSD、NetWare6、Solaris x86。
不支持的Guest OS:
BeOS、IBM OS/2 and OS/2 Warp、Minix、QNX、SCO Unix、UnixWare。

2、VMWare模拟的硬件
VMWare模拟出来的硬件包括:主板、内存、硬盘(IDE和SCSI)、DVD/CD-ROM、软驱、网卡、声卡、串口、并口和USB口。VMWare没有模拟出显卡。VMWare为每一种Guest OS提供一个叫做vmware-tools的软件包,来增强Guest OS的显示和鼠标功能。

3、VMWare模拟出来的硬件是固定型号的,与Host OS的实际硬件

无关。比如,在一台机器里用VMWare安装了linux,可以把整个Linux copy到其他有VMWare的机器里运行,不必再安装。

4、VMWare可以使用ISO文件作为光盘。比如从网上下载的Linux ISO文件,不需刻盘,可直接安装。

5、VMWare为Guest OS的运行提供三种选项:
(1) persistent
Guest OS运行中所做的任何操作都即时存盘
(2) undoable
Guest OS shutdown时会问是否对所做的操作存盘
(3) nonpersistend
Guest OS运行中所做的任何操作,在shutdown后等于没做过。
如果要进行软件测试或试验,这是非常有用的功能,可以尽情地玩,把
Guest OS搞死无限次都不怕。

6、VMWare的两种网络设置方式:
(1)Bridged方式
用这种方式,Guest OS的IP可设置成与Host OS在同一网段,Guest OS相当于网络内的一台独立的机器,网络内其他机器可访问Guest OS,Guest OS也可访问网络内其他机器,当然与Host OS的双向访问也不成问题。

(2)NAT方式
这种方式也可以实现Host OS与Guest OS的双向访问。但网络内其他机器不能访问Guest OS,Guest OS可通过Host OS用NAT协议访问网络内其他机器。

NAT方式的IP地址配置方法:Guest OS先用DHCP自动获得IP地址,Host OS里的VMWare services会为Guest OS分配一个IP,之后如果想每次启动都用固定IP的话,在Guest OS里直接设定这个IP即可。

一般来说,Bridged方式最方便好用。但如果Host OS是win2000而网线没插,网络很可能不可用(大部分用PCI网卡的机器都如此),此时就只能用NAT方式。

7、VMWare用Host OS的文件来模拟Guest OS的硬盘。一个Guest OS的硬盘对应一个或多个Host OS里的文件。如果往Guest OS里写入100M的文件,Host OS里虚拟硬盘文件就增大100M。在Guest OS里删除这100M文件,Host OS里虚拟硬盘文件不会减小。下次往Guest OS里写文件的时候,这部分空间可继续利用。vmware-tools里还提供shrink功能可以立刻释放不用的空间,减小Host OS里虚拟硬盘文件的容量。
为了减少硬盘空间的浪费,避免经常使用shrink,更好的做法,是在Guest OS里挂上另外一个硬盘存放不常用的文件,比如安装文件之类,用完之后可以把这块硬盘重新分区格式化。

8、vmware-tools
vmware-tools增强Guest OS的显示和鼠标功能。vmware-tools自带在VMWare里。安装Guest OS的时候,VMWare的状态栏里就有一句话提示vmware-tools没装,鼠标单击这句话即可安装vmware-tools。也可通过菜单安装:settings -> vmware tools install

如果Guest OS是windows,vmware-tools会自动安装,如果是Linux,安装后,vmware-tools的安装文件会被mount到光驱中(是虚拟方式,此时光驱并没有光盘),进入光驱的mount point,把文件copy出来安装即可。

对某些Guest OS,比如Solaris x86、NetBSD 1.x、OpenBSD 2.

x和Caldera OpenLinux 1.3等,VMWare并没有提供vmware-tools。

9、在VMWare里装Linux,不要用图形模式安装,要用文本模式安装。 安装到配置Xserver时,选默认配置就可以,安装出错也不用理会。安装完后,先别起X,先安装好vmware-tools后,再启动X。

10、如果不使用声卡,不要在VMWare里加入声卡,声卡对性能有一点点影响。

11、如果不常使用光驱,可以取消光驱的connect at power on选项,在需要用的时候,光驱可以随时“热插拔”。

VMWare与Virtual PC的主要区别
============================

Virtual PC是与vmware类似的虚拟机软件。两者的主要区别如下:

1、VMWare没有模拟显卡,要通过vmware-tools才能用上高分辨率和真彩色,否则只能用VGA。而Virtual PC模拟了一个比较通用的显卡:S3 Trio 32/64(4M)。从这一点看,Virtual PC比VMWare通用,但显示性能不如VMWare。

2、因为Virtual PC模拟了显卡,所以通用性很强。https://www.360docs.net/doc/113671420.html,网站声称,目前新版的Virtual PC 5支持所有基于x86的操作系统。

3、Virtual PC的网络共享方式与VMWare不同。VMWare是通过模拟网卡实现网络共享的,而Virtual PC是通过在现有网卡上绑定Virtual PC emulated switch服务实现网络共享的。对于win2000/xp等操作系统,如果网线没插或没有网卡的时候,要安装Microsoft的loopback软网卡,才能实现网络共享。在Virtual PC的global setting里,当有网卡并插好网线的时候,将Virtual switch设成现实的网卡;当没有网卡或网线没插的时候,将Virtual switch设成ms loopback软网卡,即可实现网络共享。
ms loopback软网卡的安装方法,以win2000为例:
控制面板 -> 添加/删除硬件 -> 添加/排除设备故障 -> 添加新设备 -> 否,从列表选择 -> 网卡 -> 制造商选microsoft -> microsoft loopback adapter。

文章来自: 好喜爱学习网(https://www.360docs.net/doc/113671420.html,) 网址:https://www.360docs.net/doc/113671420.html,/diannaoweixiu/ruanjianjichu/110271.html

2、


主机与VMware虚拟机通信(XP版)

有些时候因为某些原因的限制,需要在虚拟机上工作,这就涉及一个与主机通信的问题,在已经配好的局域网下还好说,但是在自己家里配置就需要注意一些问题。之前写了与Linux的通信,过程比较复杂,需要记命令,而在XP之间通讯就简单很多了。


一、与主机共享ADSL链接


安装虚拟机后,在网络链接下除了本地链接外,会出现两个新的链接,分别是VMware Network Adapter VMnet1和VMware Network Adapter VMnet8。其中VMnet1在这里用处不大,我们主要关注VMnet8,因为VMnet8是用来共享主机的ip地址用的。


A 虚拟机设置:菜单-虚拟机-可移动设备-以太网-编辑-自定义-VMnet8
B 虚拟机XP系统设置:本地链接TCP/IP-自动获取IP地址
C

主 机XP系统设置:adsl属性-高级-允许其他计算机-VMnet8



二、与主机共享目录文件


方法一:使用局域网通讯工具,例如飞鸽传书软件,使两机可以互传文件(当然不做方法二,系统里也没有这种通讯工具,不过倒可以通过共享ADSL链接的方法上网下载一个)


A 虚拟机设置:菜单-虚拟机-可移动设备-以太网-编辑-自定义-VMnet默认桥接
B 主 机XP系统设置:本地链接TCP/IP-配置IP (Eg:192.168.0.1)
C 虚拟机XP系统设置:本地链接TCP/IP-配置IP (Eg:192.168.0.2)


方法二:设置域名、工作组,通过IP访问共享目录


A 主 机XP系统设置:我的电脑属性-计算机名-更改-输入计算机名(Eg:xp)-输入工作组(Eg:HOME)
B 虚拟机XP系统设置:我的电脑属性-计算机名-更改-输入计算机名(Eg:test)-其他-输入主DNS后缀(注:必须输入主机的计算机名,Eg:xp)- 输入工作组(注:必须与主机设置一直,Eg:HOME)
C 重启虚拟机XP系统,然后可以在网上邻居看到共享目录了(先在主机设置一个共享目录),相反主机也可以在网上邻居看到虚拟XP系统的共享目录,此外通过IP也可以访问

3、

主机为WindowsXP系统,VMware虚拟机里安装Linux操作系统。安装完VMware后,主机的网络连接里面出现了两个新的连接,即VMware Network Adapter VMnet1和VMware Network Adapter VMnet8如图。虚拟机里安装的系统就是靠这两个虚拟网卡来联网的。(如下图)

主机上类似antiarp 防火墙一定要关掉 否则虚拟机不能上网



有以下几种可选方法:
1、Bridged(网桥)方式:
如果主机是通过局域网上网的,可让虚拟机使用与主机网段、网关和DNS等的相同的设置,选用一个有效的局域网IP即可。

桥接方式可实现虚拟机<--->主机 虚拟机<---->互联网 通信(主机与虚拟机可看成是同一局域网的两台机)。但桥接需要一个不同于 原主机上的另外一个独立的IP地址,这对于有些情况(IP和MAC绑定,网管不同意),比较难办到。并且主机拔掉网线后,虚拟机无法与主机通过网络的方式进行通讯。而后面几种没这个问题。所以不太使用桥接方式。

1)主机的IP信息



2)设置VMware网络连接为Bridged


3)虚拟机系统网络设置


多网卡桥接
当我有双网卡时,虽然VMnet0:Bridged to an automatically chosen adapter(在VMware的Edit ->Virtual Network settings... 打开Virtual Network Editor)



但是,我尝试了一下,虚拟机只可桥接“本地连接”(VIA网卡),不能桥接“本地连接2”(Realtek网卡)

在Virtual Network Editor -> Automatic Bridging 选项卡里

若我们想桥接“本地连接2”(Realtek网卡)需要在“Exclude a

dapters" 里add "VIA网卡”(本地连接),这样“本地连接2”就可以桥接了。但是“本地连接”(VIA网卡)却不可以了,即使在“Exclude adapters" 里Remove "VIA网卡”也不行,我猜测 VMware其实只支持一个最初未被排除的网卡桥接!

没关系,我们可以在 Virtual Network Editor -> Host Virtual Network Mapping 选项卡里,VMnet2选择Realtek网卡



这时,我们回到Virtual Network Editor -> Automatic Bridging 选项卡,发现VMnet0 把 Realtek网卡排除了



桥接“本地连接”(VIA网卡)时,VMware选择VMnet0,

桥接“本地连接2”(Realtek网卡)时,VMware选择VMnet2



虚拟机上网络相应的设置,就可以了。


2、NAT方式:
使用VMware提供的NAT和DHCP服务,虚拟机使用主机中的虚拟网卡VMnet8作为网关,并且TCP/IP设置需遵循程序中关于vmnet8的DHCP和NAT设置,如IP必须在其DHCP设置的StartIP和EndIP之间,网关需使用其NAT设置的Gateway IP。
NAT方式可实现虚拟机<--->主机 通信,但是 虚拟机--->互联网 即只能够虚拟机访问互联网,但是若想把虚拟机作为服务器,让互联网访问,不可以。
但是如果有多个网卡,虚拟机可以不用更改设置,就可以同时访问多个网卡连接的互联网。
1) 设置VMware 网络连接方式为NAT


2)在虚拟机里,linux网络设置,只需选择自动获取IP,就可以了!



当然也可以手动设置:
ip设置与vmnet8同网段,gateway,netmask,broadcast设置与vmnet8相同,dns设置与主机相同。
我们在主机的网络连接里如下,没有看到网关(如下图)

别急,在VMware的Edit ->Virtual Network settings... 中,有相关内容。

这些选项卡包含了VMware的很多高级设置,有兴趣可以研究研究。


3.host-only方式 :
默认使用vmnet1,将虚拟机ip设置与vmnet1同网段,gateway设置成vmnet1的ip,其余设置与vmnet1相同,dns设置与主机相同
例如 vmnet1 ip :192.168.101.1
虚拟机设置: ip :192.168.101.100 gateway : 192.168.101.1
这样就实现了虚拟机<--->主机 通信,但是 虚拟机<--->互联网 仍无法通信
1)选择VMware的Host-only

2)主机的本地连接

3)在虚拟机linux里,设置网络

4、共享主机的Internet连接的方式(如果主机是Win98系统可能不适用):
在主机的“本地连接”属性的高级里面共享Internet连接。如果选的是VMnet1虚拟网卡,则在VMware的Ethernet设置需选用Host-only;如果选VMnet8,则Ethernet设置需选用NAT。共享连接后,那个被选中的虚拟网卡的IP会默认被设为192.168.0.1(如果主机也是通过局域网的192.168.0.1网关上网的,则需把这个虚拟网卡设置为不同的网段IP,如192.168.1.1)这时候虚拟机里面就可以通过把这个虚拟网卡作为网关来上网了。实际上

是一个简单的路由NAT,所以NAT方式就不讨论了,我们只以Host-only为例。
共享host-only方式,可实现虚拟机<--->主机 通信,但是 虚拟机--->互联网 即只能够虚拟机访问互联网,但是若想把虚拟机作为服务器,让互联网访问,不可以。
1)选择VMware的Host-only

2)设置主机的本地连接属性





被选中的虚拟网卡的IP会默认被设为192.168.0.1,当然也可以更改。而且共享连接取消后,还会变回到共享连接前的网络设置。



在虚拟机linux里,设置网络:



总结:

共享连接方式和NAT方式,都可以实现虚拟机<--->主机 , 虚拟机--->互联网 通信,NAT方式设置简单,且可以实现同时访问多个物理网卡。
桥接方式可实现虚拟机<--->主机 虚拟机<---->互联网 通信,若虚拟机作为服务器,只有这种方式可行。但需独立的IP给虚拟机,且若物理网卡连接断开,虚拟机与主机也不能连接。
host-only方式只实现虚拟机<--->主机 通信 ,一般不单独采用。

像我在虚拟机下开发嵌入式,虚拟机要给开发板提供NFS服务,就采用桥接方式连接嵌入式的网卡。若有时想下载点软件,查查资料,就改用NAT方式,非常方便



相关主题
相关文档
最新文档