當前位置: 首頁>>技術教程>>正文


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

,

什麽是Mtr命令?

Mtr(my traceroute)是一個命令行網絡診斷工具,它提供ping和traceroute命令的功能。這是一個簡單的cross-platform工具,可打印有關網絡數據包所經過的整個路由的信息,從主機係統到指定的目標係統。 mtr命令比traceroute命令更具優勢,因為它還會顯示兩個係統之間所有網絡躍點的響應百分比和響應時間。

作為網絡管理員,您需要了解mtr命令的用法以及可用於自定義輸出的標誌,以便執行高效的網絡診斷。本文介紹了mtr命令的in-detail用法,以及為您提供有關如何在此命令中使用某些標誌的know-how的示例。

我們已經在Ubuntu 18.04 LTS係統上運行了本文中提到的命令和過程。

由於mtr是命令行實用程序,因此我們將在Ubuntu命令行Terminal中使用它。您可以通過係統Dash或Ctrl + Alt + t快捷方式打開“終端”應用程序。

Mtr命令的用法

1.實時查看traceroute報告

mtr命令的基本用法是查看遠程計算機的traceroute報告。您所需要做的就是使用mtr命令提供遠程係統的域名或IP地址,輸出將實時顯示traceroute報告。查看完報告後,可以通過按q或Ctrl + C快捷鍵退出命令。

顯示主機名

mtr命令的以下語法在traceroute報告中顯示主機名。

句法:

$ mtr [域名/IP]

例:

$ mtr google.com

use mtr command

顯示數字IP地址

當在mtr命令中使用g標誌時,它將在traceroute報告中顯示數字IP地址而不是主機名。

句法:

$ mtr -g [域名/IP]

例:

$ mtr -g google.com

traceroute with mtr

主機名和數字IP地址

當在mtr命令中使用b標誌時,它將在traceroute報告中同時顯示數字IP地址和主機名。

句法:

$ mtr -b [域名/IP]

例:

$ mtr -b google.com

Show hostnames and IP addresses

2.指定ping的數量限製

您可以將mtr命令配置為在為特定數量的ping打印traceroute報告後退出。在輸出中,您可以輕鬆地在Snt列下查看ping的數目。當Snt通過c標誌達到您在命令中指定的數字時,mtr將自動退出。

句法:

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

例:

$ mtr -c 10 google.com

3.啟用報告模式

您可以啟用報告模式,而不是在屏幕上打印mtr命令的輸出,而將其輸出為文本文件。這樣,您可以記錄網絡分析,以供以後使用和觀察。您需要做的就是通過r標誌啟用報告模式,通過c標誌指定要限製報告的ping計數,還指定要在其中保存報告的報告文件名。

句法:

$地鐵-r -c [n]“域名/IP”>“ report-name”

例:

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

默認情況下,該報告保存在當前用戶的主文件夾中。但是,您可以為保存報告指定正確的路徑。

Report mode enabled in mtr command

清除報告中的輸出

將w標誌與r標誌一起添加將使mtr可以為traceroute打印一個相當清晰且可讀性更高的報告。

句法:

$地鐵w-c [n]“域名/IP”>“ report-name”

例:

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

4.重新排列輸出字段

當您看到mtr報告的輸出時,您會發現列以特定的默認方式排列。 o標誌使您能夠以自定義方式re-arrange輸出,以使其更加有用和高效。

句法:

$地鐵-o“ [輸出格式]”“域名/IP”

MTR聯機幫助頁可幫助您選擇自定義MTR報告列的選項。

例:

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

Rearrange the output fields

5.指定ICMP ECHO請求之間的時間間隔

盡管在mtr命令中每個ICMP和ECHO請求之間的默認時間間隔是1秒,但是您可以通過使用i標誌指定一個新的時間間隔來更改它。

句法:

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

例:

$ mtr -i 10 google.com

6.使用TCP SYN數據包或UDP數據報

如果要使用TCP SYN或UDP數據報來請求mtr而不是默認的ICMP ECHO請求,則可以分別使用tcp和udp標誌來進行此操作。

句法:

$ mtr –tcp “domainName/IP”

$ mtr –udp “domainName/IP”

例:

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

Use TCP SYN packets or UDP datagrams

7.指定本地係統和遠程計算機之間的最大跳數

您可以通過使用m標誌指定時間(以秒為單位),來定製要在本地係統和遠程計算機之間探測的最大跳數。 mtr命令的兩跳之間的默認時間限製是30秒。

句法:

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

例:

$ mtr -m 35 216.58.223.78

8.指定數據包大小

通過mtr命令中的s標誌,可以指定用於診斷網絡質量的IP數據包的大小(以字節為單位)。

句法:

$地鐵[packetsize]“域名/IP”

例:

mtr -r -s 50 google.com

9.打印CSV輸出

MTR報告的CSV輸出使用“,”分隔列。使用csv標誌,可以自定義mtr命令以CSV格式輸出報告。

句法:

$ mtr –csv “domainName/IP”

例:

$ mtr --csv google.com

Print CSV Output

10.打印XML輸出

mtr命令還可以支持XML格式以打印traceroute報告。 XML報告是自動處理輸出的不錯選擇,可以通過使用mtr命令指定xml標誌來打印。

句法:

$ mtr –xml “domainName/IP”

例:

$ mtr --xml google.com

11.訪問mtr幫助和手冊頁

最後,您可以通過以下命令閱讀其幫助和手冊頁,以獲取更多使用和定製mtr命令的選項。

$ man mtr
$ mtr --help

閱讀本文後,您將更好地在機器和遠程係統之間運行網絡診斷。您還可以使用ping和traceroute命令的替代方法,使用更多自定義選項來提高生產率和實用性。

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/8859.html,未經允許,請勿轉載。