丟包原因
網路原因
- 交換機或路由器load過高。
- 交換機或路由器鏈路故障。
- 交換機或路由器埠error down/up down。
- 交換機路由器CRC錯誤。
- 交換機或路由器負載不均衡導致單邊壓力過高。
- 運營商骨幹網阻塞。
- 地址被運營商黑洞封停。
主機原因
- 主機CPU負載過高(CPU負載過高,影響資料包到網路卡之間的傳輸計算,從而發生丟包現象)。
- 主機網路卡故障。
- 主機虛擬化層面丟包(針對目前大多伺服器為雲主機)。
分析丟包原因
分析工具
- ping:最基本的測試工具,測試本地到目的地址網路是否正常(需要注意的是:1.可能存在目的地址禁止ICMP協議通訊的情況。2.如果目的地址為域名,可能會受到DNS解析影響,需要對DNS解析地址是否正確進行判斷。)
- traceroute:traceroute(跟蹤路由)是路由跟蹤實用程式,用於確定 IP 資料包訪問目標所採取的路徑。traceroute 命令用 IP 生存時間 (TTL) 欄位和 ICMP 錯誤訊息來確定從一個主機到網路上其他主機的路由。
- mtr:網路診斷工具結合ping與traceroute。
例項
到某個IP地址不通,查詢後發現該地址被運營商黑洞封停導致。
mtr -r 59.24.3.173
Start: Mon Oct 15 15:12:10 2018
HOST: web Loss% Snt Last Avg Best Wrst StDev
1.|-- gateway 0.0% 10 1.4 1.3 0.8 2.5 0.3
2.|-- 139.159.7.141 0.0% 10 1.0 1.0 0.9 1.1 0.0
3.|-- 117.79.134.101 0.0% 10 1.7 1.6 1.5 1.7 0.0
4.|-- ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
5.|-- 220.181.0.141 40.0% 10 2.0 2.0 1.8 2.3 0.0
6.|-- 220.181.177.241 0.0% 10 2.5 2.5 2.4 2.6 0.0
7.|-- ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
遇到過一次新建雲主機無法ping通的問題,後來經查詢發現是由於該雲主機的IP地址被運營商黑洞封停導致,以上IP用於距離,無實際意義,並非當時環境。
以上述資料為例,進行分析:
本地到目的地址59.24.3.173第六跳後路由不知道下一跳地址是什麼,由此可知當前問題出現在第6跳,登入www.ipip.net檢視第6跳地址:所屬地為中國北京電信,此時如果想快速解決此問題更換雲主機IP即可,如果時間不著急,可以向北京電信報障,詢問原因。(IDC流程)
網路測試工具的基本使用
1.ping
基本上ping命令沒有什麼可介紹的大多數人都會使用,比較簡單,我們在測試網路情況時會優先使用ping命令來測試連通性。
需要注意的是:Windows中ping預設傳送4個包,而Linux無限發包直至停止。
2.traceroute
可以用於檢視路由走向。
需要注意的是當我們traceroute某些網站的時候可能無法到達終點,是因為某些伺服器可能遮蔽了UDP協議偵測,導致無法返回ICMP,我們可以使用TCP協議進行偵測。
traceroute www.baidu.com
traceroute: Warning: www.baidu.com has multiple addresses; using 180.97.33.107
traceroute to www.a.shifen.com (180.97.33.107), 64 hops max, 52 byte packets
1 10.131.5.1 (10.131.5.1) 13.545 ms 1.713 ms 2.664 ms
5 * * *
6 220.181.0.133 (220.181.0.133) 7.025 ms
220.181.16.161 (220.181.16.161) 10.303 ms
220.181.0.133 (220.181.0.133) 5.124 ms
7 220.181.0.197 (220.181.0.197) 5.972 ms
36.110.244.33 (36.110.244.33) 14.937 ms
220.181.177.197 (220.181.177.197) 9.611 ms
8 202.97.84.46 (202.97.84.46) 30.453 ms
202.97.84.38 (202.97.84.38) 32.658 ms 38.656 ms
9 202.102.69.14 (202.102.69.14) 31.620 ms
202.102.69.58 (202.102.69.58) 37.997 ms
202.102.69.14 (202.102.69.14) 30.671 ms
10 * * *
11 180.97.32.102 (180.97.32.102) 31.078 ms
180.97.32.90 (180.97.32.90) 31.279 ms
180.97.32.94 (180.97.32.94) 28.057 ms
12 * * *
13 * * *
14 * * *
15 * * *
16 * * *
17 * * *
18 * * *
19 * * *
traceroute -T www.baidu.com
traceroute to www.baidu.com (14.215.177.38), 30 hops max, 60 byte packets
1 gateway (38.83.106.97) 0.683 ms 0.668 ms 0.689 ms
3 66.102.252.217 (66.102.252.217) 1.073 ms 1.101 ms 1.152 ms
4 66.102.252.217 (66.102.252.217) 1.194 ms 59.43.189.237 (59.43.189.237) 27.854 ms 66.102.252.217 (66.102.252.217) 1.523 ms
5 59.43.189.237 (59.43.189.237) 28.343 ms 27.968 ms 28.334 ms
6 59.43.182.78 (59.43.182.78) 180.556 ms * *
7 59.43.130.121 (59.43.130.121) 178.820 ms * 59.43.130.145 (59.43.130.145) 175.175 ms
8 59.43.80.118 (59.43.80.118) 180.330 ms 177.183 ms 59.43.130.125 (59.43.130.125) 178.851 ms
9 113.96.0.93 (113.96.0.93) 183.289 ms 59.43.80.118 (59.43.80.118) 176.593 ms 59.43.80.22 (59.43.80.22) 182.926 ms
10 113.96.0.93 (113.96.0.93) 186.368 ms * *
11 * * *
12 * * *
13 * * *
14 * * 14.215.177.38 (14.215.177.38) 180.576 ms
3.mtr
mtr -r www.baidu.com
Start: Mon Oct 15 16:12:23 2018
HOST: localhost.localdomain Loss% Snt Last Avg Best Wrst StDev
1.|-- gateway 0.0% 10 0.2 0.3 0.2 0.4 0.0
4.|-- 66.102.252.217 0.0% 10 0.9 1.0 0.8 1.2 0.0
5.|-- 59.43.189.237 0.0% 10 28.0 28.0 27.8 28.8 0.0
6.|-- 59.43.182.74 0.0% 10 177.0 186.4 176.9 249.7 22.7
7.|-- 59.43.187.93 80.0% 10 174.8 174.9 174.8 175.0 0.0
8.|-- 59.43.130.149 0.0% 10 175.2 175.2 175.2 175.3 0.0
9.|-- 59.43.80.118 0.0% 10 176.8 177.7 176.8 180.4 0.9
10.|-- 113.96.4.146 0.0% 10 183.2 179.8 176.4 183.2 2.4
11.|-- ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
12.|-- 14.29.121.190 10.0% 10 177.6 178.9 177.3 189.7 4.0
13.|-- ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
14.|-- ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
15.|-- 14.215.177.39 0.0% 10 181.2 180.5 180.4 181.2 0.0
網路測試工具主要是為了找到故障的原因或者路由故障點,具體是什麼原因導致的丟包還需要根據裝置或者系統進行單獨分析。