`
pcial
  • 浏览: 71146 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

TRACE命令的详解

阅读更多

主要要求是对tracert(windows下)和traceroute(linux下)的分析和解释,不要给我参数列表,我要的是这些命令的高级用法以及最重要的用这些命令作出的结果(各种情况,比如路由环路)的分析!

 

tracert /?

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

Options:
-d Do not resolve addresses to hostnames.
-h maximum_hops Maximum number of hops to search for target.
-j host-list Loose source route along host-list (IPv4-only).
-w timeout Wait timeout milliseconds for each reply.
-R Trace round-trip path (IPv6-only).
-S srcaddr Source address to use (IPv6-only).
-4 Force using IPv4.
-6 Force using IPv6.

Tracert命令详解

该诊断实用程序将包含不同生存时间 (TTL) 值的 Internet 控制消息协议 (ICMP) 回显数据包发送到目标,以决定到达目标采用的路由。要在转发数据包上的 TTL 之前至少递减 1,必需路径上的每个路由器,所以 TTL 是有效的跃点计数。数据包上的 TTL 到达 0 时,路由器应该将“ICMP 已超时”的消息发送回源系统。Tracert 先发送 TTL 为 1 的回显数据包,并在随后的每次发送过程将 TTL 递增 1,直到目标响应或 TTL 达到最大值,从而确定路由。路由通过检查中级路由器发送回的“ICMP 已超时”的消息来确定路由。不过,有些路由器悄悄地下传包含过期 TTL 值的数据包,而 tracert 看不到。
tracert [-d] [-h maximum_hops] [-j computer-list] [-w timeout] target_name
使用 tracert 跟踪网络连接
Tracert(跟踪路由)是路由跟踪实用程序,用于确定 IP 数据报访问目标所采取的路径。Tracert 命令用 IP 生存时间 (TTL) 字段和 ICMP 错误消息来确定从一个主机到网络上其他主机的路由。
Tracert 工作原理
通过向目标发送不同 IP 生存时间 (TTL) 值的“Internet 控制消息协议 (ICMP)”回应数据包,Tracert 诊断程序确定到目标所采取的路由。要求路径上的每个路由器在转发数据包之前至少将数据包上的 TTL 递减 1。数据包上的 TTL 减为 0 时,路由器应该将“ICMP 已超时”的消息发回源系统。
Tracert 先发送 TTL 为 1 的回应数据包,并在随后的每次发送过程将 TTL 递增 1,直到目标响应或 TTL 达到最大值,从而确定路由。通过检查中间路由器发回的“ICMP 已超时”的消息确定路由。某些路由器不经询问直接丢弃 TTL 过期的数据包,这在 Tracert 实用程序中看不到。
Tracert 命令按顺序打印出返回“ICMP 已超时”消息的路径中的近端路由器接口列表。如果使用 -d 选项,则 Tracert 实用程序不在每个 IP 地址上查询 DNS。
在下例中,数据包必须通过两个路由器(10.0.0.1 和 192.168.0.1)才能到达主机 172.16.0.99。主机的默认网关是 10.0.0.1,192.168.0.0 网络上的路由器的 IP 地址是 192.168.0.1。
C:\>tracert 172.16.0.99 -d
Tracing route to 172.16.0.99 over a maximum of 30 hops
1 2s 3s 2s 10,0.0,1
2 75 ms 83 ms 88 ms 192.168.0.1
3 73 ms 79 ms 93 ms 172.16.0.99
Trace complete.
用 tracert 解决问题
可以使用 tracert 命令确定数据包在网络上的停止位置。下例中,默认网关确定 192.168.10.99 主机没有有效路径。这可能是路由器配置的问题,或者是 192.168.10.0 网络不存在(错误的 IP 地址)。
C:\>tracert 192.168.10.99
Tracing route to 192.168.10.99 over a maximum of 30 hops
1 10.0.0.1 reports:Destination net unreachable.
Trace complete.
Tracert 实用程序对于解决大网络问题非常有用,此时可以采取几条路径到达同一个点。
Tracert 命令行选项
Tracert 命令支持多种选项,如下表所示。
tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout] target_name
-d 指定不将 IP 地址解析到主机名称。
-h maximum_hops 指定跃点数以跟踪到称为 target_name 的主机的路由。
-j host-list 指定 Tracert 实用程序数据包所采用路径中的路由器接口列表。
-w timeout 等待 timeout 为每次回复所指定的毫秒数。
target_name 目标主机的名称或 IP 地址。
使用 tracert 命令跟踪路径
打开 命令提示符,然后键入:
tracert host_name
或者键入 tracert ip_address
其中 host_name 或 ip_address 分别是远程计算机的主机名或 IP 地址。
例如,要跟踪从该计算机到 [url]www.microsoft.com[/url] 的连接路由,请在命令提示行键入:
tracert [url]www.microsoft.com[/url]
注意
要打开“命令提示符”,请单击“开始”,指向“程序”、“附件”,然后单击“命令提示符”。
tracert 命令跟踪 TCP/IP 数据包从该计算机到其他远程计算机所采用的路径。tracert 命令使用 ICMP 响应请求并答复消息(和 ping 命令类似),产生关于经过的每个路由器及每个跃点的往返时间 (RTT) 的命令行报告输出。
如果 tracert 失败,可以使用命令输出来帮助确定哪个中介路由器转发失败或耗时太多。
参数
/d
指定不将地址解析为计算机名。
-h maximum_hops
指定搜索目标的最大跃点数。
-j computer-list
指定沿 computer-list 的稀疏源路由。
-w timeout
每次应答等待 timeout 指定的微秒数。
target_name
目标计算机的名称

分享到:
评论

相关推荐

    SQL执行计划之sql_trace

    #### 二、SQL Trace命令详解 SQL Trace 的开启与配置涉及到几个关键参数,具体如下: 1. **timed_statistics** - 该参数用于控制是否收集执行统计信息。默认情况下,如果设置为 FALSE,则 SQL Trace 不会收集时间...

    dis命令详解

    ### dis命令详解 根据提供的文件信息,这里实际上讨论的是`dig`命令而非`dis`命令。`dig`命令是一款强大的DNS查询工具,在Unix和Linux环境下广泛应用于DNS问题的诊断及查询,相较于`nslookup`提供了更为丰富的功能...

    linux dig命令详解

    ### Linux dig 命令详解:深入理解 DNS 查询利器 #### 概述 在 Linux 系统中,`dig`(Domain Information Groper)是一个功能强大的工具,用于查询域名系统(DNS)。它允许用户深入了解 DNS 的工作原理,帮助诊断...

    linux_下的dig_命令详解

    ### Linux下的dig命令详解 #### 概述 `dig`(Domain Information Groper,域信息搜索器)是一款功能强大的DNS查询工具,在Unix和Linux系统中广泛使用。它可以帮助用户了解DNS解析过程,诊断DNS相关的问题,并获取...

    Linux下ftp命令详解

    ### Linux下FTP命令详解 FTP(File Transfer Protocol)是一种用于在网络上进行文件传输的标准协议和应用。在Linux系统中,FTP客户端提供了丰富的命令集来管理文件传输任务,包括上传、下载、目录浏览等操作。本文...

    DEBUG命令详解及范例

    1. **T (Trace)**: T命令单步执行指令,`T`会执行当前CS:IP指向的指令,并展示执行后的结果。 2. **U (Unassemble)**: U命令将内存中的机器码转换为汇编代码,`U [地址]`会显示从指定地址开始的汇编代码。 3. **/ ...

    汇编命令和debug命令详解

    ### 汇编命令与debug命令详解 #### 概述 在计算机科学领域,特别是针对低级别编程语言如汇编语言的学习与应用过程中,理解和掌握各种汇编命令以及调试工具(debug)是至关重要的。本文将对汇编命令及debug命令进行...

    TRACE32的一些常用命令

    #### 二、常用命令详解 ##### 1. 下载调试用的.elf文件到目标板 **命令格式:** `d.load.elf *.elf` 或者直接输入 `d.load.elf` 后跟`.elf`文件的具体路径。 **说明:** 此命令用于将.elf文件中的调试符号信息下载到...

    mq常用命令详解

    ### MQ 常用命令详解 #### 一、创建队列管理器 (Create Queue Manager) **命令:** `crtmqm QMgrName` **描述:** 此命令用于创建一个新的队列管理器。队列管理器是 WebSphere MQ 中的一个核心组件,它负责处理消息...

    debug命令详解 各命令的含义

    16. **T (Trace)**: `T[=地址][x]` 单步执行指定次数的指令,显示每一步的结果,是调试过程中的常用工具。 17. **U (Unassemble)**: `U[地址]` 或 `U 地址范围` 反汇编指定地址或地址范围的机器码,使程序员能够...

    IBM WebSphere message broker 命令详解

    ### IBM WebSphere Message Broker 命令详解 IBM WebSphere Message Broker(以下简称“Message Broker”)是IBM提供的一款用于企业级消息处理的软件,它能够高效地管理和传递大量的消息数据,支持复杂的消息处理...

    DNS dig命令详解

    ### DNS dig命令详解 #### 概述 DNS(Domain Name System)是互联网中用来将域名转换为IP地址的重要服务之一。对于系统管理员和技术人员来说,掌握如何高效地使用DNS工具来排查问题至关重要。其中,`dig`命令因其...

    DEBUG命令详解(汇编)

    - **T (Trace)**: `T`命令用于单步执行指令。`T 100`将从地址100开始单步执行。 ### 6. 其他高级功能 - **Q (Quit)**: 结束DEBUG会话。 - **L (Load)**: 用于加载程序到内存中。 - **C (Compare)**: 对内存区域...

    FTP命令详解_及_shell中的使用

    ### FTP命令详解与Shell中的应用 FTP(File Transfer Protocol)是一种用于在网络上进行文件传输的协议。本文将深入解析FTP命令的使用方法及其在Shell环境下的具体应用,旨在为用户提供一份详实的中文版帮助文档。 ...

    DEBUG 命令详解

    ### DEBUG命令详解 #### 一、概述 在计算机科学领域,特别是软件开发过程中,调试(Debugging)是一项至关重要的技能。它涉及查找并修正程序中的错误或缺陷,以确保程序能够按照预期正常运行。DEBUG命令作为早期...

    dbx命令详解.doc

    ### DBX命令详解 #### 一、DBX命令概述 DBX是一种强大的调试工具,主要用于C、C++、Pascal和FORTRAN等编程语言的程序调试。它通过提供一系列的功能来帮助开发者查找并修复程序中的错误,从而提高软件的质量与性能...

    android模拟器命令详解收集.pdf

    Android 模拟器命令详解收集 Android 模拟器是 Android SDK 自带的一个移动设备模拟器,可以在电脑上运行虚拟设备,模拟除接听和拨打电话外的所有移动设备上的典型功能和行为。 Android 模拟器提供了大量的导航和...

Global site tag (gtag.js) - Google Analytics