lanying56123 发表于 2018-6-4 08:50:39

浅说解决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:

首先命令行:

  

  # 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:进入网络配置文件的目录
  
  

  # cd /etc/sysconfig/network-scripts/
  

  2:编辑如下内容,没有则创建
  

  
  # vim ifcfg-eth0
  

  

  3:准确无误的填整后,并不能立即生效,还需执行如下命令重启网卡,重读配置文件
  

  # 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,它也不影响启动.
  
  
页: [1]
查看完整版本: 浅说解决VMware桥接模式连接主机