说明:忘了从哪里看的原文了。 但是,我应该进行了大钧的删除。
ping用类型代码为0的ICMP发送请求,接收到请求的主机用类型代码为8的ICMP进行响应。
ping程序计算间隔时间,计算收到了多少个数据包。 用户可以判断网络的大致情况。
traceroute收到目标主机的IP后,首先向目标主机发送TTL=1的UDP数据包,经过的第一个路由器在收到该数据包后,自动减少TTL=1,TTL为0后,路由器丢弃该数据包主机接收到该数据报后,向目的地主机发送另一个TTL=2的UDP数据报,然后刺激第二个路由器向主机发送ICMP数据报。 像这样往返于到达目的地主机。 现在,traceroute已获得所有路由器ip。 这样,能够避免在ip报头中只记录有限路由的ip的问题。
如何判断UDP包到达主机 ?
TCP和UDP协议都有端口号定义,但常规网络程序只监视少数编号较小的端口,例如80个,例如23个。 相反,由于跟踪程序正在发送端口号为30000 (真变态)的UDP报告,因此到达目标主机时,目标主机只能向主机发送无法到达一个端口的ICMP数据报告。 主机收到这个报告后,才知道主机到了。 所以,说Traceroute是骗子也不过分。
转载于:https://www.cn blogs.com/tiantian das/p/ping _ traceroute.html