如何使用Linux mtr(我的Traceroute)命令

什么是Mtr命令?

Mtr(我的traceroute)是一个命令行网络诊断工具,可为ping和traceroute命令提供功能。它是一个简单的跨平台工具,可打印有关网络数据包从主机系统到指定目标系统的整个路由的信息。 mtr命令也优于traceroute命令,因为它还会显示两个系统之间每个网络跃点的响应百分比和响应时间。

网络管理员需要学习如何使用mtr命令以及可用于自定义输出以执行生产性网络诊断的标志。本文提供了有关如何使用mtr命令的详细示例,以及提供了有关如何在此命令中使用某些标志的专业知识的示例。

本文中描述的命令和过程在Ubuntu 18.04 LTS系统上运行。

mtr是一个命令行实用程序,因此请在Ubuntu命令行终端中使用它。可以使用系统破折号或Ctrl + Alt + t快捷方式打开终端应用程序。

如何使用Mtr命令

1.实时显示traceroute报告

mtr命令的基本用法是显示远程计算机的traceroute报告。只需使用mtr命令并指定远程系统的域名或IP地址,即可在输出中实时查看traceroute报告。查看完报表后,可以按q或使用Ctrl + C快捷键结束命令。

显示主机名

mtr命令的以下语法在traceroute报告中显示主机名。

语法:

$ mtr [domainName/IP]

范例:

$ mtr google.com

显示数字IP地址

当在mtr命令中使用g标志时,traceroute报告将显示数字IP地址而不是主机名。

语法:

$ mtr -g [domainName/IP]

范例:

$ mtr -g google.com

使用mtr的traceroute

主机名和数字IP地址

如果在mtr命令中使用b标志,则数字IP地址和主机名都会显示在traceroute报告中。

语法:

$ mtr -b [domainName/IP]

范例:

$ mtr -b google.com

显示主机名和IP地址

2.指定ping的数量限制

您可以将mtr命令配置为在打印一定数量的ping命令的traceroute报告后退出。在输出中,您可以轻松地在Snt列下查看ping的数目。当Snt通过c标志达到命令中指定的数字时,mtr将自动终止。

语法:

$ mtr -c [n] “域名/ IP”

范例:

$ mtr -c 10 google.com

3.启用报告模式

您可以启用报告模式,而不是将mtr命令的输出打印到屏幕上,该模式以文本模式打印输出。这样,您可以记录网络分析以供以后使用和监视。您需要做的就是使用r标志启用报告模式,使用c标志指定ping计数以限制报告,并指定要保存报告的报告文件名。

语法:

$ mtr -r -c [n] 域名/ IP>报告名称

范例:

$ mtr -r -c 10 google.com >mtr-report-google

默认情况下,该报告保存在当前用户的主文件夹中。但是,您可以指定适当的路径来保存报告。

mtr命令启用的报告模式

清除报告输出

将w标志与r标志一起添加将使mtr在traceroute上打印一个相当清晰易读的报告。

语法:

$ mtr –rw -c [n] 域名/ IP>报告名称

范例:

mtr -rw -c 10 google.com >mtr-report-google

4.重新排列输出字段

查看mtr报告的输出,您可以看到这些列是以某种默认方式排列的。 o标志允许您以自定义方式重新排列输出,以使其更加有用和高效。

语法:

$ mtr -o“[Output Format]“域名/ IP”

MTR手册页介绍了用于自定义MTR报告列的选项。

范例:

$ mtr -o "LSDR NBAW JMXI" google.com

重新排列输出字段

5.指定ICMP ECHO请求之间的时间间隔

使用mtr命令,每个ICMP和ECHO请求之间的默认时间间隔是1秒,但是可以通过使用i标志指定新的时间间隔来更改它。

语法:

$ mtr -i [time-in-seconds] “域名/ IP”

范例:

$ mtr -i 10 google.com

6.使用TCP SYN数据包或UDP数据报

如果要使用TCP SYN或UDP数据报来请求mtr而不是默认的ICMP ECHO请求,则可以分别使用tcp和udp标志来进行。

语法:

$ mtr –tcp“域名/ IP”

$ mtr –udp“域名/ IP”

范例:

$ mtr --tcp google.com
$ mtr --udp google.com

使用TCP SYN数据包或UDP数据报

7.指定本地系统和远程计算机之间的最大跳数

您可以通过使用m标志指定以秒为单位的时间来自定义在本地系统和远程计算机之间探查的最大跳数。 mtr命令的两跳之间的默认时间限制是30秒。

语法:

$ mtr -m [timeInSeconds] “域名/ IP”

范例:

$ mtr -m 35 216.58.223.78

8.指定数据包大小

您可以使用mtr命令的s标志来指定IP包大小(以字节为单位)以诊断网络质量。

语法:

$ mtr –r -s [packetsize] “域名/ IP”

范例:

mtr -r -s 50 google.com

9.打印CSV输出

MTR报告的CSV输出使用“,”分隔列。您可以使用csv标志来自定义mtr命令,以CSV格式打印报告。

语法:

$ mtr –csv“域名/ IP”

范例:

$ mtr --csv google.com

打印CSV输出

10.打印XML输出

mtr命令还可以支持XML格式以打印traceroute报告。 XML报告是自动输出处理的不错选择,并且可以使用mtr命令将xml标志打印出来。

语法:

$ mtr –xml“域名/ IP”

范例:

$ mtr --xml google.com

如何使用Linux mtr(我的Traceroute)命令

11.访问mtr帮助和手册页

最后,通过使用以下命令阅读帮助和手册页,您可以获得使用和自定义mtr命令的更多选项:

$ man mtr
$ mtr --help

阅读本文之后,您将能够在计算机和远程系统之间运行网络诊断。您还可以使用更多的自定义选项来代替ping和traceroute命令,以提高生产率和可用性。

如何使用Linux mtr(我的Traceroute)命令

Sidebar