1、Tracert简介
Tracert是测试报文从发送端到目的地所经过的路由的方法。它能够直观展现报文在转发的时候所经过的路径。Tracert基于ICMP协议来实现的。当网络出现故障时,用户可以使用Tracert确定出现故障的网络节点。
2、Tracert实现过程
![7d75db91d39b37115000e39f87c994c5.png](https://i-blog.csdnimg.cn/blog_migrate/6a7caabd030f26559ac7a9c704ce42bc.jpeg)
图1 Tracert的流程
Tracert的实现如上图1所示,Tracert的工作流程为:
1、源端(SwitchA)向目的端(日志主机)发送一个UDP报文,TTL值为1,目的UDP端口号是大于30000的一个数,因为在大多数情况下,大于30000的UDP端口号是任何一个应用程序都不可能使用的端口号。
2、第一跳(SwitchB)收到源端发出的UDP报文后,判断出报文的目的IP地址不是本机IP地址,将TTL值减1后,判断出TTL值等于0,则丢弃报文并向源端发送一个ICMP超时(Time Exceeded)报文(该报文中含有第一跳的IP地址10.1.1.2),这样源端就得到了SwitchB的地址。
3、源端收到SwitchB的ICMP超时报文后,再次向目的端发送一个UDP报文,TTL值为2。
4、第二跳(SwitchC)收到源端发出的UDP报文后,回应一个ICMP超时报文,这样源端就得到了SwitchC的地址(10.1.2.