志在指尖
用双手敲打未来

tcptraceroute是什么意思(路由追踪原理介绍)

tcptraceroute是什么意思

功能阐明:显示数据包到主机间的途径。它默许发送的数据包巨细是40字节。
经过traceroute咱们能够知道信息从你的计算机到互联网另一端的主机是走的什么途径。当然每次数据包由某一相同的起点(source)抵达某一相同的意图地(destination)走的途径可能会不一样,但基本上来说大部分时分所走的路由是相同的。
工作原理
Traceroute程序的设计是使用ICMP及IPheader的TTL(TimeToLive)栏位(field)。首要,traceroute送出一个TTL是1的IPdatagram(其实,每次送出的为3个40字节的包,包含源地址,意图地址和包宣布的时刻标签)到意图地,当途径上的第一个路由器(router)收到这个datagram时,它将TTL减1。此时,TTL变为0了,所以该路由器会将此datagram丢掉,并送回一个「ICMPtimeexceeded」音讯(包含发IP包的源地址,IP包的所有内容及路由器的IP地址),traceroute收到这个音讯后,便知道这个路由器存在于这个途径上,接着traceroute再送出另一个TTL是2的datagram,发现第2个路由器……traceroute每次将送出的datagram的TTL加1来发现另一个路由器,这个重复的动作一向持续到某个datagram抵达意图地。当datagram抵达意图地后,该主机并不会送回ICMPtimeexceeded音讯,因为它已是意图地了,那么traceroute如何得知意图地抵达了呢?tcptraceroute
Traceroute在送出UDPdatagrams到意图地时,它所挑选送达的portnumber是一个一般应用程序都不会用的号码(30000以上),所以当此UDPdatagram抵达意图地后该主时机送回一个「ICMPportunreachable」的音讯,而当traceroute收到这个音讯时,便知道意图地现已抵达了。所以traceroute在Server端也是没有所谓的Daemon程式。
Traceroute提取发ICMPTTL到期音讯设备的IP地址并作域名解析。每次,Traceroute都打印出一系列数据,包含所经过的路由设备的域名及IP地址,三个包每次来回所花时刻
traceroute经过发送小的数据包到意图设备直到其回来,来测量其需求多长时刻。一条途径上的每个设备traceroute要测3次。输出结果中包含每次测验的时刻(ms)和设备的称号(如有的话)及其ip地址。
咱们traceroute一台主机时,会看到有一些行是以星号*表示的。出现这样的状况,可能是防火墙封掉了ICMP的回来信息,所以咱们得不到什么相关的数据包回来数据。每条后边有多个IP的,表示该节点有多个路由可供挑选,三次测验中挑选了不同的设备。
有时咱们在某一网关处延时比较长,有可能是某台网关比较阻塞,也可能是物理设备自身的原因。当然如果某台DNS出现问题时,不能解析主机名、域名时,也会有延时长的现象;您能够加-n参数来避免DNS解析,以IP格式输出数据。

路由追踪原理介绍

现实世界中的网络是由很多的计算机和路由器组成的一张的大网,使用的数据包在发送到服务器之前都要经过层层的路由转发。而Traceroute是一种惯例的网络分析工具,用来定位到目标主机之间的所有路由器
原理
在介绍Traceroute的原理之前,需要了解几个技能名词:
IP协议
IP协议是TCP/IP协议族中最核心的部分,它的作用是在两台主机之间传输数据,所有上层协议的数据(HTTP、TCP、UDP等)都会被封装在一个个的IP数据包中被发送到网络上。
ICMP
ICMP全称为互联网操控报文协议,它常用于传递过错信息,ICMP协议是IP层的一部分,它的报文也是经过IP数据包来传输的。
TTL
TTL(time-to-live)是IP数据包中的一个字段,它指定了数据包最多能经过几回路由器。从咱们源主机发出去的数据包在抵达意图主机的路上要经过许多个路由器的转发,在发送数据包的时分源主时机设置一个TTL的值,每经过一个路由器TTL就会被减去一,当TTL为0的时分该数据包会被直接丢弃(不再持续转发),并发送一个超时ICMP报文给源主机。路由追踪原理
具体到traceroute的完成细节上,有两种不同的计划:
根据UDP完成
在根据UDP的完成中,客户端发送的数据包是经过UDP协议来传输的,使用了一个大于30000的端口号,服务器在收到这个数据包的时分会回来一个端口不可达的ICMP过错信息,客户端经过判别收到的过错信息是TTL超时还是端口不可达来判别数据包是否抵达目标主机,具体的流程如图:
根据UDP完成的traceroute
客户端发送一个TTL为1,端口号大于30000的UDP数据包,抵达第一站路由器之后TTL被减去1,回来了一个超时的ICMP数据包,客户端得到第一跳路由器的地址。
客户端发送一个TTL为2的数据包,在第二跳的路由器节点处超时,得到第二跳路由器的地址。
客户端发送一个TTL为3的数据包,数据包成功抵达目标主机,回来一个端口不可达过错,traceroute结束。

未经允许不得转载:IT技术网站 » tcptraceroute是什么意思(路由追踪原理介绍)
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载