MTR网络诊断工具

mtr是一款网络诊断工具,它将traceroute和ping程序的功能结合在一个网络诊断工具中,它的主要功能是监控网络中的数据包传输情况,并提供可视化的输出方式和报告,帮助用户了解网络中的流量情况和各种网络协议的使用情况。

当mtr启动时,它会调查运行mtr的主机和HOSTNAME之间的网络连接,通过持续发送具有故意低的TTL的报文,并记录到介入路由器的响应时间。通过向网络中发送大量的测试包来诊断网络中的故障,可以提供到测试主机HOSTNAME的各种统计信息,结果通常以往返响应时间(毫秒)和数据包丢失百分比的形式报告。例如包的发送和接收时间、丢包率等,以及互联网路由的响应百分比和响应时间。数据包丢失或响应时间的突然增加通常是链路故障(或只是过载)的指示。

mtr还可以结合其他工具使用,例如使用mtr监控网络中的数据包传输情况,然后使用其他工具进行数据分析和处理。

mtr的主要特点包括:

1、可以向网络中发送大量的测试包,从而诊断网络中的故障;

2、提供各种统计信息,例如包的发送和接收时间、丢包率等;

3、可以与其他工具结合使用,例如使用mtr监控网络中的数据包传输情况,然后使用其他工具进行数据分析和处理;

4、可以生成可视化的输出方式,方便用户对网络中的数据包传输情况进行分析和处理;

5、支持多种网络协议,包括 TCP、UDP、ICMP 等;

6、可以通过设置参数来控制测试包的发送方式和数量。

总之,mtr是一款功能强大的网络诊断工具,可以帮助用户快速诊断网络中的故障,并提供可视化的输出方式和报告,帮助用户了解网络中的流量情况和各种网络协议的使用情况。

用例

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

-h/--help

打印命令行参数选项的摘要。

image-20230720144012474

-v/--version

打印已安装的mtr版本。

image-20230720144039830

-r/--report

此选项使mtr进入报告模式。在此模式下,mtr将按-c选项指定的周期数运行,然后打印统计信息并退出。

此模式可用于生成有关网络质量的统计信息。请注意,每个正在运行的mtr实例都会生成大量的网络流量。使用mtr来测量网络质量可能会导致网络性能下降。

image-20230720144108358

-w/--report-wide

此选项使mtr进入宽报告模式。在此模式下,mtr不会剪切报告中的主机名。

image-20230720144138069

-c COUNT/--report-cycles COUNT

使用此选项可以设置发送的ping次数(每个循环持续一秒钟),以确定网络上的计算机以及这些计算机的可靠性。

注意:命令执行完成之后自动退出,不会显示结果。

image-20230720144214974

-s BYTES/--psize BYTES

报文尺寸,这些选项或命令行上的尾随PACKETSIZE设置用于探测的数据包大小。它以字节为单位,包括IP和ICMP报文头。

如果设置为负数,则每次迭代都将使用不同的随机数据包大小,直到该数字。

image-20230720144247408

-t/--curses

使用此选项可以强制mtr使用基于curses的终端接口(如果可用)。

-e/--mpls

使用此选项可以告诉mtr显示响应数据包中编码的MPLS(RFC 4950)的ICMP扩展中的信息。

-n/--no-dns

使用此选项可以强制mtr显示数字IP号,而不尝试解析主机名。使用此选项可以强制mtr显示数字IP号,而不尝试解析主机名。

-b/--show-ips

使用此选项可以告诉mtr同时显示主机名和数字IP号。在分割模式下,这会在输出中添加一个额外的字段。在报告模式下,添加IP的空间通常太小,它们将被截断。使用宽报告(-w)模式可以查看报告模式下的IP。

image-20230720144421696

-o fields order/--order fields order

使用此选项可以指定加载mtr时的字段及其顺序。

可用字段:

image-20230720144449360

示例:-o "LSD NBAW"

image-20230720144528102

-g/--gtk

使用此选项可以强制mtr使用基于GTK+的X11窗口接口(如果可用)。GTK+必须在系统上可用时,mtr是建立这一工作。请参阅GTK+网页http://www.gtk.org/有关GTK+的更多信息。

-p/--split

使用此选项可以将mtr设置为输出适用于拆分用户界面的格式。

image-20230720144609934

-l/--raw

使用此选项可以告诉mtr使用原始输出格式,这种格式更适合于测量结果的存档,它可以被解析以呈现为任何其他显示方法。

image-20230720144848599

-x/--xml

使用此选项可以告诉mtr使用xml输出格式。这种格式更适合于测量结果的自动处理。

image-20230720144924062

-a IP.ADD.RE.SS/--address IP.ADD.RE.SS

使用此选项可以将传出数据包的套接字绑定到特定接口,以便通过此接口发送任何数据包。注意,此选项不适用于DNS请求(可能是也可能不是您想要的)。

image-20230720144952517

-i SECONDS/--interval SECONDS

使用此选项可以指定ICMP ECHO请求之间的正秒数,此参数的默认值为1秒。

image-20230720145013710

-m NUM/--max-ttl NUM

指定traceroute将探测的最大跃点数(最大生存时间值),默认值为30。

image-20230720145036597

-f NUM/--first-ttl NUM

指定要启动的TTL,默认值为1。

image-20230720145059277

-B NUM/--bitpattern NUM

指定要在有效负载中使用的位模式,应在0-255的范围内。

-Q NUM/--tos NUM

指定IP报文头中服务类型字段的值,应在0-255的范围内。

-u/--udp

使用UDP数据包而不是ICMP ECHO

image-20230720145203287

-T/--tcp

使用TCP SYN数据包而不是ICMP ECHO,由于SYN数据包不能包含数据,因此忽略了PACKETSIZE。

-P PORT/--port PORT

TCP跟踪的目标端口号。

image-20230720145245390

--timeout SECONDS

在放弃连接之前保持TCP套接字打开的秒数,这只会影响最后一跳。为此使用较大的值,尤其是与较短的间隔相结合,会占用大量的文件描述符。

-4

仅使用IPv4。

-6

仅使用IPv6。

BUGS

一些现代路由器对ICMP ECHO数据包的优先级低于对其他网络流量的优先级。因此,mtr报告的这些路由器的可靠性将显著低于这些路由器的实际可靠性。

posted @ 2023-07-20 14:55  寻梦99  阅读(227)  评论(0)    收藏  举报