mtr命令详解诊断网络路由

Posted weifeng1463

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mtr命令详解诊断网络路由相关的知识,希望对你有一定的参考价值。

首先安装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地址做域名解析






























































































































以上是关于mtr命令详解诊断网络路由的主要内容,如果未能解决你的问题,请参考以下文章

如何用MTR诊断网络问题

MTR命令详解

dig命令详解

MTR 网络诊断工具

linux-常用命令-mtr

Linux常用性能诊断命令详解