使用wireshark排除一例網絡問題


背景

開發反饋某個業務接口無法返回數據,懷疑是網絡問題,讓我看下咋回事。

過程

該接口共有3個請求,前面2個請求正常,第3個請求接口會報錯,無法確定是哪邊的問題,需要抓包確認下。
由於是Windows,所以使用wireshark。

時間節點:

  • 10點02分:開發運行程序,wireshark開始抓包。
  • 10點04分:程序報錯:接口錯誤:connection reset{} java.net.SocketException: connection reset

查看wireshark,找到10點04分的,發現了一條暗紅色的數據:

點開傳輸層,出現了 [Expert Info (Warning/Sequence): Connection reset (RST)]

導致 Connection reset 的原因是服務器端因為某種原因關閉了Connection,而客戶端依然在讀寫數據,此時服務器會返回復位標志 RST,然后此時客戶端就會提示java.net.SocketException: Connection reset

這時候開發又提出,在reset之前,是否有收到數據,使用wireshark篩選了一下:
ip.src == 1.2.3.4 ||ip.dst == 3.4.5.6

拿着這些去找對方,基本上就可以證明是對方的問題了。

參考

RST的原理是啥,還是得去惡補一下
https://www.cnblogs.com/exmyth/p/8204724.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM