最新消息:

关于网络排查工具MTR那些你必须了解的事情

经验分享 admin 6299浏览 0评论

一、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工具下载地址:自行百度 或者 下载日记哥的:

链接:https://pan.baidu.com/s/1hCPbLQM29KtZ4zsLvIkF1Q
提取码:tkni

(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

 

2.2 MTR案例演示

假设,目前我的本地出口IP是106.75.214.248(上海Windows),访问日本的一台云主机IP是152.32.203.205(日本Linux)出现访问异常(如:网络不通/丢包)的情况,那么我该如何做mtr报障呢?

(1)首先上海主机 mtr 日本云主机,如下保存截图1

(2)日本云主机mtr上海主机,如下保留截图2

 

2.3 报障提供信息

(1)源IP上海:106.75.214.248  目标IP日本:152.32.203.205

(2)提供图1和图2即可报障运营商分析链路网络情况。

 

相关文章:

VPS云服务器故障排查 使用mtr排查网络异常

 

转载请注明:日记男孩的博客 » 关于网络排查工具MTR那些你必须了解的事情

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址