1. 程式人生 > >Linux下使用mtr做路由圖進行網絡分析

Linux下使用mtr做路由圖進行網絡分析

3.1 mtr 跟蹤 highlight name host 特性 連通性 版本信息

首先安裝mtr

# yum -y install mtr

一般在windows 來判斷網絡連通性用ping 和tracert,

ping的話可以來判斷丟包率,tracert可以用來跟蹤路由,

在Linux中有一個更好的網絡連通性判斷工具,它可以結合ping nslookup tracert 來判斷網絡的相關特性,這個命令就是mtr

[[email protected] ~]# mtr -h

usage: mtr [-hvrctglspni46] [--help] [--version] [--report]
[--report-cycles=COUNT] [--curses] [--gtk]
[--raw] [--split] [--no-dns] [--address interface]
[--psize=bytes/-s bytes]
[--interval=SECONDS] HOSTNAME [PACKETSIZE]

mtr -h 提供幫助命令

mtr -v 顯示mtr的版本信息

mtr -r 已報告模式顯示

[[email protected] ~]# mtr -r 202.108.33.94
?
FOCUS9097 Snt: 10 Loss% Last Avg Best Wrst StDev
?
220.181.61.252 0.0% 6.8 3.3 1.8 7.4 2.2
220.181.17.217 0.0% 0.4 0.5 0.4 0.7 0.1
220.181.16.17 0.0% 0.6 0.5 0.5 0.6 0.0
202.97.53.14 10.0% 0.7 0.7 0.7 0.8 0.0
219.158.35.1 0.0% 0.8 0.8 0.8 0.9 0.0
219.158.5.81 0.0% 1.2 1.3 1.2 1.6 0.1
123.126.0.138 0.0% 1.2 1.1 1.1 1.3 0.1
61.148.153.126 0.0% 1.9 10.5 1.5 89.9 27.9
61.148.143.22 0.0% 1.5 1.6 1.5 1.7 0.0
210.74.178.198 0.0% 1.6 1.6 1.5 1.9 0.1
202.108.33.94 0.0% 1.5 1.5 1.4 1.5 0.0

報告說明:
第一列:顯示的是IP地址和本機域名,這點和tracert很像
?
第二列:snt:10 設置每秒發送數據包的數量,默認值是10 可以通過參數 -c來指定。

[[email protected] ~]# mtr -r -c 15 202.108.33.94
?
FOCUS9097 Snt: 15 Loss% Last Avg Best Wrst StDev
220.181.61.252 0.0% 1.9 3.4 1.8 12.9 3.1
220.181.17.217 0.0% 0.5 0.5 0.4 0.8 0.1
220.181.16.17 0.0% 0.5 0.6 0.5 2.3 0.5
202.97.53.14 0.0% 0.7 0.7 0.7 0.7 0.0
219.158.35.1 0.0% 0.9 0.8 0.8 0.9 0.0
219.158.5.81 0.0% 1.3 2.8 1.2 22.8 5.5
123.126.0.138 0.0% 1.1 1.1 1.1 1.2 0.0
61.148.153.126 0.0% 13.8 7.4 1.6 60.4 15.5
61.148.143.22 0.0% 1.7 1.6 1.5 1.8 0.1
210.74.178.198 0.0% 1.6 1.6 1.4 1.7 0.1
202.108.33.94 0.0% 1.5 1.5 1.4 1.7 0.1

其中-c的說明是:–report-cycles COUNT

?-n 不用主機解釋
?
-c 發送多少個數據包
?
--report 結果顯示,並不動態顯示。
?

第三列:是顯示的每個對應IP的丟包率
第四列:顯示的最近一次的返回時延
第五列:是平均值 這個應該是發送ping包的平均時延
第六列:是最好或者說時延最短的
第七列:是最差或者說時延最常的
第八列:是標準偏差
接下來接著說相關參數:


mtr -s 用來指定ping數據包的大小
?
mtr -n no-dns不對IP地址做域名解析
?
mtr -a 來設置發送數據包的IP地址 這個對一個主機由多個IP地址是有用的
?
mtr -i 使用這個參數來設置ICMP返回之間的要求默認是1秒
?
mtr -4 IPv4
?
mtr -6 IPv6
?
?其中Host列是途經的IP或本機域名
Loss%列就是對應IP行的丟包率了,值得一提的是,只有最後的目標丟包才算是真正的丟包
Last列則是最後一次返回的延遲,按毫秒計算的
Avg列是所有返回時延的一個平均值
Best列是最快的一次返回時延
Wrst列是最長的一次返回時延
StDev列是標準偏差


接下來就是命令參數了:
?
mtr -s 用來指定ping數據包的大小
?
mtr -n no-dns不對IP地址做域名解析
?
mtr -a 來設置發送數據包的IP地址 這個對一個主機由多個IP地址是有用的
?
mtr -i 使用這個參數來設置ICMP返回之間的要求默認是1秒
?
mtr -c 是ping的次數。使用方法跟ping命令一樣
?
mtr -4 IPv4
mtr -6 IPv6
所謂的IPv4和IPv6,現在基本上用不到呢還,我們基本上來測試鏈路連通性都是這麽打的
?
mtr -i 0.1 -n -c 100 IP或域名
這麽打的意思是每0.1秒返回一次結果,ping100次,並且不對IP地址做域名解析

Linux下使用mtr做路由圖進行網絡分析