Linux下使用mtr做路由图进行网络分析

Posted 蜗牛渣渣

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux下使用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地址做域名解析






































































以上是关于Linux下使用mtr做路由图进行网络分析的主要内容,如果未能解决你的问题,请参考以下文章

Linux下 如何安装mtr以及使用进行网络分析

Zabbix通过mtr进行网络分析

mtr-网络分析工具

linux网络分析性能分析文本格式化文件读写操作之利器

mtr命令详解诊断网络路由

mtr