拓扑图
原理简介
PC1 traceroute PC2
1、 当源发出traceroute的时候,首先发送一个TTL=1的使用UDP随机高端口的包,当该包到达下一跳(R2)的时候,TTL-1(此时为0)当下一跳设备(R2)发现该数据包不是发给自己的,但是TTL已经为0了,所以R2会给上一跳路由器(R1)回复一个ICMP超时(time exceed)的消息,该消息中包含下一跳的IP地址(R2的F0/0,或者是说R2到达R1的接口IP)。
2、 此时源在发送一个TTL=2的包(同上),当该数据包到达R3,也会回复一个ICMP超时的包,并且包括相应IP地址。其他的以此类推。
3、 此时源发送一个TTL=3的包(同上),但此时该包已经到达目的地(PC2),PC2回复一个端口不可达的ICMP包,包括目的地的IP地址(该端口是一个大于30000的UDP端口)
在R2的F0/0口抓包
第一个给UDP发送包
查看第一个ICMP回包
最后一个ICMP回包