为什么在真机上没有VMware Network Adapter VMnet0虚拟网卡呢?vmware虚拟机三种网卡

vmware虚拟机三种网卡

2018年10月16日 10:17:56 xiaoyuerp 阅读数 244

注:部分红色文本是转发者个人理解添加的。

 

虚拟机vmnet0、vmnet1和vmnet8的区别

vmnet0,实际上就是一个虚拟的网桥

vmnet0,实际上就是一个虚拟的网桥,这个网桥有很若干个端口,一个端口用于连接你的Host,一个端口用于连接你的虚拟机,他们的位置是对等的,谁也不是谁的网关。所以在Bridged模式下,你可以让虚拟机成为一台和你的Host相同地位的机器。不提供DHCP服务,无法虚拟出来

vmnet1,这是一个Host-Only网络模式

vmnet1,这是一个Host-Only网络模式,这是用于建立一个与世隔绝的网络环境所用到的,其中vmnet1也是一个虚拟的交换机,交换机的一个 端口连接到你的Host上,另外一个端口连接到虚拟的DHCP服务器上(实际上是vmware的一个组件),另外剩下的端口就是连虚拟机了。虚拟网卡 “VMWare Virtual Ethernet Adapter for VMnet1”作为虚拟机的网关接口,为虚拟机提供服务。在虚拟机启动之后,如果你用ipconfig命令,你会很清楚的看到,你的默认网关就是指向 “VMWare Virtual Ethernet Adapter for VMnet1”网卡的地址的。(实际上它并不能提供路由,这是VMware设计使然,它是干了除了提供路由之外的一些事情——实际上是我也不知道它干了什 么事情),这里没有提供路由主要表现在没有提供NAT服务,使得虚拟机不可以访问Host-Only模式所指定的网段之外的地址。提供DHCP服务,宿主计算机相当于一台开启了DHCP功能的路由器

vmnet8,这是一个NAT方式,最简单的组网方式了

vmnet8,这是一个NAT方式,最简单的组网方式了,从主机的“VMWare Virtual Ethernet Adapter for VMnet8”虚拟网卡出来,连接到vmnet8虚拟交换机,虚拟交换机的另外的口连接到虚拟的NAT服务器(这也是一个Vmware组件),还有一个口 连接到虚拟DHCP服务器,其他的口连虚拟机,虚拟机的网关即是“VMWare Virtual Ethernet Adapter for VMnet8”网卡所在的机器,废话,这肯定就是你的Host机器啦。同样,用ipconfig也可以看出来,你的虚拟机的默认网关也指向了你的 “VMWare Virtual Ethernet Adapter for VMnet8”虚拟网卡地址。相比之下,可以看出来,NAT组网方式和Host-Only方式,区别就在于是否多了一个NAT服务。提供DHCP服务,宿主计算机相当于一台开启了DHCP功能的路由器

host-only与wmnet1虚拟网卡进行通信
NAT模式与VMnet8虚拟网卡进行通信
桥接使用的是你机器的真实网卡进行上网

vmware为我们提供了三种网络工作模式,它们分别是:Bridged(桥接模式)NAT(网络地址转换模式)Host-Only(仅主机模式)

打开vmware虚拟机,我们可以在选项栏的“编辑”下的“虚拟网络编辑器”中看到VMnet0(桥接模式)、VMnet1(仅主机模式)、VMnet8(NAT模式),那么这些都是有什么作用呢?其实,我们现在看到的VMnet0表示的是用于桥接模式下的虚拟交换机;VMnet1表示的是用于仅主机模式下的虚拟交换机;VMnet8表示的是用于NAT模式下的虚拟交换机。

虚拟网络编辑器

同时,在主机上对应的有VMware Network Adapter VMnet1和VMware Network Adapter VMnet8两块虚拟网卡,它们分别作用于仅主机模式与NAT模式下。在“网络连接”中我们可以看到这两块虚拟网卡,如果将这两块卸载了,可以在vmware的“编辑”下的“虚拟网络编辑器”中点击“还原默认设置”,可重新将虚拟网卡还原。

还原默认设置

小伙伴看到这里,肯定有疑问,为什么在真机上没有VMware Network Adapter VMnet0虚拟网卡呢?(设计出虚拟网卡的目的是为了让主机和虚拟机通信,因为桥接模式下相对于路由器而言,虚拟机和主机的地位是平等的,可以将将两个ip地址设置成一个网段即可通信了,就没有必要再设计一块虚拟网卡出来;在NAT模式下,虚拟机网络和主机网络就不是一个网段上,从虚拟NAT设备的设计上就可以看出来,要想在NAT模式下,虚拟机和主机通信必须设计出一个网卡VMware Network Adapter VMnet8出来,将来为二者通信使用;仅主机模式的目的就是让虚拟机只能和主机通信,不允许虚拟机上外网,保证虚拟机的安全性,因此必须设计一块虚拟网卡VMware Network Adapter VMnet1出来,另外此处的虚拟网卡的概念和虚拟机1、虚拟机2、虚拟机3...虚拟机n中内部的网卡(在虚拟机终端上通过命令ifconfig查看到的网卡譬如etho 或ens33)不是一回事,不要把Vmnet1和VMware Network Adapter VMnet1混淆起来,前者是交换机,后者是虚拟网卡。在主机上的控制面板-->网络和Internet--->网络连接界面上显示的是虚拟网络(指NAT和仅主机模式网络)一一对应的虚拟网卡,不是虚拟机1安装上ubuntu后使用ifconfig查看到的eth0或ens33的网卡。这就是刚才虚拟机(ip:192.168.1.141)和主机(ip:192.168.1.10)在桥接模式下能Ping通,但在NAT模式下ping不通的原因:查看虚拟网卡VMware Network Adapter VMnet8的属性根本就没有设置和虚拟机同一网段的ip地址,只是自动获取ip,但是在虚拟机网络编辑器中NAT模式下也没有勾选“使用本地DHCP服务将ip分配给虚拟机”,并且在/etc/network/interfaces的配置文件中使用了static静态ip.如果将VMware Network Adapter VMnet8的ip设置成和192.168.1.141同一个网段使用静态ip的话就可以虚拟机和主机的通信了。)那么接下来,我们就一起来看一下这是为什么。

一、Bridged(桥接模式)

什么是桥接模式?桥接模式就是将主机网卡与虚拟机虚拟的网卡利用虚拟网桥进行通信。在桥接的作用下,类似于把物理主机虚拟为一个交换机,所有桥接设置的虚拟机连接到这个交换机的一个接口上,物理主机也同样插在这个交换机当中,所以所有桥接下的网卡与网卡都是交换模式的,相互可以访问而不干扰。在桥接模式下,虚拟机ip地址需要与主机在同一个网段,如果需要联网,则网关与DNS需要与主机网卡一致。其网络结构如下图所示:

桥接模式

接下来,我们就来实际操作,如何设置桥接模式。

首先,安装完系统之后,在开启系统之前,点击“编辑虚拟机设置”来设置网卡模式。

设置网卡模式

点击“网络适配器”,选择“桥接模式”,然后“确定”

网络适配器

在进入系统之前,我们先确认一下主机的ip地址、网关、DNS等信息。

主机信息

然后,进入系统编辑网卡配置文件,命令为vi /etc/sysconfig/network-scripts/ifcfg-eth0

编辑网卡配置文件

添加内容如下:

添加内容

编辑完成,保存退出,然后重启虚拟机网卡,使用ping命令ping外网ip,测试能否联网。

测试能否联网

能ping通外网ip,证明桥接模式设置成功。

那主机与虚拟机之间的通信是否正常呢?我们就用远程工具来测试一下。

远程工具测试

主机与虚拟机通信正常。

这就是桥接模式的设置步骤,相信大家应该学会了如何去设置桥接模式了。桥接模式配置简单,但如果你的网络环境是ip资源很缺少或对ip管理比较严格的话,那桥接模式就不太适用了。如果真是这种情况的话,我们该如何解决呢?接下来,我们就来认识vmware的另一种网络模式:NAT模式。

二、NAT(地址转换模式)

刚刚我们说到,如果你的网络ip资源紧缺,但是你又希望你的虚拟机能够联网,这时候NAT模式是最好的选择。NAT模式借助虚拟NAT设备和虚拟DHCP服务器,使得虚拟机可以联网。其网络结构如下图所示:

NAT模式

在NAT模式中,主机网卡直接与虚拟NAT设备相连,然后虚拟NAT设备与虚拟DHCP服务器一起连接在虚拟交换机VMnet8上,这样就实现了虚拟机联网。那么我们会觉得很奇怪,为什么需要虚拟网卡VMware Network Adapter VMnet8呢?原来我们的VMware Network Adapter VMnet8虚拟网卡主要是为了实现主机与虚拟机之间的通信。在之后的设置步骤中,我们可以加以验证。

首先,设置虚拟机中NAT模式的选项,打开vmware,点击“编辑”下的“虚拟网络编辑器”,设置NAT参数及DHCP参数。

虚拟网络编辑器

NAT参数

DHCP参数

将虚拟机的网络连接模式修改成NAT模式,点击“编辑虚拟机设置”。

编辑虚拟机设置

点击“网络适配器”,选择“NAT模式”

NAT模式

然后开机启动系统,编辑网卡配置文件,命令为vi /etc/sysconfig/network-scripts/ifcfg-eth0

编辑网卡配置文件

具体配置如下:

具体配置

编辑完成,保存退出,然后重启虚拟机网卡,动态获取ip地址,使用ping命令ping外网ip,测试能否联网。

测试能否联网

之前,我们说过VMware Network Adapter VMnet8虚拟网卡的作用,那我们现在就来测试一下。

虚拟网卡禁用

是否能ping通

如此看来,虚拟机能联通外网,确实不是通过VMware Network Adapter VMnet8虚拟网卡,那么为什么要有这块虚拟网卡呢?

之前我们就说VMware Network Adapter VMnet8的作用是主机与虚拟机之间的通信,接下来,我们就用远程连接工具来测试一下。

远程连接工具测试

然后,将VMware Network Adapter VMnet8启用之后,发现远程工具可以连接上虚拟机了。

那么,这就是NAT模式,利用虚拟的NAT设备以及虚拟DHCP服务器来使虚拟机连接外网,而VMware Network Adapter VMnet8虚拟网卡是用来与虚拟机通信的。

三、Host-Only(仅主机模式)

Host-Only模式其实就是NAT模式去除了虚拟NAT设备,然后使用VMware Network Adapter VMnet1虚拟网卡连接VMnet1虚拟交换机来与虚拟机通信的,Host-Only模式将虚拟机与外网隔开,使得虚拟机成为一个独立的系统,只与主机相互通讯。其网络结构如下图所示:

Host-Only模式

通过上图,我们可以发现,如果要使得虚拟机能联网,我们可以将主机网卡共享给VMware Network Adapter VMnet1网卡,从而达到虚拟机联网的目的。接下来,我们就来测试一下。

首先设置“虚拟网络编辑器”,可以设置DHCP的起始范围。

虚拟网络编辑器

设置虚拟机为Host-Only模式。

设置Host-Only模式

开机启动系统,然后设置网卡文件。

设置网卡文件

保存退出,然后重启网卡,利用远程工具测试能否与主机通信。

远程工具测试

主机与虚拟机之间可以通信,现在设置虚拟机联通外网。

设置虚拟机联通外网

我们可以看到上图有一个提示,强制将VMware Network Adapter VMnet1的ip设置成192.168.137.1,那么接下来,我们就要将虚拟机的DHCP的子网和起始地址进行修改,点击“虚拟网络编辑器”

虚拟网络编辑器

重新配置网卡,将VMware Network Adapter VMnet1虚拟网卡作为虚拟机的路由。

重新配置网卡

重启网卡,然后通过 远程工具测试能否联通外网以及与主机通信。

远程工具测试

测试结果证明可以使得虚拟机连接外网。

你可能感兴趣的:(为什么在真机上没有VMware Network Adapter VMnet0虚拟网卡呢?vmware虚拟机三种网卡)