天天看點

鍊路問題?高防連結逾時一、問題簡述二、問題分析三、總結

一、問題簡述

某使用者回報安徽電話經常出現連結高防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的通信全過程

鍊路問題?高防連結逾時一、問題簡述二、問題分析三、總結

繼續閱讀