dns解析过程_【网络通信】记一次DNS解析超时异常排查

最近线上偶尔报一些超时的异常报警,刚开始没有当回事,以为是网络不稳定造成的。有一天早上吃完早餐也觉得太久没有去浏览线上一些异常信息了,于是就一个个浏览了下,有些超时异常上下文经常带着“xxx.com: Temporary failure in name resolution”。这个异常是DNS解析异常,这个时候果断找运维帮忙排查下问题。

运维通过tcpdump抓包,发现是有的DNS请求没有收到响应,超时5秒后,再次发送DNS请求才成功收到响应。

DNS解析缓存在规定时间内失效,解析就有这种并发解析超时问题。 经查阅资料,我们发现CentOS 6 以后DNS解析器对于ipv4和ipv6的解析是可以并行的,一旦DNS解析器对于ipv4和ipv6使用同一个socket接口,而IP地址又是一样的,在同时发出ipv4和ipv6解析请求后,只会收到一个ipv4的解析响应,这是因为在存在防火墙等机制的网络环境中,同样源目的ip,同样源目的port,同样的第4层协议的连接会被防火墙看成是同一个会话,因此会存在返回包被丢弃现象,此时socket将一处于“等待”模式,等待ipv6的解析响应,故导致解析缓慢。(如果开启ipv6和ipv4解析,并且域名支持ipv6,优先选择ipv6)

一. 在RHEL5/CentOS5/Ubuntu 10.04等linux下,dns的解析请求过程如下:

       

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值