traceroute是一个通用的TCP/IP工具,它能显示出数据包从本地机到达目标机时经过的所有路由器。由于traceroute会人为地给网络造成一些通信负担,所有它主要被系统或网络管理员,作为一个简单而有效的网络手工查错工具使用,普通用户最好少用。尽管如此,traceroute对于用户了解Internet的结构,了解自身的网络故障会有很大帮助。
下面给出的语法和例子都是在Unix操作系统下的情况,在其它操作系统中,该命令可能有不同的使用方法或表示,例如在Windows NT和Windows 95下,类似的命令叫tracert。
traceroute的语法为:
traceroute [-m Max_ttl] [-n ] [-p Port] [-q Nqueries] [-r] [-s SRC_Addr]
[-t TypeOfService] [-v] [-w WaitTime] Host [PacketSize]
其中,
-m Max_ttl:指定最大生存期(Maximum Time-to-live)。也就是数据包从本地机到达目标机所经过的最大跳步(hop),即最多经过这么多路由器。缺省值为30步。
-n:只显示途径路由器的IP地址,不再显示其名字。
-p:指定包传输时使用的UDP端口号。
-q:指定每次跳步发送的探询包的数目,缺省值为3。
-v:列出详细信息。
-w WaitTime:指定每次跳步等待接收响应包的最长时间,缺省值为3秒。
Host:目标机的IP地址或机器名。
PacketSize:指定每个跳步传输的数据包的大小,缺省值为38个字节。
traceroute实际上是通过给目标机的一个非法UDP端口号发送一系列UDP数据包来工作的。使用缺省设置时,本地机给每个路由器发送3个数据包,最多可经过30个路由器。如果已经经过了30个路由器,但还未到达目标机,那么traceroute将终止。每个数据包都对应一个Max_ttl值,同一跳步的数据包该值一样,不同跳步的数据包的值从1开始,每经过一个跳步值加1。当本地机发出的数据包到达路由器时,路由器就响应一个ICMP Time Exceed消息,于是traceroute就显示出当前跳步数,路由器的IP地址或名字,3个数据包分别对应的周转时间(以ms为单位)。如果本地机在WaitTime内未收到响应包,那么在数据包的周转时间栏就显示出一个星号。当一个跳步结束时,本地机根据当前路由器的路由信息,给下一个路由器又发出3个数据包,周而复始,直到收到一个ICMP PORT_UNREACHABLE的消息,意味着已到达目标机,或者已达到指定的最大跳步数。
% traceroute www.cnc.ac.cn
traceroute to www.cnc.ac.cn (159.226.1.17), 30 hops max, 40 byte packets
1 router1.sp.net.edu.cn (202.112.35.254) 2 ms 2 ms 2 ms
2 202.112.1.210 (202.112.1.210) 4 ms 2 ms 2 ms
3 202.38.96.1 (202.38.96.1) 3 ms 2 ms 2 ms
4 159.226.1.17 (159.226.1.17) 3 ms 2 ms 2 ms
例中www.cnc.ac.cn是中科院的WWW服务器,本地机是CERNET高性能计算中心SP2的一个节点机。首先从SP2连到CERNET的HUB(202.112.35.254)出去,然后经过CERNET和CASnet的路由器到达目标服务器。可以看到,数据包的平均周转时间为2ms,这是相当快的速度了。
% traceroute www.mhpcc.edu
traceroute to wailea.mhpcc.edu (164.122.9.37), 30 hops max, 40 byte packets
1 router1.sp.net.edu.cn (202.112.35.254) 2 ms 2 ms 2 ms
2 202.112.1.198 (202.112.1.198) 7 ms 11 ms 4 ms
3 us-igw.net.edu.cn (202.112.1.206) 45 ms 54 ms *
4 gsl-stock-3-Serial10/4.gsl.net (204.59.160.245) 554 ms 552 ms 575 ms
5 gsl-sl-stock-fddi.gsl.net (204.59.128.198) 559 ms 553 ms 551 ms
6 sl-mae-w-H3/0-T3.sprintlink.net (144.228.10.110) 562 ms 557 ms 564 ms
7 mae-west.dren.net (198.32.136.81) 571 ms 622 ms 587 ms
8 wahiawa-nctams.dren.net (138.18.232.2) 677 ms 617 ms 621 ms
9 maui.dren.net (138.18.236.1) 611 ms 649 ms 629 ms
10 bcn77-f11-7.mhpcc.edu (164.122.7.7) 613 ms 608 ms 610 ms
11 wailea.mhpcc.edu (164.122.9.37) 622 ms 617 ms *
要到达MHPCC的WWW服务器,在第3跳步到达CERNET通往美国的路由器,然后经过Sprint公司的其它路由器在第8跳步到达Hawaii,最后经过Maui的路由器到达目标节点。可以看出,从本地机发往国内几个路由器的周转时间为几十ms,到达美国后猛增到500多ms。
分享到:
相关推荐
在TCP/IP网络编程中,基于ICMP的路由跟踪(traceroute)程序是一个极其重要的工具,它可以帮助网络管理员和开发者理解数据包在网络中的传输路径。本文将深入探讨traceroute的工作原理、涉及的ICMP协议以及如何实现...
路由跟踪,也称为traceroute,是一种用于探测网络路由的技术。通过发送带有特定时间戳和递增IP TTL(Time To Live)值的数据包,路由跟踪能够揭示数据包从源到目的地所经过的每一个跃点,从而帮助我们分析网络延迟、...
解压后make即可,若没有gcc文件需要先安装gcc
在标题和描述中提到的"路由跟踪",通常指的是使用Traceroute(Windows系统中称为"tracert")这样的工具。Traceroute通过发送具有不同TTL(Time To Live)值的ICMP回显请求或UDP数据包来工作,每经过一个路由器,TTL...
**网络路由跟踪小工具WinTraceRoute2.3详解** 网络路由跟踪是网络故障排查和性能优化中的重要技术,它能够帮助我们了解数据包在网络中从源到目的地的完整路径。WinTraceRoute2.3就是这样一款小巧而强大的工具,它...
路由跟踪,也被称为traceroute,是一种网络诊断工具,通过发送带有不同时间戳和TTL(生存时间)值的数据包到目标地址,以追踪数据包在网络中的路径。当数据包到达每个路由器时,其TTL值会减一,直至TTL降为零,...
在本实验中,通过Nmap对北京邮电大学官网(IP地址:10.3.9.254)进行了多种类型的扫描,包括隐藏扫描、端口扫描、UDP扫描、Ping扫描、TCP ACK扫描以及操作系统类型扫描和Traceroute路由跟踪扫描,以此揭示网络环境中...
路由跟踪(Tracert)是网络诊断工具中的一个重要部分,用于确定数据包从源到目的地在网络中经过的路径。在Windows系统中,Tracert(也称为traceroute)是内置命令,通过发送具有不同时间戳的ICMP回显请求报文(即...
**MTR路由跟踪详解** MTR(My Traceroute)是一种网络诊断工具,结合了traceroute和ping的功能,用于分析网络连接的性能和追踪数据包在网络中的传输路径。MTR,全称为“Multi-Path Traceroute”,由Joris van de ...
微型路由跟踪,也被称为traceroute,是网络诊断中一个非常重要的工具,主要用于了解数据包在网络中从源到目的地经过的路径。它可以帮助网络管理员、IT专业人员或普通用户定位网络延迟、丢包或其他网络问题的原因。这...
CTrace类是一个在VC2005环境下开发的专门用于路由跟踪的封装类。路由跟踪是网络诊断中常用的一种技术,它允许用户查看数据包在网络中的传输路径,从而帮助识别网络延迟或通信问题的原因。CTrace类实现了类似操作系统...
**路由跟踪概述** 路由跟踪是网络诊断中一个关键的技术,用于确定数据包从源设备到目标设备实际经过的路径。在网络架构中,尤其在复杂的网络环境中,数据包可能需要穿越数十个路由器才能达到最终目的地。了解数据包...
标题中的“利用C++编写的一个模仿tracert路由跟踪的程序”表明这是一个使用C++编程语言实现的应用,其功能是对网络路由进行跟踪,类似于操作系统自带的`tracert`命令。`tracert`(也称为`traceroute`)是一个用于...
* Traceroute 路由跟踪程序 * OSPF 0 区域 * OSPF NEABLE AREA 0.0.0.0 8. 网络性能优化: * 线速交换:交换机背板带宽的总和 >= 所有端口带宽的总和 9. 项目管理: * Pert 图(计划评审法):进度、成本 * ...
Best Trace是一款可以在你的设备上发起 traceroute 请求,附带链路可视化的软件,它不仅可以在地图上标注路由的所在位置和AS号,还支持查询本机IP和批量Ping等。
资源是路由跟踪工具traceroute的rpm安装包,对于red hat不支持yum的系统非常便捷
标签中的“traceroute”是基础工具,其主要作用是跟踪数据包在网络中的跳数和路径,通常用于检测延迟问题、检查网络拥塞或发现网络设备故障。而“路由”是指数据包在传输过程中经过的路径,理解路由对于网络管理和...
**WinMTR路由跟踪工具详解** WinMTR是一款结合了Traceroute(traceroute命令)和Ping功能的网络诊断工具,适用于Windows操作系统。它在IT领域中被广泛使用,帮助网络管理员和普通用户识别和解决网络连接问题。与...
"vrc.exe"可能是一个用于执行路由跟踪的实用工具,可能是Visual Route的简写,这是一个流行的应用程序,可以显示数据包从源到目标所经过的IP地址和地理位置。它结合了traceroute的功能与IP地址到地理位置的映射,以...
`traceroute`根据这些响应来推断出完整的路由路径。 源码分析: 1. **源码结构**:`traceroute-2.1.0`源码可能包含多个目录,如`src`(源代码)、`include`(头文件)、`doc`(文档)、`test`(测试用例)等。主要...