场景再现:

今天下午抱着学习的大好心情打开前几天在虚拟机安装的Centos7系统,想着来熟悉熟悉命令了,看自己看记得多少,敲着着敲着不自觉地打开了每天必看的小破站,不看不知道,一看吓一跳,我直接好家伙,

 

这是嘛情况,于是果断ping了一下百度

 这,不禁反思,前几天好好的,这是啥情况,于是我想到了快照,结果还是一样的结果,

这样的话就可以推断出不是我动了啥设置的问题。于是找了几个帖子看了一下,也跟着做了,但是问题并没有很好地解决。于是扩大面积搜索,我知道Linux里有network和NetworkManager两种网络管理工具。

 原因分析:

说白了,其实就是network和NetworkManager的配置会起冲突,而且NetworkManager在网络断开的时候,会清理路由,这样你在network里配置就不能生效了,所以就会出现没有网络的情况,回想几天前,我在network里设置了静态ip,两者可不就起冲突了。


解决方案:

在弄好了我自己的网络之后,为避免此类问题我有试验了几种情况,总结了一下两种情况:

1.主机(个人电脑)更换网络后虚拟机无网络:这个情况就得重新配置一下network配置了

2.配置network后重启虚拟机无网络:不出意外重启一下network即可

第一种,

1.首先先cd到network-scripts目录,让后使用ll命令显示目录下的文件,第一个文件一般就是你的网卡配置文件

cd /etc/sysconfig/network-scripts

 2.使用vim打开编辑这个文件

根据自己的网络信息修改

打开虚拟机——> 编辑——>虚拟网络配置(以NAT模式为例

 

第一个IPADDR这个是设置分配给系统的ip,也就是供外部连接的ip(如Xshell连接),使用ip adrr命令显示出来的ip就是这个,这个根据网关和子网掩码来设置,例如我的网关是192.168.58.2/24,IPADDR我就可以设置为192.168.58.2~198.168.58.254其中的任何一个

第二个GATEWAY和第三个NETMASK依次表示网关和子网掩码,依照上图显示的对应设置就好了

最下面那个DNS可以配置多个,也可以配置一个,配置成8.8.8.8或者直接和你的网关相同都可。

保存,然后使用systemctl restart network命令重启网卡即可

systemctl restart network

第二种:

直接使用systemctl restart network命令重启网卡即可

最后也是最重要的:

第一种和第二种问题使用systemctl restart network命令重启网卡都可能会遇到这种情况

 Job for network.service failed because the control process exited with error code. See "systemctl status network.service" and "journalctl -xe" for details.  

命令行报这个错误,其实解决方法也很简单,,请看我的另一篇文章http://t.csdnimg.cn/jD9Ikicon-default.png?t=N7T8http://t.csdnimg.cn/jD9Ik

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐