异常描述:

iptables规则正常、firewall未使用、selinux未使用、安全组规则正常

dig可以获取到ip信息,但是ping提示如下

ping异常提示name or service not known_ping异常

strace测试如下

ping异常提示name or service not known_ping异常_02

dig通说明dns能够正常获取域名与ip信息,但是为什么ping却失败了

查看了dns文件/etc/resolv.conf 文件权限没问题,查看配置与配置错误可能性也没有异常

查看了网卡文件没有对dns的定义

查看了/目录权限无异常

查看文件/etc/nsswitch.conf hosts配置如下

hosts :   files

修改hosts: files dns myhostname     或者修改为  hosts: files dns

ping异常提示name or service not known_ping异常_03

稍后测试ping正常,间隔时间请查询/etc/nscd.conf文件配置

如果不正常可以nscd -i hosts 清理缓存之后再测试ping是否正常

如果上述情况等待一会还是ping失败, 请检查nscd,因为nscd可能会导致解析结果不符合预期或者域名无法解析等情况, 这个情况请彻底关闭nscd服务,如果还需要使用nscd服务就重启nscd服务。

关于nscd服务异常是会影响ntpdate向域名获取时间信息的情况,所以建议使用nscd服务,需要定时检查nscd服务是否有上述异常或者使用其他服务替换。


来源: https://www.jianshu.com/p/cf0bc1f225a3    (也是我写的)