通过使用Trace Route工具,用户可以查看IP报文从源端到达目的端所经过的三层设备,从而检查网络连接是否可用。当网络出现故障时,用户可以使用该工具分析出现故障的网络节点。
图1-1 Trace Route原理示意图
Trace Route也是基于ICMP协议来实现的,如上图所示,Trace Route的原理为:
(1)源端(Device A)向目的端(Device D)发送一个IP数据报文,TTL(Time to Live,生存时间)值为1,报文的UDP端口号是目的端的任何一个应用程序都不可能使用的端口号。
(1)第一跳(Device B,即该报文所到达的第一个三层设备)回应一个TTL超时的ICMP错误信息(该报文中含有第一跳的IP地址1.1.1.2),这样源端就得到了第一个三层设备的地址(1.1.1.2)。
(2)源端重新向目的端发送一个IP数据报文,TTL值为2。
(3)第二跳(Device C)回应一个TTL超时的ICMP错误信息,这样源端就得到了第二个三层设备的地址(1.1.2.2)。
(4)以上过程不断进行,直到该报文到达目的端,因目的端没有应用程序使用该UDP端口,目的端返回一个端口不可达的ICMP错误消息(携带了目的端的IP地址1.1.3.2)。
(5)当源端收到这个端口不可达的ICMP错误消息后,就知道报文已经到达了目的端,从而得到数据报文从源端到目的端所经历的路径(1.1.1.2;1.1.2.2;1.1.3.2)。
1.1.2 Ping
通过使用Ping工具,用户可以检查指定地址的设备是否可达,测试网络