traceroute命令介绍

traceroute

traceroute 是一种网络诊断命令,用于确定 IP 数据包从源到目的地所需经过的路径。它通过发送特殊的 IP 数据包来确定中间路由器的数量和响应时间。当出现网络问题时,traceroute 通常用于检查问题发生的位置。下面是 traceroute 命令的详细介绍:

语法:
traceroute [options] <目标IP或主机名>
选项:
  • -U:使用 UDP 数据包而不是 ICMP 回显请求。

  • -T:使用 TCP SYN 包而不是 UDP 数据包。

  • -I:使用 ICMP 协议进行探测,默认为 UDP 协议。

  • -n:不解析 IP 地址到主机名。

  • -w 秒数:设置超时时间,单位为秒,默认为5秒。

  • -q 数量:指定发送数据包的数量,默认为3个。

  • -m 数量:指定数据包的 TTL 值,默认为30。

工作原理:

traceroute 命令使用发送的 UDP 数据包,每个数据包上面的 TTL 字段递增,直到到达目的主机。每当 TTL 达到下一跳路由器时,该路由器会将数据包丢弃,并发送一个 ICMP 时间戳回显应答消息(TTL 超时)。traceroute 利用此消息确定它到达了哪个路由器。使用此方法,traceroute 可以确定路由路径上的所有路由器,以及发送和接收响应消息所需的时间。

局限性:
  • 在某些网络环境下,traceroute 可能会被防火墙或路由器配置阻止。
  • 由于路由器可能使用不同的算法来选择路由,因此在不同的路由器上运行的 traceroute 可能会显示不同的路径。
  • 在某些情况下,traceroute 可能无法识别中间路由器的所有 IP 地址,因为路由器可能配置为使用不同的 IP 地址响应 ICMP TTL 超时消息。
示例:

使用 traceroute 命令查询到达ip/host 的路由路径:

$ traceroute -n -T ip/host -p port # TCP测试
$ traceroute -n -U ip/host -p port # UDP测试
判断traceroute返回结果是否正常:

Traceroute是一种网络诊断工具,用于确定数据包从源地址到目标地址所经过的路由器路径。在traceroute的输出结果中,每个路由器都会显示其IP地址、名称(如果可用)和延迟时间(以毫秒为单位)。以下是判断traceroute返回结果是否正常的一些方法:

  1. 查看延迟时间:如果延迟时间比较小且延迟时间没有明显的跳跃,则说明网络连接正常。如果延迟时间非常大或者存在跳跃,说明存在网络延迟或丢包问题。
  2. 查看IP地址:如果IP地址与目标地址不匹配,则说明数据包可能被路由到了错误的网络或被阻挡了。
  3. 查看跃点数:如果跃点数过多,说明数据包可能经过了太多的路由器,导致延迟时间增加。
  4. 查看是否存在超时:如果有路由器没有回应,则说明该路由器可能出现了故障或配置问题。
  5. 对比多次执行结果:如果多次执行traceroute的结果都相同,则说明网络连接比较稳定。如果每次执行结果都不同,则说明网络连接不稳定,可能存在丢包或延迟问题。

需要注意的是,traceroute结果的解释需要基于具体的网络环境和目标地址来进行分析。因此,在分析traceroute输出结果时,需要综合考虑各种因素,并结合实际情况来判断网络连接是否正常。

  • 正常例子:
[root@SRV083]# traceroute -n -T 10.19.176.16  -p 22
traceroute to 10.19.176.16 (10.19.176.16), 30 hops max, 60 byte packets
 1  10.33.22.254  0.660 ms  0.789 ms  0.945 ms
 2  10.2.19.254  1.286 ms  0.932 ms  0.937 ms
 3  10.2.242.17  0.340 ms 10.2.242.143  0.358 ms  0.295 ms
 4  10.2.242.226  1.630 ms  1.355 ms  1.469 ms
 5  * * *
 6  10.99.34.214  0.750 ms  0.607 ms  0.596 ms
 7  * * *
 8  * * *
 9  * * *
10  * * *
11  * * *
12  * * *
13  * * *
14  * * *
15  10.19.176.16  39.407 ms  39.514 ms  39.480 ms

  • 异常例子:
[root@SRV083]# traceroute -n -T 10.19.176.13  -p 22
traceroute to 10.19.176.13 (10.19.176.13), 30 hops max, 60 byte packets
 1  10.33.22.254  0.542 ms  0.724 ms  0.907 ms
 2  10.2.19.254  0.895 ms  1.250 ms  1.619 ms
 3  10.2.242.17  0.484 ms  0.451 ms  0.513 ms
 4  10.2.242.100  1.030 ms  1.830 ms  1.027 ms
 5  * * *
 6  10.99.34.202  1.244 ms  1.201 ms  0.835 ms
 7  * * *
 8  * * *
 9  * * *
10  * * *
11  * * *
12  * * *
13  * * *
14  * * *
15  * * *
16  * * *
17  * * *
18  * * *
19  * * *
20  * * *
21  * * *
22  * * *
23  * * *
24  * * *
25  * * *
26  * * *
27  * * *
28  * * *
29  * * *
30  * * *

  • 2
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
DDU ICMP controls consist of 3 controls : TDDUOSPING - A non blocking PING protocolTDDUOSTRACEROUTE - A non blocking TraceRoute ProtocolTDDUOSDNS - A non blocking ARP/RARP controlAbout TDDUOSDNS :Host names are resolved to IP addresses, and IP address can be resolved to host names. If you enter an IP into the ADDRESS property, the HOST property will be completed, and the OnHostLookup event will occur. If you enter an IP or a HOST name into the HOST property, the ADDRESS property will be completed, and the OnAddressLookup event will occure. The runtime property OK can be queried to see if the lookup was successful. To reduce lookup overhead, an IP/Hostname cache can be used by setting the UseIPCache property to true. The cache is only persistent for the current session, and maynot be saved between sessions. You can use FlushIPCache method to clear the cache.When combined with the other controls in this package, the delay normally associated with connecting a socket can be avoided. Each control must have a unique TDDUOSDNS control.About the Demo :The demo project shows how to use each control. The TDDUOSDNS control is shown both in combination with other controls, and used independantly. DNS not an ICMP protocol, but it is included to prevent the windows application from blocking.Blocking is when your windows program stops responding to messages, waiting for a call to return. Normally, all calls blocks for a very short time, and is not noticable - but when you have to wait for 5 or 10 seconds or even longer, the application can appear to be crashed. By using threads, callback messages, and events, I have illustrated how it is possible to avoid blocking in an application.These controls form a custom set of TCP/IP controls I have been developing over the past year. The ICMP controls were written over the period of a week, and I consulted several references for information. I would like to thank Quinn Shute for his excellent book "Windows Socket Network Programming&
非扫描版TCP/IP详解卷一,你值得拥有: 《TCP/IP详解,卷1:协议》是一本完整而详细的TCP/IP协议指南。描述了属于每一层的各个协议以及它们如何在不同操作系统中运行。作者用Lawrence Berkeley实验室的tcpdump程序来捕获不同操作系统和TCP/IP实现之间传输的不同分组。对tcpdump输出的研究可以帮助理解不同协议如何工作。 本书适合作为计算机专业学生学习网络的教材和教师参考书。也适用于研究网络的技术人员。 目 录 译者序 前言 第1章 概述 1 1.1 引言 1 1.2 分层 1 1.3 TCP/IP的分层 4 1.4 互联网的地址 5 1.5 域名系统 6 1.6 封装 6 1.7 分用 8 1.8 客户-服务器模型 8 1.9 端口号 9 1.10 标准化过程 10 1.11 RFC 10 1.12 标准的简单服务 11 1.13 互联网 12 1.14 实现 12 1.15 应用编程接口 12 1.16 测试网络 13 1.17 小结 13 第2章 链路层 15 2.1 引言 15 2.2 以太网和IEEE 802封装 15 2.3 尾部封装 17 2.4 SLIP:串行线路IP 17 2.5 压缩的SLIP 18 2.6 PPP:点对点协议 18 2.7 环回接口 20 2.8 最大传输单元MTU 21 2.9 路径MTU 21 2.10 串行线路吞吐量计算 21 2.11 小结 22 第3章 IP:网际协议 24 3.1 引言 24 3.2 IP首部 24 3.3 IP路由选择 27 3.4 子网寻址 30 3.5 子网掩码 32 3.6 特殊情况的IP地址 33 3.7 一个子网的例子 33 3.8 ifconfig命令 35 3.9 netstat命令 36 3.10 IP的未来 36 3.11 小结 37 第4章 ARP:地址解析协议 38 4.1 引言 38 4.2 一个例子 38 4.3 ARP高速缓存 40 4.4 ARP的分组格式 40 4.5 ARP举例 41 4.5.1 一般的例子 41 4.5.2 对不存在主机的ARP请求 42 4.5.3 ARP高速缓存超时设置 43 4.6 ARP代理 43 4.7 免费ARP 45 4.8 arp命令 45 4.9 小结 46 第5章 RARP:逆地址解析协议 47 5.1 引言 47 5.2 RARP的分组格式 47 5.3 RARP举例 47 5.4 RARP服务器的设计 48 5.4.1 作为用户进程的RARP服务器 49 5.4.2 每个网络有多个RARP服务器 49 5.5 小结 49 第6章 ICMP:Internet控制报文协议 50 6.1 引言 50 6.2 ICMP报文的类型 50 6.3 ICMP地址掩码请求与应答 52 6.4 ICMP时间戳请求与应答 53 6.4.1 举例 54 6.4.2 另一种方法 55 6.5 ICMP端口不可达差错 56 6.6 ICMP报文的4.4BSD处理 59 6.7 小结 60 第7章 Ping程序 61 7.1 引言 61 7.2 Ping程序 61 7.2.1 LAN输出 62 7.2.2 WAN输出 63 7.2.3 线路SLIP链接 64 7.2.4 拨号SLIP链路 65 7.3 IP记录路由选项 65 7.3.1 通常的例子 66 7.3.2 异常的输出 68 7.4 IP时间戳选项 69 7.5 小结 70 第8章 Traceroute程序 71 8.1 引言 71 8.2 Traceroute 程序的操作 71 8.3 局域网输出 72 8.4 广域网输出 75 8.5 IP源站选路选项 76 8.5.1 宽松的源站选路的traceroute 程序示例 78 8.5.2 严格的源站选路的traceroute 程序示例 79 8.5.3 宽松的源站选路traceroute程序 的往返路由 80 8.6 小结 81 第9章 IP选路 83 9.1 引言 83 9.2 选路的原理 84 9.2.1 简单路由表 84 9.2.2 初始化路由表 86 9.2.3 较复杂的路由表 87 9.2.4

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值