做虚拟机和宿主机互ping实验时,除了要提前配置好网段、ip等信息, 还要把宿主机、虚拟机的防火墙关闭!
首先说一下VMware的几种虚拟交换机。
VMnet0:用于虚拟桥接网络下的虚拟交换机。
VMnet1:用于虚拟Host-Only网络下的虚拟交换机。
VMnet8:用于虚拟NAT网络下的虚拟交换机。
安装了VMware虚拟机后,会在网络连接对话框中多出两个虚拟网卡,如图:
其中:
VMware Network Adepter VMnet1:Host用于与Host-Only虚拟网络进行通信的虚拟网卡
VMware Network Adepter VMnet8:Host用于与NAT虚拟网络进行通信的虚拟网卡
一、桥接网络
桥接网络是指本地物理网卡和虚拟网卡通过VMnet0虚拟交换机进行桥接,物理网卡和虚拟网卡在拓扑图上处于同等地位(虚拟网卡既不是Adepter VMnet1也不是Adepter VMnet8)。
物理网卡和虚拟网卡相当于处于同一个网段,虚拟交换机就相当于一台现实网络中的交换机。所以两个网卡的IP地址也要设置为同一网段。
我们看到,物理网卡和虚拟网卡的IP地址处于同一个网段,子网掩码、网关、DNS等参数都相同。两个网卡在拓扑结构中是相对独立的。
我们在虚拟机上ping主机,结果显示两个网卡能够互相通信。如果在网络中存在DHCP服务器, 那么虚拟网卡同样可以从DHCP服务器上获取IP地址。所以桥接网络模式是VMware虚拟机中最简单直接的模式。安装虚拟机时它为默认选项。
但在此模式下,虚拟机会消耗宿主机所在局域网的IP地址。
二、NAT模式
假设你家申请到了一个公网IP,那么你可以访问公网,公网上的其他IP也可以访问你,但是如果你家有很多台设备要上网,仅有一个公网IP是不够用的,于是就可以利用路由器的NAT功能,让路由器给家庭内部的不同设备分配不同的私网地址,当这些设备要向外发送数据时,NAT就把私有地址转换成公网地址,并且可以用端口进行标识,当数据从公网向设备传递时,NAT再把公网地址转换成私有地址。
私有地址不能被公网地址直接访问。
在NAT网络中,会用到VMware Network Adepter VMnet8虚拟网卡,主机上的VMware Network Adepter VMnet8虚拟网卡被直接连接到VMnet8虚拟交换机上与虚拟网卡进行通信。
VMware Network Adepter VMnet8虚拟网卡的作用仅限于和VMnet8网段进行通信,它不给VMnet8网段提供路由功能,所以虚拟机虚拟一个NAT服务器,使虚拟网卡可以连接到Internet。在这种情况下,我们就可以使用端口映射功能,让访问主机80端口的请求映射到虚拟机的80端口上。
VMware Network Adepter VMnet8虚拟网卡的IP地址是在安装VMware时由系统指定生成的,我们不要修改这个数值,否则会使主机和虚拟机无法通信。
虚拟出来的网段和NAT模式虚拟网卡的网段是一样的,包括NAT服务器的IP地址也是这个网段。在安装VMware之后同样会生成一个虚拟DHCP服务器,为NAT服务器分配IP地址。
当主机和虚拟机进行通信的时候就会调用VMware Network Adepter VMnet8虚拟网卡,因为他们都在一个网段,所以通信就不成问题了。
实际上,VMware Network Adepter VMnet8虚拟网卡的作用就是为主机和虚拟机的通信提供一个接口,即使主机的物理网卡被关闭,虚拟机仍然可以连接到Internet,但是主机和虚拟机之间就不能互访了。
Host-Only模式
在Host-Only模式下,虚拟网络是一个全封闭的网络,它唯一能够访问的就是主机。其实Host-Only网络和NAT网络很相似,不同的 地方就是Host-Only网络没有NAT服务,所以虚拟网络不能连接到Internet。主机和虚拟机之间的通信是通过VMware Network Adepter VMnet1虚拟网卡来实现的。
同NAT一样,VMware Network Adepter VMnet1虚拟网卡的IP地址也是VMware系统指定的,同时生成的虚拟DHCP服务器和虚拟网卡的IP地址位于同一网段,但和物理网卡的IP地址不在同一网段。
Host-Only的宗旨就是建立一个与外界隔绝的内部网络,来提高内网的安全性。这个功能或许对普通用户来说没有多大意义,但大型服务商会常 常利用这个功能。如果你想为VMnet1网段提供路由功能,那就需要使用RRAS,而不能使用XP或2000的ICS,因为ICS会把内网的IP地址改为 192.168.0.1,但虚拟机是不会给VMnet1虚拟网卡分配这个地址的,那么主机和虚拟机之间就不能通信了。
综述
|-----------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------|
| 模式 | 解释 | 特点 |
| 桥接 | 虚拟机会像物理机一样直接连接到物理网络,在这种模式下,虚拟机拥有独立的IP地址,并且与宿主机在同一网络段内。这意味着虚拟机可以直接与局域网内的其他设备进行通信,就像它是网络中的另一台独立主机一样。桥接模式通常需要手动配置IP地址和子网掩码,确保虚拟机能够正确地加入到现有网络中。 | 优点:虚拟机可以被局域网内的其他设备直接访问,适合需要在局域网内提供服务的场景。 缺点:需要手动配置网络,且占用一个局域网内的IP地址。 |
| NAT | NAT模式下,虚拟机通过宿主机的网络连接到外部网络。宿主机充当网关的角色,虚拟机的所有网络请求都会通过宿主机转发。在这种模式下,虚拟机与宿主机不在同一网络段,虚拟机通常会从宿主机获取IP地址。 | 优点:不需要手动配置网络,只要宿主机能够访问网络,虚拟机也能够上网。适合快速搭建虚拟网络环境。 缺点:虚拟机不能被局域网内的其他设备直接访问,只能与宿主机进行通信。 |
| Host-only | 在 Host-Only 模式下,虚拟网络是一个全封闭的网络,它唯一能够访问的就是主机。其实 Host-Only 网络和 NAT 网络很相似,不同的地方就是 Host-Only 网络没有 NAT 服务,所以虚拟网络不能连接到 Internet 。主机和虚拟机之间的通信是通过 VMware Network Adepter VMnet1 虚拟网卡来实现的。 | 建立一个与外界隔绝的内部网络,来提高内网的安全性。 |
一句话总结:
桥接 通过使用物理机网卡 具有单独ip
NAT 把物理机为路由器进行上网
host-only 只能与物理机相连
桥接模式适用于需要将虚拟机作为独立服务器,为局域网内的用户提供服务的场景。
NAT模式适用于个人用户或者测试环境,需要虚拟机快速接入互联网,而不需要与局域网内的其他设备直接通信的场景。
在VMware的3种网络模式中,NAT模式是最简单的,基本不需要手动配置IP地址等相关参数。至于桥接模式则需要额外的IP地址,如果是在内网环境中还很容易,如果是ADSL宽带就比较麻烦了,ISP一般是不会大方的多提供一个公网IP的。