半路学网站建设难吗,公司网站建设精品,30天网站建设实录 pdf,wordpress显示idMTR
MTR的全称是 my traceroute#xff0c;是一个集合了 ping 与 traceroute 功能的网络诊断工具#xff0c;广泛应用于链路测试。相对于 traceroute 只会做一次链路跟踪测试#xff0c;mtr会对链路上的相关节点做持续探测并给出相应的统计信息。因此#xff0c;mtr能避免…MTR
MTR的全称是 my traceroute是一个集合了 ping 与 traceroute 功能的网络诊断工具广泛应用于链路测试。相对于 traceroute 只会做一次链路跟踪测试mtr会对链路上的相关节点做持续探测并给出相应的统计信息。因此mtr能避免节点波动对测试结果的影响所以其测试结果更正确建议优先使用。
安装mtr
#linux
yum -y install mtr
#macOS
brew install mtr
#alpine
apk add --no-cache mtr
使用mtr mtr命令格式如下
mtr [-hvrctglspni46] [-help] [-version] [-report] [-report-cyclesCOUNT] [-curses] [-gtk] [-raw] [-split] [-no-dns] [-address interface] [-psizebytes/-s bytes] [-intervalSECONDS] HOSTNAME [PACKETSIZE]
以 www.baidu.com 为HOSTNAME使用示例
mtr www.baidu.com可选参数 参数说明 -r或-report 以报告模式显示输出。 -p或-split 将每次链路跟踪的结果分别列出来。 -s或-psize 指定ping数据包的大小。 -n或-no-dns 不对IP地址做域名反解析参数禁用反向 DNS 查找这样就会始终显示 IP。 -a或-address 设置发送数据包的IP地址。 说明该参数用于主机存在多个IP地址的场景。 -i发送数据包的时间间隔默认为 1 秒小于 1 秒需要 sudo 提权运行。-c指定发送数据包的数量例如发送 20 个数据包发送数据包后会自动退出因此可不必添加 r 参数。-u发送 UDP 数据包探测而非默认 ICMP ECHO 数据包。 -4 只使用IPv4协议。 -6 只使用IPv6协议。
可以在mtr命令运行过程中输入如下参数来快速切换模式。 参数 参数说明 或h 显示帮助菜单。 d 切换显示模式。 n 启用或禁用DNS域名解析。 u 使用ICMP或UDP数据包进行探测。 r重新探测。o相关指令。q退出探测。
mtr返回示例
以执行mtr 目标IP地址命令为例返回结果如下 默认配置下返回结果列表中各数据项的说明如下。 参数 参数说明 Host 节点IP地址和域名。您可以按n键切换显示。 Loss% 节点丢包率。 Snt 已发送数据包数。默认值是10可以通过参数-c指定。 Last 最近一次的探测延迟值单位是毫秒ms。 Avg 该Host的平均延时单位是毫秒ms。 Best 该Host的最低延时单位是毫秒ms。 Wrst 该Host的最高延时单位是毫秒ms。 StDev 该Host的标准偏差稳定性的体现。该值越大说明相应节点越不稳定。
WinMTR
WinMTR是mtr工具在Windows环境下的图形化实现但进行了功能简化只支持部分mtr的参数。WinMTR默认发送ICMP数据包进行探测无法切换。
下载安装WinMTR Visual Traceroute
WinMTR返回示例
以测试目标服务器域名为例返回示例如下 默认配置下返回结果中各数据项的说明如下 参数 参数说明 Hostname 节点IP地址和域名。 Nr 节点编号。 Loss% 节点丢包率。 Sent 已发送的数据包数量。 Recv 已成功接收的数据包数量。 Best 节点延迟的最小值。 Avg 节点延迟的平均值。 Worst 节点延迟的最大值。 Last 节点延迟的最后一次值。 StDev 标准偏差。该值越大说明相应节点越不稳定。 链路测试结果说明
由于mtr命令有更高的准确性本文以mtr命令测试结果为例对链路测试结果的分析进行简要说明。后续的说明均以如下链路测试结果示例图为基础进行阐述。 网络区域
通常情况下从客户端到目标服务器的整个链路会显著的包含如下区域 客户端本地网络 本地局域网和本地网络提供商网络如前文链路测试结果示例图中的区域A一般为前2~3个节点。如果该区域出现异常如果是客户端本地网络相关节点出现异常则需要对本地网络进行相应排查分析。否则如果是本地网络提供商网络相关节点出现异常则需要向当地运营商反馈问题。 运营商网络 运营商网络如前文链路测试结果示例图中的区域B一般有很多个节点并且会经过很多个骨干网络。如果该区域出现异常可以根据异常节点IP地址查询该IP地址归属的运营商然后直接或通过阿里云售后技术支持向相应运营商反馈问题。 目标服务器本地网络 目标主机归属网络提供商网络如前文链路测试结果示例图中的区域C一般为最后目标服务器IP地址前的2~3个节点。如果该区域出现异常则需要向目标主机归属网络提供商反馈问题。
链路负载均衡
如前文链路测试结果示例图中的区域D。如果中间链路某些部分启用了链路负载均衡则mtr命令只会对首尾节点进行编号和探测统计。中间节点只会显示相应的IP地址或域名信息。
Avg平均值和 StDev标准偏差
由于链路抖动或其他因素的影响节点的Best和Wrst值可能相差很大。而Avg平均值统计了自链路测试以来所有探测的平均值所以能更好的反应出相应节点的网络质量。而StDev标准偏差值越高则说明数据包在相应节点的延时值越不相同越离散。所以标准偏差值可用于协助判断Avg是否真实反应了相应节点的网络质量。例如如果标准偏差很大说明数据包的延迟是不确定的。可能某些数据包延迟很小例如25 ms而另一些延迟却很大例如350 ms但最终得到的平均延迟反而可能是正常的。所以此时Avg并不能很好的反应出实际的网络质量情况。
综上建议分析标准如下 如果StDev值很高则同步观察相应节点的Best和Wrst来判断相应节点是否存在异常。 如果StDev值不高则通过Avg来判断相应节点是否存在异常。 说明StDev值高或者不高并没有具体的时间范围标准而需要根据同一节点其他列的延迟值大小来进行评估。例如如果Avg为30ms当StDev为25ms时则认为是很高的偏差。而如果Avg为325ms当StDev同样为25ms时反而认为是不高的偏差。
Loss%丢包率
任一节点的Loss%丢包率如果不为零则说明这一跳网络可能存在问题。导致相应节点丢包的原因通常有如下两种 运营商基于安全或性能需求人为限制了节点的ICMP发送速率导致丢包。 节点确实存在异常导致丢包。 您可以结合异常节点及其后续节点的丢包情况来判定丢包原因 如果随后节点均没有丢包则通常说明异常节点丢包是由于运营商策略限制所致。可以忽略相关丢包。如前文链路测试结果示例图中的第2跳所示。 如果随后节点也出现丢包则通常说明异常节点确实存在网络异常导致丢包。如前文链路测试结果示例图中的第5跳所示。 如果随后节点出现没有丢包的节点和丢包的节点即相应节点既存在策略限速又存在网络异常。对于这种情况如果异常节点及其后续节点连续出现丢包而且各节点的丢包率不同则通常以最后几跳的丢包率为准。如前文链路测试结果示例图所示在第 5、6、7跳均出现了丢包。所以最终丢包情况以第7跳的40%作为参考。
延迟 延迟跳变 如果在某一跳之后延迟陡增则通常判断该节点存在网络异常。如前文链路测试结果示例图所示从第5跳之后的后续节点延迟陡增则推断是第5跳节点出现了网络异常。不过高延迟并不一定完全意味着相应节点存在异常。如前文链路测试结果示例图所示第5跳之后虽然后续节点延迟陡增但测试数据最终仍然正常到达了目的主机。所以延迟大也有可能是在数据回包链路中引发的。所以建议结合反向链路测试一并分析。 ICMP限速导致延迟增加 ICMP策略限速也可能会导致相应节点的延迟陡增但后续节点通常会恢复正常。如前文链路测试结果示例图所示第3跳有100%的丢包率同时延迟也明显陡增。但随后节点的延迟马上恢复了正常。所以判断该节点的延迟陡增及丢包是由于策略限速所致。
常见链路异常场景
说明常见链路异常场景以Linux操作系统上执行mtr命令为例进行说明具体结果以您的实际操作系统和工具返回结果为准。
目标主机网络配置不当
如下图所示数据包在目标地址出现了100%的丢包。初步看是数据包没有到达其实很有可能是目标服务器相关安全策略例如防火墙、iptables等禁用了ICMP所致导致目的主机无法发送任何应答。所以该场景需要排查目标服务器的安全策略配置。 ICMP限速
如下图所示数据包在目标地址出现了100%的丢包。初步看是数据包没有到达其实很有可能是目标服务器相关安全策略例如防火墙、iptables 、运营商策略等禁用了ICMP所致导致目的主机无法发送任何应答。所以该场景需要排查目标服务器的安全策略配置或结合反向MTR链路测试综合分析。 链路中存在环路
如下图所示数据包在第5跳之后出现了循环跳转导致最终无法到达目标服务器。这通常是由于运营商相关节点路由配置异常即链路中存在环路所致。所以该场景需要联系相应节点归属运营商处理。 链路中断
如下图所示数据包在第4跳之后就无法收到任何反馈。这通常是由于相应节点中断所致。建议结合反向链路测试做进一步确认。该场景需要联系相应节点归属运营商处理。 参考教程
ping不通或丢包时如何进行链路测试_云服务器 ECS-阿里云帮助中心
运维工具-MTR - 知乎