华硕网络产品技术交流平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

查看: 7152|回复: 0

[分享] Tracert(traceroute) 工作原理分析

[复制链接]

300

主题

2934

回帖

9359

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
9359
发表于 2017-4-12 15:33:33 | 显示全部楼层 |阅读模式
tracert工作过程分析

Tracert 命令用 IP 生存时间 (TTL) 字段和 ICMP 错误消息来确定从一个主机到网络上其他主机的路由。

首先,tracert送出一个TTL是1的IP 数据包到目的地,当路径上的第一个路由器收到这个数据包时,它将TTL减1。此时,TTL变为0,所以该路由器会将此数据包丢掉,并送回一个「ICMP time exceeded」消息(包括发IP包的源地址,IP包的所有内容及路由器的IP地址),tracert 收到这个消息后,便知道这个路由器存在于这个路径上,接着tracert 再送出另一个TTL是2 的数据包,发现第2 个路由器...... tracert 每次将送出的数据包的TTL 加1来发现另一个路由器,这个重复的动作一直持续到某个数据包 抵达目的地。当数据包到达目的地后,该主机则不会送回ICMP time exceeded消息,一旦到达目的地,由于tracert通过UDP数据包向不常见端口(30000以上)发送数据包,因此会收到「ICMP port unreachable」消息,故可判断到达目的地。

tracert 有一个固定的时间等待响应(ICMP TTL到期消息)。如果这个时间过了,它将打印出一系列的*号表明:在这个路径上,这个设备不能在给定的时间内发出ICMP TTL到期消息的响应。然后,Tracert给TTL记数器加1,继续进行。

                                                                                      Tracert命令


                                                                                   Tracert发送的数据包 (TTL递增顺序)


                                                                                    Tracert接收的数据包


转自Tasfa的博客

微信扫一扫,阅读更方便^_^

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

快速回复 返回列表 搜索 官方QQ群
×

秒后自动关闭

小黑屋|手机版|Archiver|华硕网络产品技术交流平台 ( 苏ICP备16010857号-1 )苏公网安备 32050502000499号

GMT+8, 2024-5-25 07:57 , Processed in 0.041533 second(s), 31 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表