2024年4月8日发(作者:)

1. VMWare简介

VMWare是由VMWare公司[1]开发的一款可运行于Windows和Linux平台并支持

多种操作系统的虚拟机软件。通过VMWare可以在一台真实的PC上实现多个虚拟PC,

并在这些PC安装各种操作系统。

VMWare支持同时运行多台虚拟的PC,这些虚拟PC独立运行而不互相干扰,就好

像是多台运行不同操作系统的真实PC一样,从而能够实现在一台PC中同时运行多个操作

系统。

更进一步,VMWare还可以支持这些同时运行的虚拟PC之间、虚拟PC与真实主机

之间的相互通信,可以把它们按照各种方式连接成网络。这些连接都是虚拟的,不需要真

实的物理连线,而且可以随意定制和改变他们之间的连接关系,这无疑为研究网络提供了

便利。

有关虚拟机的其他功能和更多信息可从所附参考站点的有关网站中获得,本文先介绍

VMWare实现虚拟网络的原理及方法,然后以此为基础来分析Windows和Linux系统中

L3以上的各种网络服务的工作原理。对于L3及以下协议的分析可以用另外一款软件

Dynamips模拟Cisco设备来分析研究。

以下以VMWare Workstation 6.0.4 Build 93057版本为例。

2. 基于VMWare的虚拟网络

2.1 VMWare实现虚拟网络的关键构件

2.1.1 虚拟Ethernet交换机

VMWare安装后,会在Windows主机中生成个10个虚拟的Ethernet交换机设备,

这些设备分别命名为VMNet0~VMNet9。虚拟PC可以连接到这些虚拟的Ethernet交换

机中,从而组成VMWare基本虚拟网络。

这些虚拟交换机只实现L2的纯交换功能,而不能实现VLAN等附加功能。

在这10个虚拟Ethernet交换机中,VMNet0、VMNet1和VMNet8是具有默认用

途的,而其他的虚拟交换机都没有默认用途,用户可以随意使用。VMNet0交换机的默认

用途是用来连接与主机PC进行直接桥接的虚拟机网络(见2.2),VMNet1交换机的默认

用途是用来连接与主机PC真实网卡相互独立的虚拟机网络,VMNet8交换机的默认用途

则是用来连接通过NAT与主机PC真实网卡进行通信的虚拟机网络。或者说,当虚拟机网

络是与主机PC真实网卡直接桥接时,虚拟PC连接到交换机VMNet0,当虚拟机网络与

主机PC真实网卡相互独立时,虚拟PC连接到交换机VMNet1,而当虚拟机网络与主机

PC真实网卡通过NAT通信时,虚拟PC连接到交换机VMNet8。

对于其他的VMWare虚拟交换机VMNet2、VMNet3等,可以有两用途:一种是将

它们与主机PC的真实网卡桥接,另外一种是建立自定义的子网。

在配置虚拟机时,可以随意指定虚拟机要连接到哪个虚拟Ethernet交换机。

2.1.2虚拟Ethernet网络适配器(网卡)

除虚拟Ethernet交换机外,VMWare还会在主机中生成两块虚拟的Ethernet网卡,