宝塔服务器面板,一键全能部署及管理,送你10850元礼包,点我领取

作为网络故障排除的常用工具,Tracerotue可以展示数据包在网络中的路由方式。 其机制也是网络工程师求职面试的典型问题。

跟踪实现有三种方法: tcptraceroute (可以在跟踪TCP程序中实现)

UDP跟踪(Cisco和Linux默认使用) )。

imp跟踪(ms windows默认使用) ) )。

首先分析基于UDP和ICMP的跟踪,然后分析基于TCP的跟踪。 因为前两个非常相似。

UDP和icmp跟踪

Traceroute的基本原理是,将依次递增TTL而取得的路径中的每跳信息发送到外部。

主机a向主机b跟踪,主机a第一次发出TTL=1的数据包,当该数据包到达R1时,TTL为0。 R1丢弃TTL=0的数据包并将一个ICMP Time Exceeded返回给host a。host a发出第二个数据包,使TTL增加1(TTL=2),该数据包到达R2时TTL=0,R2为hhh 同样,主机b向主机a返回Final Replay,直到TTL增加到适当的值,并且数据包成功到达主机b。

UDP和icmp跟踪之间的区别在于发送到外部的数据包(上图中用红色表示的数据包)和最后的final reply。 UDP发送UDP分组,并且final reply是icmp目的地不可撤销

ICMP发出icmp echo请求,final reply是ICMP Echo Reply

TCP跟踪

TCP traceroute也在使用TTL检测网络路径,但正在向外部发送TCP SYN数据包。 这样做的最大好处是,透过防火墙的概率更高。 因为TCP SYN看起来像是要建立常规的TCP连接。

有关思科跟踪的更多信息,请参阅ciscousingthetraceroutecommandonoperatingsystems (文档id :22826 )。