網卡丟包問題


關鍵詞: 丟包  網卡  bond0 telnet tcpdump ifconfig 連接失敗

 

一、故障表現

2018年1月11日下午18點,適配平台 192.168.120.1/2報警  日志提示 redis連接上不。

在120.1 上執行 telnet 192.168.120.2 6379 發現執行5次,有1次連接上不。現象看上去像網絡不穩定。 

 

二、處理過程:

A. telnet 其它端口,看是否redis問題。  ------ 可排除是否應用問題。

120.1 上telnet 120.2 的22端口,發現失敗率近20%。排除redis的問題。

B.  抓包分析tcp的握手建立過程,確認問題所有

使用tcpdump 抓兩邊的包,看tcp握手情況

120.1
120.2
 
tcpdump -s 0 -i bond0 dst port 9999 tcpdump -s 0 -i bond0 port 9999 雙邊都抓包
telnet 192.168.120.1 9999 nc -l 9999 在120.2上監聽端口9999然后再120.1上發起telnet

結果如下:

 

結論:120.2回包正確,120.1收不到120.2返回的sync的ack確認包,所以120.1不停的重試。

基於以上分析,有兩種可能:

  • 網絡線路、路由問題等外部問題
  • 操作系統、網卡故障等主機類問題

繼續使用排除法:由於外部問題不好定位,好么先確定主機問題。

使用ifconfig查看網絡情況:

從圖可見,bond0網卡 RX(接收) dropped掉大量包,正常情況應該是0。至此基本可確認是 bond0將收到的握手包drop掉了。


免責聲明!

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



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