关于ping以及TTL的分析

首先介绍一下ping这个工具

ping [目标]

的意思就是向目标发送几个数据包,之后如果目标接受到一个数据包,那么目标就会向发送ping的主机返回一个数据包


比如上图,我ping了百度的服务器(windows下默认ping 4次)

字节代表数据包的大小,时间顾名思义就是返回时间,TTL这里稍微说一下:

TTL的意思就是数据包的生存时间,当然你得到的这个就是剩余的生存时间。

TTL用来计算数据包在路由器的消耗时间,因为现在绝大多数路由器的消耗时间都小于1s,而时间小于1s就当1s计算,所以数据包没经过一个路由器节点TTL都减一。

那么TTL的值一开始是什么呢?

不同的操作系统默认下TTL是不同的。

默认情况下,Linux系统的TTL值为64或255,Windows NT/2000/XP系统的TTL值为128,Windows 98系统的TTL值为32,UNIX主机的TTL值为255。

在这里不难得到百度服务器返回给我的数据包的TTL值应该为64(一般都是找2^n且离返回值最近的那个值),我得到的时候TTL为47,那么途中则经过了64-47=17个路由器。

在比如,我ping了自己的ip


可以看到我自己给自己发送数据包不需要经过路由器,所以TTL值为64,也就是说我的数据包生存时间默认为64


提到ping就不得不提到另外一个windows下的工具tracert

tracert [目标]

的意思就是得到你的主机到目标主机经过路由器的ip

如图:


tracert的原理就不多阐述了,和ICMP协议有关,利用了数据包的生存期进行路径的取得

在这里我们可以看到达到目标我们经过了15个路由器(不算终点)

注意一下有的值为 请求超时 ,原因是有的路由器是禁止ping的(所以不会返回信息)

另外由于现在网络状况很复杂,你ping不同地址可能得到的路径不同,就像我再一次ping了一下百度:


得到的结果是不是不同了?

这个和不同时间网络状况以及很多因素有关


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ping命令大全 各种cmd命令 Ping是典型的网络工具。Ping能够辨别网络功能的某些状态。这些网络功能的状态是日常网络故障诊断的基础。特别是Ping能够识别连接的二进制状态(也就是是否连通)。但是,这只是能够告知你的网络运行状况的众多行为分析中一个最简单的例子。 假设网络是一个黑匣子,对此你事先一无所知。通过适当地刺激网络和分析网络的反应,正确地应用网络行为分析模型确定这个黑匣子的内部状态。这就使网络工程师和用户不必专门访问网络的组成设备(也就是接口、交换机和路由器)就可以了解一个网络通道。 向网络发送数据包。用网络的正常状态和网络标准作为分析模型。接下来,把可能的网络反应同已知的状态联系起来,就可以识别网络的内部状态,如连通性。 在使用Ping的情况下,这只能使简单的事情更加复杂。向一个IP地址发送一个ICMP Echo数据包,可以得到ICMP(互联网信报控制协议)应答,你就可以确定在网络路径上存在连接。这很简单,但是功能却非常强大,因为它可以指出更有趣的可能性。 当然,网络从来不是理想的。网络对刺激的反应是随时间变化的。一般来说,Ping要重复这个过程不只一次,然后进行统计评估。按照这种做法,Ping大体上可以确定往返时间(RTT)的统计变化以及丢包率(往返时间为无穷大)。根据这个额外的信息,可以稍微多的了解到网络通道中的一些信息,但是了解的并不多。 Traceroute是采用这种方法的另一个工具。利用与中间路径第三层设备有关的已知的行为和IP报头的生存时间(TTL)域,Traceroute能够确定主机与某些目标主机之间的第三层的设备的排列顺序。要完成这个任务,Traceroute不是发送一个数据包,而是发送一系列具有TTL特殊设置的数据包,从1逐步增加到255个,直到达到预定的目标。Traceroute然后能够识别以ICMP TTL到其信息应答的每个第三层接口的IP地址。 Traceroute因此可以提供一个功能,了解两个主机之间IP路由的状态。显然,这样的状态很多,比简单的二进制的连接状态要复杂。 Traceroute需要大量增加网络路径的样本来完成这个任务。
1. Ping命令工作原理: Ping是一种常用的网络诊断工具,它通过向目标IP地址发送ICMP回显请求,来测试网络连接的质量。在发送请求后,Ping会等待目标主机返回ICMP回显响应,然后计算往返时间(RTT)和丢包率等指标,以判断网络连接的稳定性和可靠性。 2. Tracert命令工作原理: Tracert是一种网络路由跟踪工具,它可以显示网络数据包在传输过程中经过的所有路由器,以及每个路由器的IP地址和传输延迟等信息。Tracert的工作原理是通过向目标主机发送一系列的数据包,每个数据包的TTL(Time To Live)值逐渐递增,以模拟数据包在网络中经过多个路由器的情况。当数据包到达某个路由器时,TTL值为0,该路由器会将数据包丢弃,并向源主机发送一个ICMP“超时”消息,Tracert就可以根据这个消息来确定该路由器的IP地址和传输延迟。 3. ARP命令工作原理: ARP(Address Resolution Protocol)是一种用于获取目标主机MAC地址的协议,它可以将目标IP地址映射到对应的MAC地址。ARP的工作原理是,当需要向某个主机发送数据时,首先会检查本地ARP缓存中是否已经保存了该主机的MAC地址。如果缓存中没有对应的MAC地址,就会发送一个ARP请求广播,向网络中所有主机询问该主机的MAC地址。当目标主机收到ARP请求广播后,会向源主机回复一个ARP响应包,包含该主机的MAC地址。源主机收到响应包后,就可以将数据包发送到目标主机的MAC地址了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值