天天看点

链路问题?高防链接超时一、问题简述二、问题分析三、总结

一、问题简述

某用户反馈安徽电话经常出现链接高防IP超时的情况,判断是安徽电信链接高防存在链路问题,期望我们协助解决。

二、问题分析

1、网络测试

用户在存在有问题的客户端上协助执行ping以及mtr,从MTR上看,客户端就出现丢包,是本地客户端网络的问题。但是这个丢包率其实很低,同时TCP协议是有重传机制的,理论上不会出现明显链接中断。

链路问题?高防链接超时一、问题简述二、问题分析三、总结

2、进一步进行分析抓包

用户反馈了2个抓包,发现了2个场景:

2.1、客户端直接连接负载均衡也会出现问题

  1. 链路问题?高防链接超时一、问题简述二、问题分析三、总结
    问题原因:分析这个报文看到,这个客户端的request ,是过了15S再次发出的。由于负载均衡的默认keepalive的时间为15S的。,如果超过15S,就断开链接了,导致通信有问题。

解决方法:建议在负载均衡的控制台调整到最长60S观察下的。

2.2、客户端链接高防出现问题

链路问题?高防链接超时一、问题简述二、问题分析三、总结

如图为7月29日11:44:23到7月29日12:46:33的抓包。

但是与高防IP的443端口的通信,在7月29日12:23:13 之后就没有了,而给的日志是 时间是7月29日12:44:11 这个很诡异。

继续分析报文,理论上当时在抓包,所有的通信都会保留在报文中,同时客户端的报错日志为:

链路问题?高防链接超时一、问题简述二、问题分析三、总结

最终定位是由于客户端的原因,查询dns的请,如下图存在dns劫持。对应的cname被劫持到了一个海外的地址。

链路问题?高防链接超时一、问题简述二、问题分析三、总结

同时查询与IP地址的通信全部超时了。

链路问题?高防链接超时一、问题简述二、问题分析三、总结

最终的结论为由于该域名对应的cname地址被劫持了,导致与服务端通信异常。

3、处理建议

A、最终客户端修改dns地址为223.5.5.5 223.6.6.6 然后观察的

B、最终客户端绑定HOST到 高防IP上进行使用的。

C、修改域名解析为A记录,然后使用的。

3个方法,影响面不一样,可以进行评估下选择。

最终通过联系运营商刷新dns缓存后解决。

三、总结

这个问题能够分析出来有2个核心点:

1、抓包时抓取了所有的报文,而非与高防IP进行通信的报文。不是说有问题都是表面看到的。

2、熟悉以及了解HTTP的通信全过程

链路问题?高防链接超时一、问题简述二、问题分析三、总结

继续阅读