nslookup ok but ping fail
简介遇到ping域名失败但是nslookup解析正常的问题,排查好久才定位问题,真是年度最坑爹问题
定位nslookup正常说明dns服务器配置是没问题的
查看ping的解析顺序,配置中是先查找 /etc/hosts 然后是dns
cat /etc/nsswitch.confhosts: files dns myhostname查看 /etc/hosts 发现没有配置,按理说应该是会走dns查询,排查 /etc/resolv.conf 真是没问题。
strace 大法看看,怎么去查询 127.0.0.1:53了
socket(AF_INET, SOCK_DGRAM|SOCK_CLOEXEC|SOCK_NONBLOCK, IPPROTO_IP) = 5connect(5, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("127.0.0.1")}, 16) = 0poll([{fd=5, events=POLLOUT}], 1, 0) = 1 ([{fd=5, revents=POLLOUT}])几度怀疑是库的版本问题?,ping程序的问题?内核的问题?各种排查都未解决,后来决定仔细看看strace
stat("/etc/resolv.conf", {st_mode=S_IFREG|S_ISVTX|0363, st_size=44, ...}) = 0openat(AT_FDCWD, "/etc/host