虚拟机上ping不通外网, 但是可以访问外网(如使用curl www.baidu.com能返回内容)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了虚拟机上ping不通外网, 但是可以访问外网(如使用curl www.baidu.com能返回内容)相关的知识,希望对你有一定的参考价值。

在虚拟机中输入 ping www.baidu.com, 可能出现如下几种报错

1.?ping: unknown host www.baidu.com?

2.PING www.a.shifen.com (183.232.231.172) 56(84) bytes of data.

以上两种都是?没有配置正确的DNS服务器

解决:? 在window上打开命令窗口, 输入 ipconfig /all?

? ? 找到你当前连接上网的地方, 因为我电脑是连接无线 ,所以在无线网络连接区域下 , 如果是连接有线的有可能就是叫本地连接这个区域, 然后找到此区域下的dns服务器项 并记下来.


技术图片

然后打开 网络界面 ,在vmnet 8上右键 点击属性, 如下图

技术图片

之后会弹出vmnet8属性窗口,双击Internet 协议版本 4, 弹出 Internet 协议版本 4 属性窗口 ,然后重点来了

选择 "使用下面的DNS服务器地址" 然后 在其底下设置 DNS ,将刚才记下的两个DNS 地址分别输入确定保存

技术图片

在虚拟机上, 输入vi /etc/resolv.conf 进行编辑 resolv.conf文件

加入如下红框内容, 后面的那两个ip就是刚才让你记住的, 写入完后保存退出

技术图片

然后 输入 vi /etc/sysconfig/network-scripts/ifcfg-ens33? 编辑ifcfg-ens33文件(注意这个文件名不一定每个人都是这个名称, 你虚拟机上网卡叫什么,这个名称就是什么,但是都会在/etc/sysconfig/network-scripts/目录下, 可以自己找找和我这个文件名字差不多的文件)? ?如下图是我虚拟机上的配置

技术图片

找到BOOTPROTO项看是不是等于 dhcp,如果是那么加上??PEERDNS=no这句( 这是为了防止重启服务导致?刚配置resolv.conf文件会被改变, 为了免于再次配置 所以加上这句)

最后输入 systemctl restart? network.service? ? 进行重启network服务

现在 ping? www.baidu.com 之类的外网就可以ping通了

?

ps 此外 : 还有可能会出现 ping www.baidu.com 时然后出现一直等待返回的界面.整个卡住,但是没有报错. ping 其他外网ip也是一样

解决办法: 出现这个问题有可能就是你开了网络共享. 检查自己的网络是不是共享了.

打开网络和共享中心-> 更改适配器设置? ? 如下图就是开了共享

技术图片

如何关闭? 右键选择属性, 弹出如下的 无线网络连接属性窗口 , 将 红色框中的打勾取消掉确定保存即可

技术图片

以上是关于虚拟机上ping不通外网, 但是可以访问外网(如使用curl www.baidu.com能返回内容)的主要内容,如果未能解决你的问题,请参考以下文章

虚拟机可以ping到外网,但是外网不能ping到虚拟机,请问该如何设置。

为啥ping 不通外网IP?

Suse Linux 虚拟机上,ping不通自己,连接不了外网,从主机cmd ping虚拟机请求超时,

我用虚拟机装的linux 可以ping ssh 内网,但是PING不通网关,也不能ping其它外网。

主机ping不通虚拟机也ping不通vmware网关

Linux服务器,外网没法访问,PING不通。但是内网却可以。