为mtr什么意思普通用户用不了mtr工具

MTR 是一款强大的网络诊断工具,网络管理员使用 MTR 可以诊断和隔离网络问题,并且为上游 ISP 提供有用的网络状态报告。

MTR 是传统 traceroute 命令的进化版,并且可以提供强大的数据样本,因为他集合了 traceroute 和 ping 这两个命令的精华。本文带您深入了解 MTR ,从数据如何生成,到如果正确理解报告样本并得出相应的结论。

关于网络诊断技术的基本理论请参考  .如果您怀疑您的 Linux 系统有其他问题,请参考 。最后,我们假定您已经掌握了  (入门指南) 。

网络诊断相关的背景知识

网络诊断工具 例如 ping traceroute mtr 都使用的 “ICMP” 包来测试 Internet 两点之间的网络连接状况。当用户使用 ping 命令 ping 网络上的主机后, ICMP 包将会发送到目的主机,然后在目的主机返回响应。这样,就可以得知本机到目的主机 ICMP 包传输所使用的往返时间。

相对于其他命令仅仅收集传输路径或响应时间,MTR 工具会收集更多的信息,比如 连接状态,连接可用性,以及传输路径中主机的响应性。由于这些额外的信息,我们建议您尽可能完整的展现 Internet 两个主机之间的网络连接信息。接下来我们讲述如何安装 MTR 软件,以及如何看懂这款软件的输出结果。

在 Debian 和 Ubuntu 系统中,使用如下命令更新系统,然后安装 MTR:

在 CentOS 和 Fedora 系统中,使用如下命令更新系统,并安装 MTR:

在 Arch Linux 系统中,按照如下命令更新系统并安装 MTR:

如果您的本机使用的是 Linux 系统,并且想用 MTR 测试网络状况,请按照如上教程安装。

如果您的本机使用的是 Windows 系统,您可以使用 “WinMTR”。可以从这里下载: .

因为 MTR 提供两个主机之间的网络路径图,您可以把它想象成一款定向工具。另外,因为地址位置或上游ISP路由器的原因,路径有时候可能会有很大的不同。所以我们建议您尽可能多的收集 MTR 的报告信息。

如果您遇到网络方面的问题, Linode 的技术支持经常建议您收集双向的 MTR 报告(从 Linode 出发和到 Linode 的往返路径)。这是因为有时候网络状况从一个方向不会出现错误,但是从另一个方向会出现丢包现象。当出现网络问题时候,双向 MTR 报告是十分有用的。

在本文中,运行 mtr 命令的主机称为 源主机,被查询的主机称为 目的主机。

如果我们遇到网络问题,需要联系 Linode 的技术支持,Linode 需要我们提供双向的 MTR 报告。第一份是从您的本机到 Linode VPS 的 MTR 报告,命令如下:

mtr -rw 。(译者著:国内可以使用 、 的测试报告:
 
 
 
超时不一定是数据包被丢失。如上例,数据包还是安全的到达目的地并且返回。中间节点的超时可能是路由器配置丢弃 ICMP 包,或者 QoS 设置引起的原因,这个是没关系的。

根据您的 MTR 报告解决路由和网络问题

 
MTR 报告显示的路由问题大都是暂时性的。很多问题在24小时内都被解决了。大多数情况下,如果您发现了路由问题,ISP 提供商已经监视到并且正在解决中了。当您经历网络问题后,可以选择提醒您的 ISP 提供商。当联系您的提供商时,需要发送一下 MTR 报告和相关的数据。没有有用的数据,提供商是没有办法去解决问题的。
然而大多数情况下,路由问题是比较少见的。比较常见的是因为物理距离太长,或者上网高峰,导致网络变的很慢。尤其是跨越大西洋和太平洋的时候,网络有时候会变的很慢。这种情况下,建议您选择 VPS 的物理距离尽量接近您的目标客户。
如果您遇到网络连接问题,并且不能解读 MTR 报告,您可以打开一个支持工单提交问题,Linode 工作人员会帮您分析报告。
 
您可以参考如下连接了解更多与 MTR 有关的知识。




译者注:这篇文章实在是太长了,敲的我手都麻了。

在分析WinMTR/MTR输出结果时,您需要查看两件事情:丢包和延迟。首先,我们来讨论丢包。如果您在任何一个节点看到有掉包,这可能表示这个特定的路由节点有问题。然而,有些服务提供商会限制WINMTR/MTR工具发送的ICMP传输。这会对数据包丢失造成错觉,但事实上并未丢包。要确认您看到的数据包丢失是否是由于服务提供商限制造成的,您可以查看随后的一跳路由节点。如果该跳显示丢失0%,那么您可以肯定 是ICMP限制,实际未丢包。 看下面的例子:

在这种情况下,从第一跳到第二跳的丢包可能是由于第二跳路由ICMP限制导致的。因为剩余的8个路由节点都没有丢包。这种情况下,采取掉包最少的节点作为它实际的丢包率。

在这种情况下,你会看到第三跳和第四跳之间有60%的丢包。您可以假设这是由于路由设备限制导致的丢包。然而,您可以看到最后一跳是显示40%的丢包。但产生不同的丢包结果时,始终采用最后一跳的丢包率。

有些丢包可能产生在路由返回的时候。数据包可以正确无误地到达目的地,但未正常返回。这也会计算在丢包率中,但您从WinMTR/MTR结果报告中很难分辨。因此,在任何时候您都需要同时收集两个方向的WinMTR/MTR结果报告。

除了可以通过 MTR 报告看到丢包率,我们还可以看到本地到目的主机之间的延时。因为不同的物理位置,延迟通常随着跳数的增加而增加。所以,延迟通常取决于节点之间的物理距离和线路质量。

例如,在同样的传输距离下,dial-up连接比cable modem连接有更大的延迟。如下示例中显示 MTR 报告:

超时不一定是数据包被丢失。如上例,数据包还是安全的到达目的地并且返回。中间节点的超时可能是路由器配置丢弃 ICMP 包,或者 QoS 设置引起的原因,这个是没关系的。

我要回帖

更多关于 mtr 的文章

 

随机推荐