Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1667125
  • 博文数量: 636
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 3950
  • 用 户 组: 普通用户
  • 注册时间: 2014-08-06 21:58
个人简介

博客是我工作的好帮手,遇到困难就来博客找资料

文章分类

全部博文(636)

文章存档

2024年(5)

2022年(2)

2021年(4)

2020年(40)

2019年(4)

2018年(78)

2017年(213)

2016年(41)

2015年(183)

2014年(66)

我的朋友
mtr

分类: 系统运维

2018-01-12 12:27:50

首先安装mtr

# yum -y install mtr
一般在windows 来判断网络连通性用ping 和tracert,

ping的话可以来判断丢包率,tracert可以用来跟踪路由,

在Linux中有一个更好的网络连通性判断工具,它可以结合ping nslookup tracert 来判断网络的相关特性,这个命令就是mtr


[root@10.10.90.97 ~]# mtr -h

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]


mtr -h 提供帮助命令

mtr -v 显示mtr的版本信息

mtr -r 已报告模式显示


[root@10.10.90.97 ~]# mtr -r 202.108.33.94

FOCUS9097 Snt: 10 Loss% Last Avg Best Wrst StDev

220.181.61.252 0.0% 6.8 3.3 1.8 7.4 2.2
220.181.17.217 0.0% 0.4 0.5 0.4 0.7 0.1
220.181.16.17 0.0% 0.6 0.5 0.5 0.6 0.0
202.97.53.14 10.0% 0.7 0.7 0.7 0.8 0.0
219.158.35.1 0.0% 0.8 0.8 0.8 0.9 0.0
219.158.5.81 0.0% 1.2 1.3 1.2 1.6 0.1
123.126.0.138 0.0% 1.2 1.1 1.1 1.3 0.1
61.148.153.126 0.0% 1.9 10.5 1.5 89.9 27.9
61.148.143.22 0.0% 1.5 1.6 1.5 1.7 0.0
210.74.178.198 0.0% 1.6 1.6 1.5 1.9 0.1
202.108.33.94 0.0% 1.5 1.5 1.4 1.5 0.0




报告说明:
第一列:显示的是IP地址和本机域名,这点和tracert很像

第二列:snt:10 设置每秒发送数据包的数量,默认值是10 可以通过参数 -c来指定


[root@10.10.90.97 ~]# mtr -r -c 15 202.108.33.94

FOCUS9097 Snt: 15 Loss% Last Avg Best Wrst StDev
220.181.61.252 0.0% 1.9 3.4 1.8 12.9 3.1
220.181.17.217 0.0% 0.5 0.5 0.4 0.8 0.1
220.181.16.17 0.0% 0.5 0.6 0.5 2.3 0.5
202.97.53.14 0.0% 0.7 0.7 0.7 0.7 0.0
219.158.35.1 0.0% 0.9 0.8 0.8 0.9 0.0
219.158.5.81 0.0% 1.3 2.8 1.2 22.8 5.5
123.126.0.138 0.0% 1.1 1.1 1.1 1.2 0.0
61.148.153.126 0.0% 13.8 7.4 1.6 60.4 15.5
61.148.143.22 0.0% 1.7 1.6 1.5 1.8 0.1
210.74.178.198 0.0% 1.6 1.6 1.4 1.7 0.1
202.108.33.94 0.0% 1.5 1.5 1.4 1.7 0.1



其中-c的说明是:–report-cycles COUNT

-n  不用主机解释

-c   发送多少个数据包

--report  结果显示,并不动态显示。



第三列:是显示的每个对应IP的丢包率
第四列:显示的最近一次的返回时延
第五列:是平均值 这个应该是发送ping包的平均时延
第六列:是最好或者说时延最短的
第七列:是最差或者说时延最常的
第八列:是标准偏差
接下来接着说相关参数:


mtr -s 用来指定ping数据包的大小

mtr -n no-dns不对IP地址做域名解析

mtr -a 来设置发送数据包的IP地址 这个对一个主机由多个IP地址是有用的

mtr -i 使用这个参数来设置ICMP返回之间的要求默认是1秒

mtr -4 IPv4

mtr -6 IPv6


其中Host列是途经的IP或本机域名
Loss%列就是对应IP行的丢包率了,值得一提的是,只有最后的目标丢包才算是真正的丢包
Last列则是最后一次返回的延迟,按毫秒计算的
Avg列是所有返回时延的一个平均值
Best列是最快的一次返回时延
Wrst列是最长的一次返回时延
StDev列是标准偏差


接下来就是命令参数了:

mtr -s 用来指定ping数据包的大小

mtr -n no-dns不对IP地址做域名解析

mtr -a 来设置发送数据包的IP地址 这个对一个主机由多个IP地址是有用的

mtr -i 使用这个参数来设置ICMP返回之间的要求默认是1秒

mtr -c 是ping的次数。使用方法跟ping命令一样

mtr -4 IPv4
mtr -6 IPv6
所谓的IPv4和IPv6,现在基本上用不到呢还,我们基本上来测试链路连通性都是这么打的

mtr -i 0.1 -n -c 100 IP或域名

这么打的意思是每0.1秒返回一次结果,ping100次,并且不对IP地址做域名解析 





上传下载速度

speedtest-cli是一个用Python编写的轻量级Linux命令行工具 在Python2.4至3.4版本下均可运行 它基于Speedtest.net的基础架构来测量网络的上/下行速率

安装speedtest-cli很简单——只需要下载其Python脚本文件

  1. wget 

  2. chmod a+rx speedtest_cli.py  

  3. sudo mv speedtest_cli.py /usr/local/bin/speedtest-cli  

  4. sudo chown root:root /usr/local/bin/speedtest-cli  

如何测试也很简单 使用


  1. speedtest-cli  

他会寻找与你最近的一台服务器  当然 你也可以使用


  1. speedtest-cli --list | more  

来查看附近的所有服务器 


如下


  1. Retrieving speedtest.net configuration...  
  2. Retrieving speedtest.net server list...  
  3. 5300) Hangzhou , Zhejiang Unicom (Hangzhou, China) [4.87 km]  
  4. 8173) 5UFVPN (Hangzhou, China) [4.87 km]  
  5. 3927) China Mobile Jiangsu Co., Ltd. (Suzhou, China) [121.23 km]  
  6. 6245) ningbo unicom (Ningbo, China) [141.79 km]  
  7. 6715) China Mobile Group Zhejiang Co., Ltd. (Ningbo, China) [141.79 km]  
  8. 5122) China Mobile Group Jiangsu Co.,Ltd. (Wuxi, China) [142.18 km]  
  9. 3633) China Telecom (Shanghai, China) [162.85 km]  
  10. 5083) Shanghai Branch, China Unicom (Shanghai, China) [162.85 km]  
  11. 9633) China Broadband Communications (Shanghai, China) [162.85 km]  
  12. 5446) CHINA UNICOM JIANGSU COMPANY (Nanjing, China) [236.11 km]  
  13. 5724) ChinaUnicom (Hefei, China) [325.13 km]  
  14. 4377) China Mobile Group Anhui Co.,Ltd (Hefei, China) [325.13 km]  
  15. 6345) ChinaTelecom.JiangXi (Nanchang, China) [451.09 km]  
  16. 7643) China Telecom.JiangXi.Network Center (Nanchang, China) [451.09 km]  
  17. 6473) jxtelecom (Nanchang, China) [451.09 km]  
  18. 5097) Chinaunicom.jx (Nanchang, China) [451.09 km]  
  19. 7230) China Unicom.JiangXi Co.,Ltd (Nanchang, China) [451.09 km]  
  20. 4884) China Unicom FuJian (Fuzhou, China) [476.39 km]  
  21. 5485) China Unicom,Hubei Branch (Wuhan, China) [564.39 km]  
  22. 2589) Far EasTone Telecommunications Co., Ltd (Taoyuan, Taiwan) [589.47 km]  
  23. 3921) Taiwan Fixed Network (Taoyuan, Taiwan) [589.47 km]  
第一列为服务器id   后面是服务器的地址信息和距离 


如果你要指定某台服务器 可以使用


  1. speedtest-cli --server id号  


如:speedtest-cli --server 5300


测试结果如下:

  1. Retrieving speedtest.net configuration...  
  2. Retrieving speedtest.net server list...  
  3. Testing from Hangzhou Alibaba Advertising Co.,Ltd. (114.215.101.64)...  
  4. Hosted by Hangzhou , Zhejiang Unicom (Hangzhou) [4.87 km]: 26.572 ms  
  5. Testing download speed........................................  
  6. Download: 437.99 Mbit/s  
  7. Testing upload speed..................................................  
  8. Upload: 4.89 Mbit/s  


其中download 与 upload就是你的下载上传速度


丢包率

我们经常会遇到数据传输延迟 失败的问题 这时候经常需要检测丢包率  在windows中跟踪路由一般用tracert命令,在linux中我们可以使用mtr

捏可以使用

  1. mtr -h  

来查看mtr的所有参数  



  1. mtr -h 提供帮助命令  
  2.   
  3. mtr -v 显示mtr的版本信息  
  4.   
  5. mtr -r 已报告模式显示  
  6.   
  7. mtr -c 设置每秒发送数据包的数量  
  8.   
  9. mtr -s 用来指定ping数据包的大小  
  10.   
  11. mtr -n no-dns不对IP地址做域名解析  
  12.   
  13. mtr -a 来设置发送数据包的IP地址 这个对一个主机由多个IP地址是有用的  
  14.   
  15. mtr -i 使用这个参数来设置ICMP返回之间的要求默认是1秒  
  16.   
  17. mtr -4 IPv4  
  18.   
  19. mtr -6 IPv6  

这个工具默认是安装的  当然有些版本的liunx是没有自带该工具 比如centos6.5就没有  通过yum apm等安装即可 当然 源码安装也可以 

mtr默认使用ICMP报文探测

向百度发送数据包 每秒30个  每个1024个字节

mtr -r -c 30 -s 1024 

效果如下

  1. HOST: AY14041211122443416bZ       Loss%   Snt   Last   Avg  Best  Wrst StDev  
  2.   1. 114.215.99.248                0.0%    30    0.6   2.0   0.6  17.2   3.0  
  3.   2. 10.106.148.18                 0.0%    30    1.0  48.9   0.8  96.2  32.3  
  4.   3. 42.120.245.1                  0.0%    30    0.8   1.6   0.7   2.8   0.6  
  5.   4. 42.120.244.73                 0.0%    30    1.4   1.6   0.7  14.3   2.4  
  6.   5. 150.138.132.133              63.3%    30  17327 20199 17327 23128 1754.0  
  7.   6. 150.138.128.65                0.0%    30    1.8   2.1   1.7   2.6   0.3  
  8.   7. 202.97.39.105                 0.0%    30   15.9  15.2  13.5  17.7   1.3  
  9.   8. ???                          100.0    30    0.0   0.0   0.0   0.0   0.0  
  10.   9. 220.191.200.138               0.0%    30   21.0  22.5  21.0  23.9   0.9  
  11.  10. ???                          100.0    30    0.0   0.0   0.0   0.0   0.0  
  12.  11. 115.239.209.46               56.7%    30   22.4  23.0  22.4  23.5   0.3  
  13.  12. ???                          100.0    30    0.0   0.0   0.0   0.0   0.0  
  14.  13. 115.239.210.27               40.0%    30   21.9  22.4  21.6  26.8   1.1  


第一列:显示的是IP地址和本机域名,这点和tracert很像。

第二列 Loss%:是显示的每个对应IP的丢包率。

第三列 snt:snt等于10,设置每秒发送数据包的数量,默认值是10 可以通过参数 -c来指定。

第四列 Last:显示的最近一次的返回时延。

第五列 Avg:平均值,这个应该是发送ping包的平均时延。

第六列 Best:最好或者说时延最短的时间。

第七列 Wrst:最坏或者说时延最长的时间。

第八列 StDev:标准偏差。

阅读(905) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~