平时测试网络状况一般都使用「ping, tracert, nslookup」这几个命令,但是Mtr(My traceroute)是一是一个非常棒的网络连通性判断工具,它结合了ping, traceroute,nslookup 的相关特性。当网络链路出现问题时很多人会用ping命令,可以简单的测试网络的连通性,看下丢包率,但是却无法确定是在哪里出现了问题;有些人就会用tracert命令来查看路由,或者用nslookup命令来查看DNS是否可用;如果你也觉得这三个命令太麻烦的话,那就用mtr吧,并且显示界面很美「没觉得么?」
My traceroute [v0.71]
ts3-142.ts.cn.tlan (0.0.0.0) Fri Aug 3 22:39:50 2007
Keys: Help Display mode Restart statistics Order of fields quit
Packets Pings
Host Loss% Last Avg Best Wrst StDev
1. 172.16.76.1 0.0% 0.5 0.4 0.4 0.5 0.1
2. 202.108.132.17 0.0% 179.0 20.2 2.3 179.0 55.8
3. 172.19.140.69 0.0% 13.7 10.3 6.2 17.1 3.8
4. 172.17.0.17 0.0% 9.3 16.5 8.6 62.3 16.3
5. 172.16.0.57 0.0% 9.9 11.2 6.1 21.0 5.4
6. 192.168.0.25 0.0% 7.3 11.4 5.1 17.2 4.2
7. 210.74.176.241 10.0% 110.1 109.6 92.7 123.3 11.3
8. 202.96.13.101 20.0% 104.9 111.8 101.4 126.5 9.3
9. 202.106.192.233 30.0% 120.7 113.8 85.5 138.8 17.2
10. 61.148.143.26 10.0% 99.7 112.0 99.7 120.9 6.9
11. 202.96.8.246 20.0% 97.0 108.2 92.3 137.4 14.3
12. 210.77.38.126 11.1% 133.0 113.8 97.0 133.0 11.8
13.
安装步骤
Mac下直接用brew进行安装「虽然经常吐槽brew各种不如linux下的包管理软件,但是有时候还是不错」:
brew install mtr
sudo /usr/local/Cellar/mtr/0.86/sbin/mtr 8.8.8.8
ln -s /usr/local/Cellar/mtr/0.86/sbin/mtr /usr/bin
sudo mtr 8.8.4.4
Linux貌似就更简单:
yum -y install mtr
apt-get install mtr-tiny
Windows只能用这WinMTR替代下。
相关命令
查看help:
root@ts3-142 ~]# mtr --help
usage: mtr [-hvrctglspni46] [--help] [--version] [--report]
[--report-cycles=COUNT] [--curses] [--gtk]
[--raw] [--split] [--no-dns] [--address interface]
[--psize=bytes/-s bytes]
[--interval=SECONDS] HOSTNAME [PACKETSIZE]
各主要参数解释如下:
--report 追踪结果以报告模式输出
--report-cycles=COUNT 定义追踪的次数,默认为16
--raw 使结果以原始格式输出
--split 将每次追踪的结果分别列出来,不象--report一样,统计整个结果
--no-dns 只显示ip地址,不解析ip地址对应的主机名
--psize=bytes/-s bytes 定义数据包的大小,单位是字节
日常一般这样子用就可以得到前面的报告结果了。
mtr --report -c 10 -n www.turbolinux.com.cn
//或者
mtr --report www.google.com
mtr --no-dns --report google.com