當前位置:才華齋>網路>網路診斷>

Linux幾個常用網路診斷

網路診斷 閱讀(1.84W)

網路維護工作中,通常會遇到很多網路問題,此時,一些定位網路問題的工具顯得尤為重要,下面YJBYS小編介紹一下常用的幾個工具和使用場景

Linux幾個常用網路診斷

  1. ping

ping命令是一條最基礎的測試本機到目的ip連通性的工具,如下圖,不帶任何引數的ping命令預設每秒傳送一個數據包,並返回結果,按下CTRL+C結束,而如果使用-f引數則可以快速不斷髮送icmp資料包,可以通過-f引數檢視大概的丟包率 ping命令返回結果中可以看到總共傳送了多少個包,有多少個包被成功接收,丟包率是多少,ping的總共時長是多少等等

  2. traceroute

使用traceroute命令可以看到傳送的資料包從起點到終點都經過了哪些路由,traceroute相比ping命令來說有一個優點就是可以看到資料包在每一跳或者說經過每兩個相鄰的'節點總共花了多少時間(*表示通路,不是網路不可達),如果網路有問題,可以通過traceroute來大致判斷在哪一跳的地方有問題,或者說網路不通時,可以通過traceroute來確定具體在哪個ip開始連不通

  3. mtr

如果確認網路有問題,那麼mtr是很好的網路診斷工具,mtr命令像traceroute一樣,可以顯示資料包從源ip到目的ip中間所經過的路由,但是,mtr輸出結果更加清楚,不像traceroute那般凌亂,如果想一次性列印所有結果而不是一條一條的出來的時候可以加上-r引數或者--report,當然,還有一個更突出也最實用的特點就是mtr命令可以準確的計算出兩條相鄰的路由之間的丟包率,如下圖,

Loss表示丟包率

Snt表示每秒傳送資料包的數量,預設是10,可通過-c引數指定

Last表示最後一個數據包的返回時延

Avg表示Snt個數據包的平均返回時延

Best表示Snt個數據包中返回時延最短的時間(最優)

Wrst表示Snt個數據包中返回時延最長的時間(最差)

StDev表示返回時延的 保準偏差

所以,通常對於普通的連通性測試,只需要用到ping或者ping -f就可以了,如果ping不通,可以通過traceroute檢視具體是在哪一跳ping不通,而如果ping的通,但是有丟包,可以通過mtr去檢測在哪一段網路丟包比較嚴重以定位問題