190309-MTR工具使用说明与结果分析

MTR工具使用说明与结果分析

当客户端访问目标服务器或负载均衡,使用ping命令测试出现丢包或不通时,可以通过MTR等工具进行链路测试来判断问题来源。本文先介绍了MTR工具的基本原理,然后对测试结果进行分析,以及对测试步骤进行了说明。

MTR基本信息

  1. MTR(My traceroute)是几乎所有Linux发行版本预装的网络测试工具,此工具也有对应的Windows版本,名称为WinMTR。
  2. MTR工具将ping和traceroute命令的功能并入了同一个工具中,实现更强大的功能。
  3. Linux版本的mtr命令默认发送ICMP数据包进行链路探测。可以通过“-u”参数来指定使用UDP数据包用于探测。
  4. 相对于traceroute命令只会做一次链路跟踪测试,mtr命令会对链路上的相关节点做持续探测并给出相应的统计信息。所以,mtr命令能避免节点波动对测试结果的影响,所以其测试结果更正确,建议优先使用。

MTR使用方法

用法说明:

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

常见可选参数说明:

  1. -r 或 -report:以报告模式显示输出。
  2. -p 或 -split:将每次追踪的结果分别列出来。
  3. -s 或 -psize:指定ping数据包的大小。
  4. -n 或 -no-dns:不对IP地址做域名反解析。
  5. -a 或 -address:设置发送数据包的IP地址。用于主机有多个IP时。
  6. -4:只使用IPv4协议。
  7. -6:只使用IPv6协议。
  8. 另外,也可以在mtr命令运行过程中,输入相应字母来快速切换模式。
  9. ?或 h:显示帮助菜单。
  10. d:切换显示模式。
  11. n:切换启用或禁用DNS域名解析。
  12. u:切换使用ICMP或UDP数据包进行探测。

示例输出:

示例

默认配置下,返回结果中各数据列的说明如下。

  1. 第一列(Host):节点IP地址和域名。如前面所示,按n键可以切换显示。
  2. 第二列(Loss%):节点丢包率。
  3. 第三列(Snt):每秒发送数据包数。默认值是10,可以通过参数“-c”指定。
  4. 第四列(Last):最近一次的探测延迟值。
  5. 第五、六、七列(Avg、Best、Wrst):分别是探测延迟的平均值、最小值和最大值
  6. 第八列(StDev):标准偏差。越大说明相应节点越不稳定

链路测试步骤

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×