CentOS7 ping: www.baidu.com: Name or service not known解决方案

关注我,升职加薪就是你!
问题:

[root@localhost max]# ping www.baidu.com
ping: www.baidu.com: Name or service not known

解决方案:
编辑指令:#vi /etc/sysconfig/network-scripts/ifcfg-ens33
添加阿里巴巴(114.114.114.114)和谷歌(8.8.8.8)的域名服务器

DNS1=8.8.8.8
DNS2=8.8.4.4
DNS3=114.114.114.114

编辑指令:# vi /etc/resolv.conf

nameserver 8.8.4.4
nameserver 114.114.114.114

编辑指令:# vi /etc/sysconfig/network

NETWORKING=yes
HOSTNAME=CentOS7-32bit-B

重启网络,编辑指令:# service network restart

Restarting network (via systemctl):                        [  OK  ]

编辑指令测试是否能ping成功。
本机:

[root@localhost max]# ping 192.168.0.185
PING 192.168.0.185 (192.168.0.185) 56(84) bytes of data.
64 bytes from 192.168.0.185: icmp_seq=1 ttl=64 time=0.241 ms
64 bytes from 192.168.0.185: icmp_seq=2 ttl=64 time=0.559 ms
64 bytes from 192.168.0.185: icmp_seq=3 ttl=64 time=0.572 ms
^C
--- 192.168.0.185 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 0.241/0.457/0.572/0.154 ms

宿主主机:

[root@localhost max]# ping 192.168.0.186
PING 192.168.0.186 (192.168.0.186) 56(84) bytes of data.
64 bytes from 192.168.0.186: icmp_seq=1 ttl=64 time=0.031 ms
64 bytes from 192.168.0.186: icmp_seq=2 ttl=64 time=0.061 ms
^C
--- 192.168.0.186 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 0.031/0.046/0.061/0.015 ms

外网:

[root@localhost max]# ping www.baidu.com
PING www.baidu.com (14.215.177.38) 56(84) bytes of data.
64 bytes from www.baidu.com (14.215.177.38): icmp_seq=1 ttl=54 time=6.88 ms
64 bytes from www.baidu.com (14.215.177.38): icmp_seq=2 ttl=54 time=7.48 ms
^C
--- www.baidu.com ping statistics ---
9 packets transmitted, 2 received, 77% packet loss, time 8020ms
rtt min/avg/max/mdev = 6.885/7.186/7.488/0.313 ms

好了,问题完美解决。
关注我,升职加薪就是你!

### CentOS 7 中 `ping: www.baidu.com: Name or service not known` 的解决方案CentOS 7 系统中遇到 `ping: www.baidu.com: Name or service not known` 错误通常表明 DNS 配置存在问题,导致域名无法被解析为 IP 地址。以下是详细的分析和解决方法: #### 1. 检查网络接口配置文件 确认网络接口的配置文件 `/etc/sysconfig/network-scripts/ifcfg-<interface>` 是否正确设置。例如,对于名为 `ens33` 的网络接口,可以编辑其配置文件并确保以下参数存在且正确[^5]: ```bash BOOTPROTO=static ONBOOT=yes IPADDR=192.168.x.y NETMASK=255.255.255.0 GATEWAY=192.168.x.1 DNS1=8.8.8.8 DNS2=8.8.4.4 ``` 其中,`IPADDR` 和 `GATEWAY` 应根据实际网络环境调整,而 `DNS1` 和 `DNS2` 是公共 DNS 服务器地址。 完成修改后重启网络服务以应用更改: ```bash systemctl restart network ``` #### 2. 修改全局 DNS 配置 如果上述方法未解决问题,可以直接编辑全局 DNS 配置文件 `/etc/resolv.conf` 并添加可靠的 DNS 服务器地址[^2]: ```bash nameserver 8.8.8.8 nameserver 8.8.4.4 ``` 需要注意的是,在某些情况下(如 DHCP 自动分配),该文件可能会被覆盖。因此建议通过网络接口配置文件中的 `DNS1` 和 `DNS2` 参数来指定 DNS 服务器。 #### 3. 测试 DNS 功能 使用 `nslookup` 或 `dig` 命令测试 DNS 解析功能是否正常工作: ```bash nslookup www.baidu.com ``` 或者 ```bash dig www.baidu.com ``` 如果这些工具返回有效的 IP 地址,则说明 DNS 配置已修复;否则需进一步排查问题所在。 #### 4. 检查防火墙和服务状态 确保系统的防火墙不会阻止 DNS 查询请求,并验证必要的网络服务正在运行: ```bash firewall-cmd --list-all systemctl status NetworkManager systemctl status named ``` #### 5. 路由器或虚拟化平台设置 如果是基于 VMware 或其他虚拟化技术部署的 CentOS 7 实例,请检查虚拟机网络适配器模式以及宿主机上的网络配置是否存在冲突[^3]。必要时切换到桥接模式或将虚拟网卡绑定至物理网卡上。 --- ### 总结 通过以上步骤逐一排查并修正可能导致此错误的原因即可成功解决 `ping: www.baidu.com: Name or service not known` 的问题。最终目标是让系统能够正确访问外部互联网资源并通过标准协议实现通信连接。
评论 6
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

徐先生Paul

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值