开发者社区> baby神> 正文

traceroute和mtr

简介: traceroute是检测到目的主机路由的工具,它并不能保证从本机发出的两个IP数据报有相同的路由。 原理是:traceroute发送udp数据报,先发送TTL为1的,到第一个路由器TTL减1,并返回一个超时的ICMP报文,这样就得到了第一个路由器的地址;接下来发送TTL值为2的报文,得到第二个路由器的报文;到目的主机的时候,并不会返回超时ICMP报文,而是udp发送到一个不可能到达的目的端口,这样就能返回一个“端口不可达”的错误。
+关注继续查看

traceroute是检测到目的主机路由的工具,它并不能保证从本机发出的两个IP数据报有相同的路由。

原理是:traceroute发送udp数据报,先发送TTL为1的,到第一个路由器TTL减1,并返回一个超时的ICMP报文,这样就得到了第一个路由器的地址;接下来发送TTL值为2的报文,得到第二个路由器的报文;到目的主机的时候,并不会返回超时ICMP报文,而是udp发送到一个不可能到达的目的端口,这样就能返回一个“端口不可达”的错误。这样traceroute也就完成了任务。

简单的说traceroute是发送ICMP,包去不用回来,TTL不断累加。Ping命令也是发送ICMP包,有去必须有回包,TTL不变的。



版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载