关于网络排查工具MTR那些你必须了解的事情
一、MTR工具的介绍
常用的 ping,tracert,nslookup 一般用来判断主机的网络连通性,其实有一个更好用的网络联通性判断工具,它可以结合ping nslookup tracert 来判断网络的相关特性,这个命令就是 mtr。
mtr 全称 my traceroute,是一个把 ping 和 traceroute 合并到一个程序的网络诊断工具。traceroute默认使用UDP数据包探测,而mtr默认使用ICMP报文探测,ICMP在某些路由节点的优先级要比其他数据包低,所以测试得到的数据可能低于实际情况。另外traceroute原理, 第N+1跳的丢包如小于第N跳的丢包, 则说明第N跳的丢包是路由器的ICMP限制或其他策略导致, 不是网络问题。如果某跳后丢包呈持续增长, 则有可能是网络问题。但实际我们大多数情况,只需要关注最后一跳(目的地址)是否有丢包即可。
1.1 为什么一定要客户端提供mtr?不提供mtr查不了嘛?又为什么需要双向mtr?
正所谓“条条大路通罗马”,这就好比去北京,有很多种选择:坐飞机、坐火车、坐大巴、自驾、拼车等等,而且不同的人到达北京所走路线(路由)也千差万别。网络的世界也是如此,你可以把去北京的路线理解为网络世界的路由。那么当你自驾去北京的路上发现,部分路段被洪水冲断了,过不去了。那会不会影响其他人,走其他路段自驾去北京呢?当然不会。所以需要谁有故障,谁做mtr,方便定位到底哪段路有问题,然后进行抢修。(这就是我们常说的网络单点故障)
正如前面所描述,网络单点故障必须客户端提供双向mtr报障运营商进行排查,但并不是所有网络故障都是单点故障。比如:运营商骨干网络故障影响范围比较大或者能够100%复现的网络故障,这种就称之为批次故障。虽然能够复现,但是建议可以直接做完双向mtr提供给供应商,方便加速升级运营商处理,避免浪费时间去搭建测试环境。
那么为什么需要双向mtr呢?这就好比,我去北京的时候走的是A路线,回来的时候走的是B路线,那么我走A路线很顺利,走B路线的时候,出现了大雾封路的情况,自然又过不去了。网络的世界也是如此,我A到B正常,B到A不正常,那么我的整个网络链路也是异常的,网络也是不通的。所以需要双向MTR,看看到底断在了A还是B。
另外,如上图,除了W4和T5属于机房可控范畴,其他部分的网络质量,均需要双向mtr进行判断。
1.2 本地出口IP怎么查?
(1)本地家庭带宽查出口IP?
访问www.baidu.com输入IP,即可查看具体出口IP地址。
(2)Linux如何查出口IP?
# 方式一 [root@blogs-v2 ~]# curl ifconfig.me 106.75.254.35 # 方式二 [root@blogs-v2 ~]# curl myip.ipip.net 当前 IP:106.75.254.35 来自于:中国 上海 上海 电信
二、MTR工具的下载与使用
2.1 Windows 与Linux MTR
(1)Windows MTR工具下载地址:WinMTR.zip
(2)Linux MTR工具安装方式
[root@blogs-v2 ~]# yum provides mtr 2:mtr-0.85-7.el7.x86_64 : A network diagnostic tool Repo : base # Linux系统一般默认都已经安装了mtr,如果没有,可以通过以下命令安装 [root@blogs-v2 ~]# yum install mtr -y
(3)手机用户:IOS MTR工具可以应用商城下载:Best NetTools或者inettools、安卓MTR工具可以应用商城下载:网络工具。
推荐安卓MTR APK包下载:TracePing.zip 下载后,解压即可获得.apk安装包,直接点击安装即可。
2.2 MTR案例演示
假设,目前我的本地出口IP是106.75.214.248(上海Windows),访问日本的一台云主机IP是152.32.203.205(日本Linux)出现访问异常(如:网络不通/丢包)的情况,那么我该如何做mtr报障呢?
(1)首先上海主机 mtr 日本云主机,如下保存截图1:
(2)日本云主机mtr上海主机,如下保留截图2:
[root@10-40-81-244 ~]# mtr 106.75.214.248
2.3 报障提供信息
(1)源IP上海:106.75.214.248 目标IP日本:152.32.203.205
(2)提供图1和图2即可报障运营商分析链路网络情况。
作者:UStarGao
链接:https://www.starcto.com/nettool/306.html
来源:STARCTO
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
UCloud云平台推荐
随便看看
- 2021-10-08Microsoft SQL Server安装部署教程
- 2021-01-23Linux账户/用户的基本概念
- 2021-03-05MySQL 用户与权限管理
- 2022-05-15Nginx安全控制-Basic认证与IP黑/白名单
- 2022-03-29Linux RSSD云盘IO性能压测教程-fio