traceroute 命令示例

用途

显示 IP 信息包至某个网络主机的路由。

语法

traceroute [ -m Max_ttl ] [ -n ] [ -p Port ] [ -q Nqueries ] [ -r ] [  -d  ] [  -g  gateway_addr ] [ -s SRC_Addr ] [  -t TypeOfService ] [ -f flow ] [ -v ] [  -w WaitTime Host [ PacketSize ]

描述

注意: traceroute 命令适用于网络测试、评估和管理。它应主要用于手动故障隔离。由于它对网络施加的负荷,  traceroute 命令不应用于正常的操作中或自动脚本。

traceroute 命令试图跟踪 IP 信息包至某个因特网主机的路由,其具体方法是:先启动具有小的最大存活时间值(Max_ttl 变量)的 UDP 探测信息包,然后侦听从网关开始一路上的 ICMP TIME_EXCEEDED 响应。探测以一个一跳跃位的 Max_ttl 值开始,该值一次增加一个跳跃值,直至返回 ICMP PORT_UNREACHABLE 消息。ICMP PORT_UNREACHABLE 消息可以指出主机已经被定位,或命令已经达到允许跟踪的最大跳跃数目。

traceroute 命令在每一个 Max_ttl 设置上发送三个探测值以记录以下一些内容:

  • Max_ttl 值
  • 网关地址
  • 每次成功探测的往返时间

通过使用 -q 标志,可以增加发送的探测数目。如果探测的回答来自不同的网关,那么命令会显示各个响应系统的地址。如果在 3 秒的超时时间间隔中没有来自探测的应答,那么会针对该探测显示出 *(星号)。

如果 Max_ttl 值为一个跳跃或更小,那么 traceroute 命令会在往返时间后显示一个“!”(感叹号)。一个跳跃或更小的最大存活时间值一般都指出了不同网络软件处理 ICMP 应答的方式的不兼容性。不兼容性通常是通过将上次使用的 Max_ttl 值加倍并再次尝试来解析的。

在往返注释后,其他可能的注释有:

项目描述
!H主机不可到达
!N网络不可达
!P协议不可达
!S源路由失败
!F需要碎片

如果有许多探测都产生某一错误,那么 traceroute 命令退出。

traceroute 命令唯一的强制性参数就是目标主机名称或 IP 数字。traceroute 命令将根据输出接口的最大传输单元(MTU)确定探测信息包的长度。UDP 探测信息包被设置为一个不可能的值,以防止目标主机的处理。

标志

项目描述
 -d  启用套接字级别调试。 
-f flow在 IPv6 包头设置流量标签字段。缺省值为 0。
 -g gateway_addr  通过 IP 源路由选项,使出局包通过指定网关。使用此标志之前,路由器必须启用 IP 源路由。此标志仅对 IPv6 地址可用。 
-m Max_ttl设置用于输出探测信息包的最大存活时间(最大的跳跃数)。缺省值为 30 个跳跃(TCP 连接也使用相同的缺省值)。
-n以数字方式而不以符号加数字的方式显示跳跃地址。该标志为在路径上找到的每个网关保存名称服务器的“地址到姓名”查询。
-pPort设置用于探测的基本 UDP 端口号。缺省值为 33434。traceroute 命令取决于目标主机的开放式 UDP 端口范围,base 至 base + nhops - 1。如果 UDP 端口不可用,那么该选项可以用于选择一个未曾使用的端口范围。
-q Nqueries指定 traceroute 命令在每个 Max_ttl 设定值处发出的探测数目。缺省值为三次探测。
-r忽略正常的路由表,并直接发送探测信息包至已链接网络上的主机。如果指定的主机不在直接连接的网络上,那么返回一个错误。该选项可以用于通过 routed 守护程序路由表中未注册的接口向本地主机发出 ping命令。
-s SRC_Addr以数字格式将下一 IP 地址用作输出探测信息包的源地址。在具有不止一个 IP 地址的主机上,可以使用 -s 标志强制将源地址转变成与发送探测包的接口的 IP 地址不同的地址。如果下一个 IP 地址不是机器接口地址之一,那么返回一个错误且不发送任何内容。
-t TypeOfService将探测信息包中的 TypeOfService 变量设置为 0 至 255 范围内的一个十进制整数。缺省值为 0。该标志可用于调查不同的服务类型是否产生了不同的路径。有关更多信息,请参阅Performance Tools Guide and Reference中的 TCP/IP 协议。有用的数值为 -t 16(低延迟)和 -t 8(高吞吐量)。
-v接收除 TIME_EXCEEDED 和 PORT_UNREACHABLE 以外的信息包(详细输出)。
-w WaitTime设置等待探测响应的时间(以秒为单位)。 缺省值为 3 秒。

参数

项目描述
Host通过主机名或 IP 数字指定目标主机。该参数是必要的。
PacketSize指定探测数据报长度。缺省信息包大小可以通过 traceroute 命令根据输出接口的 MTU 来确定。

安全性

RBAC 用户和可信 AIX 用户注意:此命令可以执行特权操作。只有特权用户才能运行特权操作。有关权限与特权的更多信息,请参阅安全性中的『特权命令数据库』。要获取与此命令相关联的特权和权限的列表,请参阅 lssecattr 命令或 getcmdattr 子命令。

示例

  1. 一个使用和输出的样本为:
    [yak 71]% traceroute nis.nsf.net.
    traceroute to nis.nsf.net (35.1.1.48), 30 hops max, 56 byte packet
      1 helios.ee.lbl.gov (128.3.112.1) 19 ms 19 ms 0 ms
      2 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 ms 39 ms 19 ms
      3 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 ms 39 ms 19 ms
      4 ccngw-ner-cc.Berkeley.EDU (128.32.136.23) 39 ms 40 ms 39 ms
      5 ccn-nerif22.Berkeley.EDU (128.32.168.22) 39 ms 39 ms 39 ms
      6 128.32.197.4 (128.32.197.4) 40 ms 59 ms 59 ms
      7 131.119.2.5 (131.119.2.5) 59 ms 59 ms 59 ms
      8 129.140.70.13 (129.140.70.13) 99 ms 99 ms 80 ms
      9 129.140.71.6 (129.140.71.6) 139 ms 239 ms 319 ms
    10 129.140.81.7 (129.140.81.7) 220 ms 199 ms 199 ms
    11 nic.merit.edu (35.1.1.48) 239 ms 239 ms 239 ms
    由于第二个跳跃系统(lbl-csam.arpa)内核中的错误(向前转发了零存活时间的信息包),结果第二行和第三行相同。在第 6 到第 10 行中,不显示主机名称,因为美国国家科学基金会网络(NSFNet,129.140)不提供其节点的地址到名称的转换。
  2. 另外一个输出样本如下:
    [yak 72]% traceroute rip.Berkeley.EDU (128.32.131.22)
    traceroute to rip.Berkeley.EDU (128.32.131.22), 30 hops max
      1 helios.ee.lbl.gov (128.3.112.1) 0 ms 0 ms 0 ms
      2 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 ms 19 ms 39 ms
      3 lilac-dmc.Berkeley.EDU (128.32.216.1) 19 ms 39 ms 19 ms
      4 ccngw-ner-cc.Berkeley.EDU (128.32.136.23) 39 ms 40 ms 19 ms
      5 ccn-nerif35.Berkeley.EDU (128.32.168.35) 39 ms 39 ms 39 ms
      6 csgw/Berkeley.EDU (128.32.133.254) 39 ms 59 ms 39 ms
      7 * * *
      8 * * *
      9 * * *
    10 * * *
    11 * * *
    12 * * *
    13 rip.Berkeley.EDU (128.32.131.22) 59 ms! 39 ms! 39 ms
    在本示例中,恰好“丢失”了 12 个网关跳跃的一半(13 是最后的目标)。但是,这些跳跃实际并不是网关。目标主机,一个运行 Sun OS3.5 的 Sun-3 工作站,将来自到达数据报的 ttl 用作其 ICMP 回复的 ttl,因此回复会在返回路径上发生超时。由于 ICMP 不是对 ICMP 发送的,因此不会接收到任何通知。命令(感叹号)每次往返时间只会指示某一类型软件的不兼容性问题。(其原因是在 traceroute 命令发布一个两倍路径长的探测之后进行诊断。目标主机实际只是在 7 个跳跃以外。)
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值