之前在学习linux的时候,为了速度,对于这三种网络模式很是模糊,直接采用桥接模式,也不用怎么配置,网络直接就能通了。由于最近在学习大数据,配置虚拟机网络是必不可少的,在配置的过程也是踩了许多坑,在使用虚拟机软件的时候,,vmware的网络连接问题应该也是大家遇到最多问题之一。写这篇博客也是因为不断的踩坑,然后在解决的过程中,对自己的理解也做一个总结。接下来,我们就一起来探讨一下关于vmware workstations网络连接的三种模式。
不知道大家有没有听说过虚拟网卡,虚拟网卡主要是建立远程计算机间的局域网。虚拟网卡链接技术就是VPN。比如说你可以和别的地方的几台机子,通过建立虚拟HUB 实现VPN client的链接,这样就算是在这几台远程计算机间建立的局域网,也能和你的机子一起实现局域网的功能。
可以打开“控制面板”里的“网络连接”,可以看到电脑上有VMware Network Adapter VMnet1和VMware Network Adapter VMnet8两块虚拟网卡。这两块的作用便是对应于接下来我们探讨的网络配置相关。
打开vmware虚拟机,我们可以在选项栏的“编辑”下的“虚拟网络编辑器”中看到VMnet0(桥接模式)、VMnet1(仅主机模式)、VMnet8(NAT模式),那么这些都是有什么作用呢?其实,我们现在看到的VMnet0表示的是用于桥接模式下的虚拟交换机;VMnet1表示的是用于仅主机模式下的虚拟交换机;VMnet8表示的是用于NAT模式下的虚拟交换机。
说到这里,善于思考的同学肯定有疑问,为什么在真机上没有VMware Network Adapter VMnet0虚拟网卡呢?那么接下来,我们就一起来看一下这是为什么。
接下来,我们就来实际操作一波,首先,安装完系统之后,在开启系统之前,点击“编辑虚拟机设置”来设置网卡模式。
在桥接模式下,如果电脑主机安装有多块网卡的话,应该手动指定要桥接的那块网卡。点击VMware软件的“编辑”,选“虚拟网络编辑器”,点击VMnet0,在“ 已桥接到” 的地方指定那块用来上网的网卡。如果只有一块上网的网卡,可以不用修改,默认自动连接这块网卡。
在进入系统之前,我们先确认一下主机的ip地址、网关、DNS等信息。打开cmd ,输入ipconfig -all
即可查看。
修改IP地址,使用ipconfig命令不能永久修改
命令:vi /etc/sysconfig/network-scripts/ifcfg-网卡名
网卡名进入/etc/sysconfig/network-scripts/
目录查看即可,CentOS7以后不再默认为eth0。
编辑完成后,保存退出,然后重启网络服务:service network restart
使用ping命令ping外网ip,测试能否联网。
能ping通外网ip。现在再试试ping下主机:
注:如果ping不通,是因为主机的防火墙,我们尝试把主机的防火墙关掉就可以ping通了
由于linux会在桥接模式下自动分配Ip地址,所以如果在linux中设置网卡的时候发现,不管设置了什么ip地址的值,结果在使用ifconfig命令查看的时候都显示一个ip地址,无法进行修改。这可能是因为你设置了BOOTPROTO=dhcp,DHCP服务器提供了为客户端自动分配IP地址的功能。所以这个时候你不管在网卡中配置了什么IP地址都是DHCP服务器自动为你的Linux配置的IP地址。所以你可以设置BOOTPROTO=static或者BOOTPROTO=none,这样再通过查看地址就是你设置的地址了.
这就是桥接模式的设置步骤,相信大家应该学会了如何去设置桥接模式了。桥接模式配置简单,但如果你的网络环境是ip资源很缺少或对ip管理比较严格的话,那桥接模式就不太适用了。那么遇到这种情况,我们该如何解决呢?接下来,我们就来认识vmware的另一种网络模式:NAT模式。
NAT模式借助虚拟NAT设备和虚拟DHCP服务器,使得虚拟机可以联网。其网络结构如下图所示:
首先,设置虚拟机中NAT模式的选项,打开vmware,点击“编辑”下的“虚拟网络编辑器”,设置NAT参数及DHCP参数。
将虚拟机的网络连接模式修改成NAT模式,点击“编辑虚拟机设置”,然后点击“网络适配器”,选择“NAT模式”。
然后修改IP地址要在这里修改,使用ipconfig命令不能永久修改
命令:vi /etc/sysconfig/network-scripts/ifcfg-网卡名
网卡名进入/etc/sysconfig/network-scripts/
目录查看即可,CentOS7以后不再默认为eth0。
注意:BOOTPROTO设置为静态或者动态,如果要设置为静态IP,则将其设置为BOOTPROTO=static或者BOOTPROTO=none。
编辑完成,保存退出,然后重启虚拟机网卡,service network restart
使后台配置成功,使用ping命令ping外网ip,测试能否联网。
我们可以发现我们现在能联网并且主机和虚拟机之间也能相互ping通。
所以VMware Network Adapter VMnet8虚拟网卡的作用是什么?,那我们现在就来测试一下。我们把VMware Network Adapter VMnet8虚拟网卡禁用掉。
禁用之后,我们再ping外网
如此看来,虚拟机能联通外网,确实不是通过VMware Network Adapter VMnet8虚拟网卡,那么为什么要有这块虚拟网卡呢?
之前我们就说VMware Network Adapter VMnet8的作用是主机与虚拟机之间的通信,接下来,我们就用远程连接工具来测试一下。
然后,将VMware Network Adapter VMnet8启用之后,发现远程工具可以连接上虚拟机了。
到这里NAT模式就结束了,相信大家已经会配置NAT模式了,利用虚拟的NAT设备以及虚拟DHCP服务器来使虚拟机连接外网,而VMware Network Adapter VMnet8虚拟网卡是用来与虚拟机通信的。
Host-Only模式其实就是NAT模式去除了虚拟NAT设备,然后使用VMware Network Adapter VMnet1虚拟网卡连接VMnet1虚拟交换机来与虚拟机通信的,Host-Only模式将虚拟机与外网隔开,使得虚拟机成为一个独立的系统,只与主机相互通讯。其网络结构如下图所示:
原理:
提供的是主机和虚拟机之间的网络互访。只想让虚拟机和主机之间有数据交换,而不想让虚拟机访问Internet,就要采用这个设置了。 Host-only的条件下,VMWare在真正的Windows系统中,建立一块软网卡。这块网卡可以在网络连接中看到,一般是VMnet1,这块网卡的作用就是使Windows看到虚拟机的IP。
联网方法:
(1)动态IP地址。
像上面那样开启DHCP后,虚拟机直接自动获取IP地址和DNS。就可以和主机相连了。当然,还要进行一些局域网共享的操作,这里不再赘述。
(2)静态IP地址。
也可以手动设置,将虚拟机IP设置与VMnet1同网段,网关设置成VMnet1的网关相同,其余设置与VMnet1相同,DNS设置与主机相同。
通过上面的分析,我们知道只用将主机网卡共享给VMware Network Adapter VMnet1网卡,从而就能达到虚拟机联网的目的。接下来,我们就来测试一下。
首先设置“虚拟网络编辑器”,可以设置DHCP的起始范围。
然后设置虚拟机为Host-Only模式。
然后修改IP地址要在这里修改,使用ipconfig命令不能永久修改
命令:vi /etc/sysconfig/network-scripts/ifcfg-网卡名
网卡名进入/etc/sysconfig/network-scripts/
目录查看即可,CentOS7以后不再默认为eth0。
注意:BOOTPROTO设置为静态或者动态,如果要设置为静态IP,则将其设置为BOOTPROTO=static或者BOOTPROTO=none。
编辑完成,保存退出,然后重启虚拟机网卡,service network restart
使后台配置成功。
现在我们可以看看我们的主机能不能ping通我们的虚拟机。
主机与虚拟机之间可以通信,但是不能和外网通信,现在设置虚拟机联通外网。点击右键“属性”,然后点击“共享”,选择VMware Network Adapter VMnet1
然后我们现在看看VMware Network Adapter VMnet1的IP:
VMware Network Adapter VMnet1的IP被强制设置为了192.168.137.1。
那么接下来,我们就要将虚拟机的DHCP的子网和起始地址进行修改,点击“虚拟网络编辑器”
重新配置网卡,将VMware Network Adapter VMnet1虚拟网卡作为虚拟机的路由。
然后重启网卡,service network restart
使后台配置成功
使用ping命令ping外网ip,测试能否联网。
然后在用主机去ping虚拟机:
测试结果证明可以使得虚拟机连接外网。
到这里关于vmware三种网络模式的工作原理及配置详解就结束了,如果你认真看完,相信你和我一样都掌握了虚拟机的三种网络配置模式。
最后感谢如下链接的参考:https://note.youdao.com/ynoteshare1/index.html?id=236896997b6ffbaa8e0d92eacd13abbf&type=note
----------------------------------------------------------纸上得来终觉浅,绝知此事要躬行---------------------------------------------------------