MTR 网络诊断工具

2019-03-14 11:46:34 浏览数 (1)

MTR 网络诊断工具

为什么会了解到MTR这个工具

今天线上业务出现了大量语音合成问题,本以为是服务出问题,但是经过排查发现服务一切正常就是合成的特别慢,在TTS语音合成服务那边也没有大量的任务堆积,这边也一直再发送需要合成的数据过去,这种情况只能说明在传输需要合成的语句的时候出现了问题,这时候第一个排查的就是网络问题,可能是网络大量丢包造成的数据传输问题,于是开始使用ping命令查看,发现确实有丢包,但是通过ping又没有办法发现是哪个地方丢包,这个时候聪明的你肯定想到我们用traceroute命令来检测数据包传输到哪个地方不传了,但是我发现这个并不能说明什么,因为丢包不是完全丢,而是丢一部分,这个时候想有没有一个命令是pingtraceroute的合体,于是google了一下,发现mtr刚好满足我的需求,于是使用记录并分享.

MTR是什么

刚才我也说了MTRpingtraceroute的合体. 运行Mtr指定一个IP地址,Mtr会查看运行Mtr的主机和指定目标主机之间的网络节点。在确定目标主机和本地主机间每个网络节点的IP地址后,它向每个网络节点发送一个ICMP ECHO请求,以确定到每个节点的链路的质量。就像这样它会打印到每个节点的运行统计信息。他也可以测试UDP和TCP

安装MTR

1) CentOS/RedHat安装

代码语言:javascript复制
yum -y install mtr

2) Ubuntu安装

代码语言:javascript复制
apt-get install mtr

3) windows 安装

代码语言:javascript复制
自行去下载:http://winmtr.net/download-winmtr/

Linux下使用

代码语言:javascript复制
# mtr  --help
usage: mtr [-BfhvrwctglxspQomniuT46] [--help] [--version] [--report]
        [--report-wide] [--report-cycles=COUNT] [--curses] [--gtk]
        [--csv|-C] [--raw] [--xml] [--split] [--mpls] [--no-dns] [--show-ips]
        [--address interface] [--filename=FILE|-F]
        [--ipinfo=item_no|-y item_no]
        [--aslookup|-z]
        [--psize=bytes/-s bytes] [--order fields]
        [--report-wide|-w] [--inet] [--inet6] [--max-ttl=NUM] [--first-ttl=NUM]
        [--bitpattern=NUM] [--tos=NUM] [--udp] [--tcp] [--port=PORT] [--timeout=SECONDS]
        [--interval=SECONDS] HOSTNAME

常用参数解释:

  • -s 用来指定ping数据包的大小
  • -n no-dns不对IP地址做域名反解析
  • -a 来设置发送数据包的IP地址,这个用于主机有多个IP时。
  • -i 使用这个参数来设置ICMP返回之间的要求默认是1秒
  • -c 指定发送多少个数据包
  • -4 IPv4
  • -6 IPv6 在MTR运行过程中,可以输入快捷字母切换模式例如:
  • ?或 h:显示帮助菜单。
  • d:切换显示模式。
  • n:切换启用或禁用 DNS 域名解析。
  • u:切换使用 ICMP或 UDP 数据包进行探测。

测试使用

代码语言:javascript复制
#mtr www.baidu.com
                                                 My traceroute  [v0.85]
TEST-000001 (0.0.0.0)                                  Tue Jan 22 08:57:30 2019
Keys:  Help   Display mode   Restart statistics   Order of fields   quit
                                       Packets               Pings
 Host                                Loss%   Snt   Last   Avg  Best  Wrst StDev
 1. ???
 2. 11.220.128.65                     0.0%     6    2.6   3.2   2.4   6.2   1.3
 3. 11.220.128.53                     0.0%     6   52.9  46.4  13.5  55.0  16.2
 4. 11.182.220.10                     0.0%     6    0.9   1.5   0.9   3.6   0.8
 5. 140.205.27.202                    0.0%     6    1.8   1.5   1.4   1.8   0.0
 6. 116.251.105.237                   0.0%     6    2.0   4.2   1.8  11.4   3.9
 7. 122.224.214.73                    0.0%     6    1.7   2.0   1.7   2.4   0.0
 8. ???
 9. 115.239.209.38                    0.0%     6    2.6   2.7   2.6   2.9   0.0
10. ???
11. ???
12. 115.239.210.27                    0.0%     6    2.5   2.5   2.4   2.5   0.0
  • Host: 显示经过每一跳的地址
  • LOOS%:到此此节点数据包丢包率,显示每个节点的丢包率
  • Snt: 发送包的数量
  • Last: 显示的最近一次的返回延时
  • Avg: 发送ping包的平均延迟
  • Best: 最低延迟时间
  • Wrst: 最大延迟时间
  • StDev:标准偏差

0 人点赞