浅说解决VMware桥接模式连接主机
浅说解决VMware桥接模式连接主机
内容概要:
1: 搞懂VMware的桥接,NAT,HostOnly三种模式的意义.
2: 分别示范,CentOS 6,CentOS 7的手动分配固定虚拟机的IP地址.
3: 使用桥接方法ping通主机,并用Xshell远程控制.
解决的问题:
1: 虚拟机上不了网.
2: 无法ping通主机或远程连接.
3: 网卡启动总是失败,报错.
写作目的:
初装linux后,我们会习惯性的ping一下主机,看看虚拟机是否和主机连接正常,若正常便会迫不及待的用Xshell远程连接虚拟机,进行验证并操作。可安装完成后,却发现了诸多问题,例如虚拟机上不了网,ping不通主机,重新启动网卡后,也不行,甚至报错,有的同学的图形界面上干脆连网络连接的那个小图像都没有,还有的刚开始正常,可重启后,或者用几次后就有不行了。此问题看似不是什么大问题,却不小的影响到了我们初接触linux的心情,重装系统又浪费了宝贵的时间,恢复快照也许能解决问题,可确得不到知识。
因为自己开始时也深受此问题困扰,在自己查阅了几篇相关资料,并成功地解决了自己的问题,在此过程中,获得了不少知识,加之我们以后的实践多为有线局域网练习,稳定,固定,所以决定总结一下在桥接模式下,手动配置网卡IP,最终能ping通主机,从而远程连接。
为什么会出现这些问题:
其实出现这些种种问题有一部分是因为,在开始安装CentOS时,大家忽略了一个安装选项,那就是网络设置,按钮没打开,才出现后面的关于网卡的诸多问题,自己亲测,若此按钮打开后,无论是NAT,还是桥接,基本上来都能直接上网,或ping通主机,远程连接。但要是没点开的话,那之后可就要麻烦一下了。
注意:大家在安装前,要把,虚拟机——设置选项的网络适配器调成桥接模式,因为本文是采用桥接模式连接主机的,同时要点击,编辑——虚拟网络编辑器,然后在桥接模式下选择与自己电脑相符的网卡。
CentOS 6.8:
在这里要注意,我的这个版本安装时,网络选项按钮是用不了的,有的不是,有的就可以打开网络连接,没有也无关紧要,后文有解决方法。
CentOS 7.2:
虽然这里可以点“+”号,直接编辑,网卡各种选项,但个人建议我们初学者还是不要添加,就用图中默认的“eno16777736”,等安装好了,既可以确认网卡开启是否正常,还能通过命令行修改网卡配置文件。
首先,对于我们初学者要先搞懂VMware的三种虚拟网络工作模式的含义,才有助与我们更好地解决问题,详细的介绍大家可google相关资料自行了解,这里只简单的列出了含义,并举几个有助于我们理解的小例子。
虚拟机网络模式:桥接;NAT;HostOnly
● 桥接:
在桥接模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立的主机(主机和虚拟机处于对等地位),它可以访问网内任何一台机器。在桥接模式下,我们往往需要为虚拟主机配置IP地址、子网掩码等(注意虚拟主机的ip地址要和主机ip地址在同一网段)。
使用桥接模式的虚拟系统和主机的关系,就如同连接在一个集线器上的两台电脑;要让他们通讯就需要为虚拟系统配置ip地址和子网掩码。如果我们需要在局域网内建立一个虚拟服务器,并为局域网用户提供服务,那就要选择桥接模式。
举个例子:
例如大学宿舍里有一个路由器,宿舍里四个人连接这个路由器,路由器默认IP是192.168.1.1,子网掩码是255.255.255.0,而其他四个人是自动获取ip,假设四个人的ip是:
A:192.168.1.100 C:192.168.1.102
B:192.168.1.101 D:192.168.1.103
那么虚拟机的ip可以设置的ip地址是192.168.1.2—192.168.1.99, 192.168.1.104—192.168.1.254(网络地址全0和全1的除外,再除去ABCD四个人的ip地址)
假如虚拟机的ip地址设置为192.168.1.98,这个ip地址,ABCD这四个人就可以通过192.168.1.98访问虚拟机了,如果虚拟机需要上外网,那么还需要配置虚拟机的路由地址,就是192.168.1.1了,这样,虚拟机就可以上外网了,但是,上网我们一般是通过域名去访问外网的,所以我们还需要为虚拟机配置一个dns服务器,我们可以简单点,把dns服务器地址配置为google的dns服务器:8.8.8.8,到此,虚拟机就可以上网了。
●NAT
NAT 是 Network address translate的简称。NAT技术应用在internet网关和路由器上,比如192.168.0.123这个地址要访问internet,它的数据包就要通过一个网关或者路由器,而网关或者路由器拥有一个能访问internet的ip地址,这样的网关和路由器就要在收发数据包时,对数据包的IP协议层数据进行更改(即 NAT),以使私有网段的主机能够顺利访问internet。此技术解决了IP地址稀缺的问题。同样的私有IP可以网关NAT 上网。
VMWare的NAT上网也是同样的道理,它在主机和虚拟机之间用软件伪造出一块网卡,这块网卡和虚拟机的ip处于一个地址段。同时,在这块网卡和主机的网络接口之间进行NAT。虚拟机发出的每一块数据包都会经过虚拟网卡,然后NAT,然后由主机的接口发出。
虚拟网卡和虚拟机处于一个地址段,虚拟机和主机不同一个地址段,主机相当于虚拟机的网关,所以虚拟机能ping到主机的IP,但是主机ping不到虚拟机的IP。
●Host-Only
提供的是主机和虚拟机之间的网络互访。只想让虚拟机和主机之间有数据交换,而不想让虚拟机访问Internet,就要采用这个设置了。
Host-only的条件下,VMWare在真正的Windows系统中,建立一块软网卡。这块网卡可以在网络连接中看到,一般是VMNET1,这块网卡的作用就是使Windows看到虚拟机的IP。
解决方案------------------------------------------------------------------
Centos 6:
首先命令行:
[root@localhost ~]# ifconfig
然后,会出现如下内容,注意,有eth0的,不管你有没有inetaddr:192.1.1.1这句,请看A,没有eth0的请看B;
A:
有eth0,并且有IP地址:说明你安装没出现问题,IP也被正常的分配了。
有eth0,没有IP地址:网卡没开或IP分配出现问题。
B:
没有eth0:有两种情况,这个有可能是有的CentOS版本默认没有激活网卡,或者是网卡没认出来,这种况下你需要手动创建一个在/etc/sysconfig/network-scripts/下创建一个名为ifcfg-eth0的文件,文件内容,下文即将说到。
解决步骤 :
1:进入网络配置文件的目录
[root@localhost ~]# cd /etc/sysconfig/network-scripts/
2:编辑如下内容,没有则创建
[root@localhost network-scripts]# vim ifcfg-eth0
3:准确无误的填整后,并不能立即生效,还需执行如下命令重启网卡,重读配置文件
[root@localhost network-scripts]# service network restart
会出现如下信息,说明你的配置文件无误,网卡正常的重新启动了
如果有failed,说明ip,网关,或mac地址有误,反复检查
4:ping一下主机验证
能ping通,没有丢包,最终大功告成.因为是手动添加,不再是自动获取,这回再也不用担心ip冲突,或用无线IP变化,从而总得修改Xshell的连接IP啦!
Centos 7:
7和6基本一样,就是7的网卡名字变了,这里为了全面的掌握此方法,7的修改我们采用图形界面。
解决步骤:
1:点击网卡的小图标,然后点设置网卡,连图标都没有的朋友,就按照centos6执行吧。
2:这里能看到自己的网卡信息,然后点击小锯齿
4:点IPV4,把Addresses改为手动,剩下的按照实际情况,注意填写,然后点击apply。
5:重启网卡,注意,7弹出的信息和6不一样,但只要是OK,不是failed就没问题
6:修改完成后,会自动修改对应文件内容,我们来查看一下
7:最后验证,成功ping通
自动生成的跟手动修改的还是有些不一样的,但都不妨碍,你就是删了里面一些非关键句的内容,如:PREFIX,BOOTPROTO,IPV6_PEERDNS,它也不影响启动.
本文出自 “菩提本无树” 博客,请务必保留此出处http://kurosakisora.blog.51cto.com/10979470/1829521