一款好用的网络检测工具——mtr

当客户端访问目标服务器或负载均衡,使用 ping 命令测试出现丢包或不通时,可以通过 MTR 等工具进行链路测试来判断问题来源。

mtr (My traceroute)是结合了 traceroute 命令和 ping 命令功能网络诊断工具。

mtr基本原理

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

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

安装 mtr

Mac 安装

前提是已经 安装 homebrew 工具。

$ brew install mtr

Centos7 安装

$ yum install -y mtr

mtr 使用说明

可以通过 man mtr 命令查看mtr的具体使用方法,部分常用参数介绍如下:

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

示例

Mac

在Mac上使用 mtr 命令需要root权限:

$ sudo mtr -r www.baidu.comStart: 2019-06-25T11:41:37+0800HOST: xxxx-MacBook-Pro.local  Loss%   Snt   Last   Avg  Best  Wrst StDev  1.|-- 10.1.0.1                   0.0%    10    8.0   9.7   3.1  42.8  11.9  2.|-- 192.168.50.4               0.0%    10    7.4   4.7   2.9  10.1   2.3  3.|-- 192.168.50.8               0.0%    10    2.2   6.4   1.3  35.1  10.3  4.|-- 192.168.50.252             0.0%    10   48.8  11.9   2.3  48.8  16.0  5.|-- 121.69.131.161             0.0%    10   17.6  16.6   7.0  50.6  13.3  6.|-- 10.255.55.141              0.0%    10    6.1  12.7   3.8  28.1   9.0  7.|-- 10.255.34.97               0.0%    10   33.4  19.2   6.5  69.8  19.7  8.|-- 124.205.98.29              0.0%    10    8.7  14.1   3.5  36.3  11.9  9.|-- 14.197.243.121             0.0%    10    6.0  19.3   4.9  53.4  18.9 10.|-- 14.197.249.126             0.0%    10    7.5  10.5   5.6  36.0   9.1 11.|-- 182.61.252.212             0.0%    10    9.5  17.6   7.1  39.2  11.3 12.|-- ???                       100.0    10    0.0   0.0   0.0   0.0   0.0 13.|-- ???                       100.0    10    0.0   0.0   0.0   0.0   0.0 14.|-- ???                       100.0    10    0.0   0.0   0.0   0.0   0.0 15.|-- ???                       100.0    10    0.0   0.0   0.0   0.0   0.0 16.|-- 182.61.200.7               0.0%    10    5.5  15.4   5.3  41.8  14.2

-r 参数的作用是在检测完成后以报告的形式显示结果,如果不加 -r 参数,直接进入实时窗口。

Linux

$ mtr -r www.baidu.com

结果分析

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

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

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/9090

(0)
郭靖的头像郭靖
上一篇 2023年6月25日 下午5:28
下一篇 2023年6月28日 下午5:14

相关推荐

  • 内网穿透—frp

    什么是frp内网穿透 frp 是一个开源项目, 采用 C/S 模式,将服务端部署在具有公网 IP 的机器上,客户端部署在内网或防火墙内的机器上,通过访问暴露在服务器上的端口,反向代理到处于内网的服务。 在此基础上,frp 支持 TCP, UDP, HTTP, HTTPS 等多种协议,提供了加密、压缩,身份认证,代理限速,负载均衡等众多能力。 为什么使用frp…

    2022年6月8日
    2.1K00
  • 使用Dockerfile创建镜像,创建容器并运行

    一般情况下并不推荐使用“docker commit”来构建镜像,而应该使用更灵活、更强大的Dockerfile来构建Docker镜像,这里就来说一下使用Dockerfile创建镜像,创建容器并运行的方法。 1 生成镜像1.1 准备Dockerfile文件准备Dockerfile文件内容如下: 由于创建过程用到了java文件,这里要将注意这里要将java文件和…

    2023年8月10日
    1.2K00
  • 如何在 Kubernetes 下轻松抓取应用网络包

    #1. 宿主机上捕获 我们知道应用其实是运行在 Pod 内的 Container 里的,所以只要定位到 Container 被调度到了哪个 Node 上,在相应的 Node 里,对容器进行抓包即可。 0) 先决条件 需要有宿主机的访问权限 1) 定位 Pod 的 containerID 以及它所运行的宿主机 IP 在 Kubernetes 集群内执行下面这个…

    2023年8月16日
    1.5K00
  • Nginx一网打尽:动静分离、压缩、缓存、黑白名单、跨域、高可用、性能优化…

    引言 早期的业务都是基于单体节点部署,由于前期访问流量不大,因此单体结构也可满足需求,但随着业务增长,流量也越来越大,那么最终单台服务器受到的访问压力也会逐步增高。时间一长,单台服务器性能无法跟上业务增长,就会造成线上频繁宕机的现象发生,最终导致系统瘫痪无法继续处理用户的请求。 ❝ 从上面的描述中,主要存在两个问题:①单体结构的部署方式无法承载日益增长的业务…

    2023年3月16日
    1.2K00
  • Proxmox VE 网络配置 NAT共享IP 端口映射iptables、brook

    配置桥接网卡,使Proxmox VE(PVE)可以同时创建NAT虚拟机和独立IP虚拟机,同时可以使用脚本映射NAT虚拟机的端口到外网。 1、开启ipv4、ipv6转发 文件最后加入如下配置 2、 配置Proxmox VE网卡文件信息 新增一个vmbr172网桥,并设置流量转发 重启 3、 搭建DHCP服务器 4、 内外网端口映射转发 Pv4是经过内网转发的,…

    2023年8月2日
    6.4K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信