一. VMware 的几个虚拟的网络设备
VMnet0 : 在桥接模式下的虚拟交换机
VMnet1 : 在Host-Only模式下的虚拟交换机
VMnet8 : 在NAT模式下的虚拟交换机
VMnet Network Adapter VMnet1 : 在Host-Only 模式下,Host 与Host-Only 虚拟网络进行通信的虚拟网卡(这是在物理机上的虚拟网卡,跟虚拟机上的虚拟网卡不一样)
VMnet Network Adapter VMnet8 : 在NAT模式下,Host与NAT虚拟网络进行通信的虚拟网卡
二. 三种网络模型
1. Bridge Network 桥接网络
在Bridge Network中,Host 的物理网卡和 Guest(Virtual machine)的虚拟网卡通过虚拟的网桥(Virtual bridge)桥接连接在Virtual Ethernet switch(VMnet0) 虚拟交换机上。
要注意的是:VMnet Network Adapter VMnet1 和 VMnet Network Adapter VMnet8 是物理机上的虚拟网卡,而这里的虚拟网卡是指虚拟机的虚拟网卡!(对于虚拟机的OS来说虚拟机系统认为虚拟机的虚拟网卡就是其虚拟系统的物理网卡)
也就是说:在桥接网络中,你物理机的真实网卡和你虚拟机的虚拟网卡在网络中的地位其实是一样的,即可以说虚拟机是和物理机处在同一个网段中的另外一台机器。
2. Network Address Translation (NAT) NAT网络
在 NAT 中,物理机(Host)上的虚拟网卡 VMnet Network Adapter VMnet8 连接到虚拟交换机 VMnet8 上,并不是直接连接到虚拟机上,而是通过 VMnet8 (虚拟交换机)与虚拟机所在的网段进行通讯,其 VMnet Network Adapter VMnet8 并不会为虚拟机所在的网段提供路由服务。在 VMnet8(虚拟交换机)网段下的虚拟机而是通过虚拟的 NAT 服务器(正如上图中的NAT Device)连接到外网的。
也就是说,虚拟机是通过虚拟的NAT服务器连接到外网的,而这个NAT服务器,在物理机共享IP地址给VMs的基础上建立的。
3. Host-only Networking Host-Only 网络
在Host-Only Networking 模式网络中,Host-Only网络是一个隔离的无法与外网通信的网络结构。Host-Only 网络和 NAT 网络比较类似,不同之处就是在Host-Only 模式下,没有使用NAT 服务,VMnet1 也没有连接到路由,所以不能访问到外网。而Host 与Guest 则利用VMnet Network Adapter VMnet1 这块虚拟网卡进行彼此的通信。在这个模式下Guest 通过虚拟的DHCP服务器获得IP,这一点和NAT模式是一样的。
三. 上网设置
1. NAT 上网
由于是虚拟机上网是通过NAT服务器连接的,所以要配置好NAT服务器。
在虚拟机里打开,Edit -> virtual network editor,把你的网段(subnet IP)设置为和你物理主机在同一网段内。
比如,你物理机器的IP地址是:
于是你要把你的网段在NAT里设置为:
这样就可以上网了。
注意:
1. Windows 的本地连接开启共享功能(高级选项里面设置)。
2. 开启vmware的Vmware DHCP Service 和VMware NAT Service两个服务(我的电脑->管理>服务)。
3. 虚拟机里 linux 的 eth0 设置为DHCP模式,自动获得 ip 地址。
这样设置成功后,可以看到在 linux 里 ip 地址被自动分配为 169.254.103.130,都是在一个网段的。