网络常用命令(二)traceroute

一 功能和原理:

(1)功能:

Traceroute程序可以让我们看到IP数据报从一台主机到另一台主机所经过的路由。

(2)原理:(使用UDP+ICMP)

Traceroute程序使用ICMP报文和IP首部中的TTL字段(生存周期)。

TTL字段是由发送端初始设置一个8bit字段,最大值为255。

以前TTL是用时间秒作为计量单位,如今是用”跳数“。

所经过的每一个路由器都把TTL的值减1.

路由器在转发数据报之前把TTL的值减1,如果TTL为0则丢弃这个报文,不再转发,并给ICMP发送一个”超时“报文。


原理总述:

1.Traceroute从源主机向目的主机发送一连串的IP数据报,数据报中封装的是无法交付的UDP用户数据报(使用了非法的端口号)。

2.首先,发送一个TTL为1的数据报给目的主机,处理这个数据报的第一个路由器将TTL减1,丢弃该数据报,并发回一个超时的ICMP报文,这样就得到了该路径中的第一个路由器的地址。

3.然后,traceroute发送一个TTL为2的数据报,这样就得到了第二个路由器的地址。继续这个过程直至数据报到达目的主机。

4.到达目的主机后,主机不把TTL减1,也不转发该数据报。但因为这个数据报封装的是无法交付的UDP数据报,目的主机要向源主机发送ICMP终点不可达差错数据报文。这样Traceroute程序所要做的是区分接受到的ICMP报文是超时还是端口不可达,以判断什么时候结束。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值