mtr linux?mtr网络工具

mtr指令怎么用

mtr(My traceroute)是一个强大的网络诊断工具,它结合了traceroute和ping的功能,用于检测网络的连通性和延迟。以下是mtr指令的基本使用方法:

1.**安装mtr**:在大多数Linux发行版中,mtr可能已经预装。如果没有,可以通过包管理器进行安装。例如,在Debian/Ubuntu系统中,可以使用`sudo apt-get install mtr`命令安装;在Red Hat/CentOS系统中,可以使用`sudo yum install mtr`或`sudo dnf install mtr`(针对较新版本)命令安装。

2.**基本用法**:mtr的基本语法为`mtr [选项]目标主机`。例如,要追踪到百度的服务器,可以使用`mtr baidu.com`命令。运行后,mtr会开始连续发送数据包并显示每个网络节点的统计信息,包括IP地址(或主机名)、丢包率、发送的数据包数量、最近一次探测的延迟、平均延迟、最短延迟、最长延迟以及延迟的标准偏差。

3.**常用选项**:

- `-n`:以IP地址而非主机名显示网络节点。

- `-r`或`--report`:使用报告模式,显示每一跳的统计信息。

- `-c`:指定要发送的数据包数量。

- `-s`:指定要发送的数据包大小。

- `--report-cycles`:设置报告周期,即多久生成一个报告。

4.**高级用法**:mtr还支持多种高级选项,如指定使用IPv4或IPv6协议、调整ICMP请求的时间间隔、绑定源地址等。这些选项可以通过查看mtr的帮助信息(使用`mtr--help`命令)来了解。

通过mtr,用户可以轻松地追踪数据包在网络中的传输路径,并实时查看每个节点的性能统计信息,从而帮助诊断网络问题。

Linux常用网络工具之路由扫描工具mtr使用介绍

除了上一篇《Linux常用网络工具:路由扫描之traceroute》介绍的traceroute之外,一般Linux还内置了另一个常用的路由扫描工具mtr。

mtr在某些方面比traceroute更好用,它可以实时显示经过的每一跳路由的信息,并不断进行探测。

traceroute默认使用UDP数据包探测,而mtr默认使用ICMP报文探测,ICMP在某些路由节点的优先级要比其他数据包低,所以测试得到的数据可能低于实际情况。

mtr

mtr使用比较简单,通常不需要使用附加选项,更多参数可以参考mtr的man page:

复制代码代码如下:

usage: mtr [-hvrwctglspniu46] [--help] [--version] [--report]

[--report-wide] [--report-cycles=COUNT] [--curses] [--gtk]

[--raw] [--split] [--no-dns] [--address interface]

[--psize=bytes/-s bytes]

[--interval=SECONDS] HOSTNAME [PACKETSIZE]

mtr示例:

输出参数的解释:

Loss%--丢包率,单位是"%";

Snt-- sent包的数量

Last--最后一个包的延时

Avg--所有包的平均延时

Best--延时最小的包

Wrst--延时最大的包

StDev--标准偏差

linux丢包利器mtr

mtr工具将 traceroute和 ping功能合二为一,能够同时查看路径上的延迟和丢包情况。

常用参数包括:-n不进行域名解析,-s指定 ping数据包大小,-i设置 ICMP返回时间间隔,默认为 1秒,-a设置发送数据包的 IP地址,-r以报告模式显示,-c每秒发送的 ping包数,默认 10个。

中间节点丢包率比终点还高的现象,与 mtr工作机制和网络设备回复 ICMP报文的机制有关。mtr使用递增 TTL的方式使得 ICMP或 UDP报文终止于中间节点,通过响应消息获取节点信息。网络设备在回复 ICMP报文时,相较于转发任务,更依赖 CPU资源,速度较慢。为避免 ICMP报文泛滥,网络设备可能设置了限速,这会加剧中间节点丢包情况。

在两端执行 mtr分析网络状况的原因是,网络路由通常不对称,需要从不同方向获取完整信息。如果最后到达目的地址时,丢包严重或响应时间很长,且后续响应时间明显延长,这往往是问题点。

公网丢包率在 1%左右是可接受的,内网丢包率通常在万分之一左右。

阅读剩余
THE END