• 阿里云国际版云服务器Linux和Windows操作系统的链路测试工具-Unirech


    上期讲到在使用阿里云国际版海外云服务器时,如果通过客户端访问云服务器 ping 不通时,可以使用 tracert 或 mtr 工具进行链路测试,以此排查问题的根本原因。下面我们简单介绍不同操作系统的链路测试工具:

    1.Linux系统

    工具一:mtr命令

    mtr几乎是所有Linux发行版本预装的网络测试工具,其特点是将ping和traceroute的功能合并。mtr默认发送ICMP数据包进行链路探测,用户也可以通过-u参数来指定使用UDP数据包进行探测。相对于traceroute只会做一次链路跟踪测试,mtr会对链路上的相关节点做持续探测并给出相应的统计信息,因此mtr能避免节点波动对测试结果的影响,使测试结果准确性更高。

    用法介绍

    mtr [-BfhvrwctglxspQomniuT46] [--help] [--version] [--report]
    [--report-wide] [--report-cycles=COUNT] [--curses] [--gtk]
    [--csv|-C] [--raw] [--xml] [--split] [--mpls] [--no-dns] [--show-ip*r>                [--address interface] [--filename=FILE|-F]
    [--ipinfo=item_no|-y item_no]
    [--aslookup|-z]
    [--psize=bytes/-*ytes] [--order field*r>                [--report-wide|-w] [--inet] [--inet6] [--max-ttl=NUM] [--first-ttl=NUM]
    [--bitpattern=NUM] [--tos=NUM] [--udp] [--tcp] [--port=PORT] [--timeout=SECONDS]
    [--interval=SECONDS] HOSTNAME
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    示例:

    海外云服务器-unirech

    返回结果说明

    默认配置下,返回结果中各数据列的说明如下:

    第一列(Host):节点IP地址和域名。按n键可切换显示。

    第二列(Loss%):节点丢包率。

    第三列(Snt):每秒发送数据包数。默认值是10,可以通过-c参数指定。

    第四列(Last):最近一次的探测延迟。

    第五、六、七列(Avg、Best、Worst):分别是探测延迟的平均值、最小值和最大值。

    第八列(StDev):标准偏差,越大说明相应节点越不稳定。

    工具二:traceroute命令

    traceroute也是几乎所有Linux发行版本预装的网络测试工具,用于跟踪Internet协议(IP)数据包传送到目标地址时经过的路径。

    首先,traceroute先发送小的具有最大存活时间值(Max_TTL)的UDP探测数据包。

    然后,侦听从网关开始的整个链路上的ICMP TIME_EXCEEDED响应。探测从TTL=1开始,TTL值逐步增加,直至接收到ICMP PORT_UNREACHABLE消息。

    用法介绍

    traceroute [-I] [ -m Max_ttl ] [ -n ] [ -p Port ] [ -q Nqueries ] [ -r ] [ -s SRC_Addr ] [ -t TypeOfService ] [ -f flow ] [ -v ] [ -w WaitTime ] Host [ PacketSize ]
    
    • 1

    示例:

    海外云服务器-unirech

    海外云服务器-unirech

    2.Windows系统

    工具一:WinMTR(建议优先使用)

    WinMTR是mtr工具在Windows环境下的图形化实现,但进行了功能简化,只支持部分mtr的参数。WinMTR默认发送ICMP数据包进行探测,无法切换,和mtr一样。相比tracert,WinMTR能避免节点波动对测试结果的影响,所以测试结果更正确。所以在WinMTR可用的情况下,建议优先使用WinMTR进行链路测试。

    用法说明

    WinMTR无需安装,直接解压运行即可。操作方法非常简单,说明如下:

    1.如下图所示,运行程序后,在Host字段输入目标服务器域名或IP,注意不要包含空格。

    海外云服务器-unirech

    2.单击Start开始测试。开始测试后,相应按钮变成了Stop。

    3.运行一段时间后,单击Stop停止测试。

    4.其它选项说明如下。

    Copy Text to clipboard:将测试结果以文本格式复制到粘贴板。

    Copy HTML to clipboard:将测试结果以HTML格式复制到粘贴板。

    Export TEXT:将测试结果以文本格式导出到指定文件。

    Export HTML:将测试结果以HTML格式导出到指定文件。

    Options:可选参数,包括的可选参数如下。

    Interval(sec):每次探测的间隔(过期)时间。默认为1秒。

    ping size(bytes):ping探测所使用的数据包大小,默认为64字节。

    Max hosts in LRU list:LRU列表支持的最大主机数,默认值为128。

    Resolve names:通过反查IP地址,以域名显示相关节点。

    返回结果说明

    默认配置下,返回结果中各数据列的说明如下:

    第一列(Hostname):节点的IP或域名。

    第二列(Nr):节点编号。

    第三列(Loss%):节点丢包率。

    第四列(Sent):已发送的数据包数量。

    第五列(Recv):已成功接收的数据包数量。

    第六、七、八、九列(Best 、Avg、Worst、Last):分别是到相应节点延迟的最小值、平均值、最大值和最后一次值。

    工具二:tracert命令行工具

    tracert(Trace Route)是Windows自带的网络诊断命令行程序,用于跟踪Internet协议(IP)数据包传送到目标地址时经过的路径。 tracert通过向目标地址发送ICMP数据包来确定到目标地址的路由。在这些数据包中,tracert使用了不同的IP生存期,即TTL值。由于要求沿途的路由器在转发数据包前必须至少将TTL减少1,因此TTL实际上相当于一个跃点计数器(hop counter)。当某个数据包的TTL达到0时,相应节点就会向源计算机发送一个ICMP超时的消息。

    tracert第一次发送TTL为1的数据包,并在每次后续传输时将TTL增加1,直到目标地址响应或达到TTL的最大值。中间路由器发送回来的ICMP超时消息中包含了相应节点的信息。

    用法介绍

    tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout] [-R] [-S srcaddr] [-4] [-6] target_name
    
    • 1

    示例:

    C:> tracert -d 223.5.5.5
    通过最多 30 个跃点跟踪到 223.5.5.5 的路由
    1                          请求超时。
    2     9 ms     3 ms    12 ms  192.168.X.X
    3     4 ms     9 ms     2 ms  X.X.X.X
    4     9 ms     2 ms     1 ms  XX.XX.XX.XX
    5    11 ms                  211.XX.X.XX
    6     3 ms     2 ms     2 ms  2XX.XX.1XX.XX
    7     2 ms     2 ms     1 ms  42.XX.2XX.1XX
    8    32 ms     4 ms     3 ms  42.XX.2XX.2XX
    9                          请求超时。
    10     3 ms     2 ms     2 ms  223.5.5.5
    跟踪完成。
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    Unirech是阿里云国际版金牌分销商,提供多币种支付代充值,关联Unirech注册无需绑定paypal,阿里云国际站相对于国内站限制更少,账户不易被风控,注册、充值更加便捷,充值量大还有额外折扣可享。TG@unirech_dingding

  • 相关阅读:
    详细介绍C++日期类的实现
    RabbitMQ入门教程(安装,管理插件,Publisher/Consumer/交换机/路由/队列/绑定关系,及如何保证100%投递等)
    SVN的安装配置
    LeetCode 59. 螺旋矩阵 II
    Servlet环境搭建,生命周期
    【Ribbon】SpringCloud的Ribbon负载均衡使用
    【Spring进阶系列丨第二篇】Spring中的两大核心技术IoC(控制反转)与DI(依赖注入)
    寻找志同道合的小伙伴
    MySQL---安装与配置
    第四十五章 命名空间和数据库 - 数据库基础知识
  • 原文地址:https://blog.csdn.net/Tommy66680/article/details/126058071