Traceroute的原理

Traceroute原理:

  1. 收到目的主机IP
  2. 给目的主机发送一个TTL=1(TTL指生存时间)的udp数据包,而经过的第一个路由器收到这个数据包之后,自动把TTL减去1,而TTL变为0之后,路由器就将这个数据包抛弃了,并同时产生一个主机不可达的ICMP超时数据报给主机。
  3. 主机收到这个ICMP数据报以后,会发送一个TTL=2的数据报给目的主机,然后刺激第二个路由器给主机发送ICMP数据报,如此反复,直到到达目的主机。
  4. 如此,Traceroute就可以拿到所有路由器的IP。

那么怎么知道UDP到没到达目的主机呢?

而traceroute发送的是端口30000的UDP报(一般网络程序只会监控少数的较小的端口),所以到达目的主机的时候,目的主机只能发送一个端口不可达的ICMP数据报给主机。主机接到这个报告以后就知道目的主机到了。

posted @ 2022-09-06 16:49  风早&爽子  阅读(156)  评论(0)    收藏  举报