场景

客户ping测试一个域名(假设为 www.123456.comm),反馈说有延迟;

排查过程

1、让客户测试解析域名的时间

time dig www.123456.comm	#time可以记录命令的执行时间

以此判断dns解析是否有延迟;
反馈结果:(示例)
image.png
dns解析正常(解析这个域名用了0.07s),没有延迟;

2、让客户直接ping目标ip

测试是否为网络延迟;
客户反馈ping ip正常、稳定(通过ping包返回的time值判断)

3、让客户ping域名

客户反馈:
ping域名的时候可以直接解析出来,但是需要等大概3秒才会显示ping包,且time值稳定、正常;

原因

因为之前遇到过类似的问题,有些许思路,知道大概是以为ping域名反向解析的原因;
我们在使用ping命令的时候,会进行两次解析,先正向解析(域名转换成ip),再反向解析(通过ip查找域名),不过这两个解析的速度是极快的,所以ping域名的时候是感觉不到的,最直观的就是返回数据包的速度;
当ping域名的时候,第一行有域名和ip返回,说明正向解析已经成功,此时ping进程就已经发送icmp数据包了,只要网络是通畅的,肯定有数据包返回;但是客户说需要等3秒,判断就是ping的时候做了反向解析了(反向解析失败,现场等待的过程大概为3秒);
此现象并不会造成影响,只是ping的时候的一种现象;

因为ping命令是模式有反向解析的,这个跟dns、系统还有关系,具体还需要深入排查;

资料参考

1、
image.png

参考资料,在linux系统中进行了ping测试,然后通过 ps -ef --forest 查看ping的进程、线程,发现并不是所说的那样,还是一个单进程的程序;

2、image.png

可以理解为ping域名的时候进行了两个解析,一个是正向解析,一个是反向解析,

打赏
支付宝 微信
上一篇 下一篇