关注

TRACERT命令

一、工作原理

tracert(windows)或traceroute(linux/macos)是一个强大的网络诊断工具,用于追踪数据包从你的计算机到达目标主机所经过的网络路径(路由器或网关)。它的工作原理巧妙地利用了ip数据包的生存时间字段和icmp协议。

1、Ttl(Time To Live)

  • ttl是ip数据包头部中的一个字段(8位,取值范围1-255)。
  • ttl是为了防止数据包在网络中因路由环路等原因无线循环下去。
  • 每当一个路由器(或三层设备)转发一个数据包时,他会将该数据包的ttl值减1。
  • 如果路由器在转发前发现ttl值减为0(或已经是0),它会丢弃该数据包,并向数据包的源地址发送一个icmp time exceeded消息。这个消息包含了丢弃该数据包的路由器的ip地址。

2、Tracert的步骤:

  • 第一步探测:
    • 计算机创建一个探测数据包(通常是icmp echo request-windows tracert,或udp到高端口-传统unix traceroute)发送给目标主机。
    • 将这个探测包的ttl值设置为1.
    • 第一个接收到该数据包的路由器(你本地网关或isp的第一个路由器)会将ttl减1(变成0)。
    • 该路由器丢弃数据包,并向你的计算机发送一个icmp time exceeded消息。
    • tracert程序收到这个icmp消息,记录:
      • 发送该icmp消息的路由器的ip地址。
      • 从发

转载自CSDN-专业IT技术社区

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/zdd56789/article/details/149743811

评论

赞0

评论列表

微信小程序
QQ小程序

关于作者

点赞数:0
关注数:0
粉丝:0
文章:0
关注标签:0
加入于:--