解决VMware虚拟机中CentOS 7 报错ping: www.xxx.com: Name or service not known

1. 前言

本来这篇文章不准备写出来了,因为网上关于这个报错的文章非常多。但是今天自己遇到了一种网上没有找到的情况,因而写出来,给大家作为参考,同时也对网上的一些资源进行了 整理,希望能帮助到你,尤其是像我一样的小白。如果有遇到其他情况,也欢迎在下方留言补充、完善。

2. 问题描述

问题:CentOS 7中无法联网,如下所示:
在这里插入图片描述
其他可能由于网络原因造成的报错:用yum时,报错cannot find a valid baseurl for repobase7x86_64;以及用git clone时,报错Could not resolve host: github.com; Unknown error等。

3. 问题排查与解决

3.1 检查网络连接设置

使用命令sudo nmcli d,如果网络未连接,结果如下:
在这里插入图片描述
进一步确认
ls /etc/sysconfig/network-scripts/ifcfg-e*查看文件,因为每个人的网卡文件名可能有不同,我的这里是cat /etc/sysconfig/network-scripts/ifcfg-ens33,然后使用命令cat /etc/sysconfig/network-scripts/ifcfg-ens33,结果如下:

[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33 
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=5db68001-983a-4391-8c8c-ad61b31799ba
DEVICE=ens33
ONBOOT=no  # 设置不启动网卡

果然这里设置默认不启动连接网络。
解决办法:输入vi /etc/sysconfig/network-scripts/ifcfg-ens33,把里面的ONBOOT=no修改为ONBOOT=yes,保存退出。也可以在图形界面找到/etc/sysconfig/network-scripts/ifcfg-ens33进行点击修改,然后保存。
再输入service network restart重启网卡即可。
再ping,发现成功,解决问题。如果问题还在,继续往后看。

3.2 检查网关问题

使用cat /etc/resolv.conf命令查看网关配置,如果显示如下:

[root@localhost ~]# cat /etc/resolv.conf 
# Generated by NetworkManager

说明此时没有配置网关。
解决办法:修改/etc/resolv.conf文件,命令为vi /etc/resolv.conf,修改为如下内容:

# Generated by NetworkManager
search localdomain
nameserver 192.168.211.2 # 虚拟机默认分配的
nameserver 114.114.114.114 # 电信的DNS
nameserver 8.8.8.8 # googel的DNS

通常虚拟机中cat /etc/resolv.conf默认是:

search localdomain
nameserver 192.168.xxx.xxx  # 这里取决于你的网络,每个人会有所区别

也可以添加一下DNS

nameserver 114.114.114.114  # 电信的DNS
nameserver 8.8.8.8  # googel的DNS

:wq保存退出后,再ping,问题解决。如果没有解决,继续往后看我今天遇到的情况。

3.3 VMware虚拟机网络配置有问题

关闭所有的虚拟机系统,点击编辑–>虚拟网络编辑,接下来如下所示。
在这里插入图片描述

3.4 VMware虚拟机恢复快照

这一步的前提是有进行快照。
虚拟机的一个好处是可以通过快照快速恢复原状。所以在进行一些 不确定操作前,可以进行快照,万一中途出现问题一时无法解决,也可以通过快照恢复,重新操作尝试。
最坏的打算就是重新安装虚拟机。
完成后,再次进入虚拟机,ping www.baidu.com,成功,如果还没有,再把1和2检查一遍。
还是没有解决,暂时我也没有遇到其他情况,欢迎大家留言讨论。

4. 参考文章

站在巨人的肩膀上,总能帮助我们更好的前行。这里特别感谢以下几个博主的教程。如果大家有什么疑问,欢迎大家在博客下面留言交流,一起进步!

  1. CentOS7用yum安装软件提示 cannot find a valid baseurl for repobase7x86_64
  2. tar (child): lbzip2: Cannot exec: No such file or directory 解决方法
  3. LInux因为缺失网关出现Name or service not known的解决方法
  4. Linux中ping不通外网
  5. ping: http://google.com: Name or service not known
发布了128 篇原创文章 · 获赞 157 · 访问量 13万+

猜你喜欢

转载自blog.csdn.net/qq_27283619/article/details/103706736