TCP/IP之五:traceroute程序

本文深入探讨了Traceroute程序的工作原理,解释了其如何通过发送UDP报文并接收ICMP超时报文来追踪网络路径。同时,文章提出了一个关于当前路由器对ICMP超时行为的疑问,并总结了IP数据包报头的选项类型。

traceroute程序实现原理:该程序给特定主机发送UDP报文,UDP需要封装在IP分组中进行传输,程序通过依次将IP分组中的TTL设为1,2,3…n,发送不同的UDP报文,这样就会收到中途路由器的ICMP超时报文,从而可以获得路由器的IP地址;同时目的主机UDP端口号被设置为目的主机不可能使用的端口号,这样目的主机收到该UDP报文会返回一个端口不可达的ICMP报文,从而可以判断UDP是否已经到达目的主机。

在我的主机上运行traceroute,输出全是*,也就是说没有受到任何ICMP超时报文,用tcpdump监听,确实没有ICMP超时报文,因此我猜测:现在的路由器即使收到的IP分组超时了也不会发送ICMP超时报文,这样traceroute也就没有用武之地了。

到这里,我们来总结下IP数据包报头选项可以有哪些类型:
(1)记录路由选项;
(2)时间戳选项;
(3)源站选路选项;

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值