首页 > 编程知识 正文

ping wwwbaiducom 中的 TTL值 及其他参数的理解

时间:2023-05-04 16:59:04 阅读:217225 作者:2064

TTL含义

"TTL"是生存时间(Time To Live)指定数据包被路由器丢弃之前允许通过的网段数量,作用:放环 防止数据包在网络中不停的循环。
TTL 是由发送主机设置的,以防止数据包不断在 IP 互联网络上永不终止地循环。转发 IP 数据包时,要求路由器至少将 TTL 减小 1。
  使用PING时涉及到的 ICMP 报文类型
  一个为ICMR请求包(ICMP Echo Request)
  一个为ICMP应答包(ICMP Echo Reply)
  TTL 字段值可以帮助我们识别操作系统类型。不同的操作系统默认下TTL是不同的。默认情况下
  UNIX 及类 UNIX 操作系统 ICMP 回复的应答包的 TTL 字段值为 255
  微软 Windows NT/2K操作系统 ICMP 回复的应答包的 TTL 字段值为 128
  Compaq Tru64 5.0 ICMP 回复的应答包的 TTL 字段值为 64
  LINUX Kernel 2.2.x & 2.4.x ICMP 回复的应答包的 TTL 字段值为 64
  微软 Windows 95 操作系统 ICMP 回复的应答包的 TTL 字段值为 32
  但有些情况下有所特殊,这里不一一列举
下面我们看一下Ping命令的数据,如图:

上图看到Ping百度服务器返回的数据包的TTL值为54
下面我们跟踪一下 www.baidu.com 这个网址

可以看出有11跳,意思途中经过了11个路由器,经过路由器个数= 2a -TTL最终值(其中 2a必须大于等于TTL最终值且最后计算出的路由器个数小于等于TTL最终值)。54那么这里也讲一下tracert这条命令
tracert (trace router)跟踪路由,显示从本机到达目的主机所 经过的路由的IP地址情况
54+11-1(最后一跳为到达百度路由器的)=64 看出TTL为64,那么如果对方没修改过TTL值,则对方系统为Compaq Tru64 5.0或LINUX Kernel 2.2.x & 2.4.x 如果你是黑客也许可以试着攻击哦,哈哈哈 但建议不要,咱们是好人。。。(ping拒绝服务攻击ping -l 65535 -t 192.168.1.123 (把一次发送的数据包改成大于或等于65535,让被攻击者192.168.1.123可能Down机)及防护(1.安装防火墙 2.在电脑上找到internet协议把IGMP进行筛选掉 3.修改TTL,让其判断错误的操作系统))
再比如,我Ping自己的ip,结果如下图:可以看到TTL为128,我们知道自己ping自己是不需要经过路由器的 根据TTL值也能判断出为Windows操作系统


ping 百度服务器(windows 下默认ping4次)

字节代表数据包的大小,时间time就是响应时间,这个时间越小说明你连接这个地址的速度越快,“TTL”的意思就是数据包的生存时间,当然你得到的这个就是剩余的生存时间。TTL用来计算数据包在路由器的消耗时间,因为现在绝大多数路由器的消耗时间都小于1s,而时间小于1s就当1s计算,所以数据包没经过一个路由器节点TTL都减一。如图

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。