Ping程序

作用:测试本机是否可达另一个主机。

原理:向某个主机发送ICMP回送请求,若该主机接收到该报文,则会返回ICMP回送应答。

Ping指令功能:

1、测量RTT(默认显示),原理:Ping会在ICMP回送请求中的数据部分记录发送时间,当接收到回送应答时,会从中提取发送时间,并用现在的时间减去发送时间。

2、IP路由记录

3、时间戳

Ping程序直接工作在内核,不是用户进程。

ICMP回送报文结构:


各字段就不解释了,之前的博客中已经有了,在Unix中,标识符的值设置为发送进程的进程ID,若一台主机上同时运行多个Ping进程,则可通过标识符确定应答属于哪个进程,序列号从0开始,每发送一个ICMP回送请求就加1,Unix上的Ping程序会答应应答包的序列号,因此我们可以看到是否有报文遗失、乱序、重复。

路由记录

格式:windows:ping -r +记录数(1到9) IP地址

当ping指定了路由记录后,会在含有ICMP回送报文的IP报文的头部设置RR选项,每个转发该报文的路由器都会将发送接口的IP地址记录到列表中。

由于IP选项部分最大占用40个字节,除去选项头部的三个字节,只有37个字节可以记录IP地址,最多可记录9个IP地址。

选项部分的结构如下:


上面数字的单位为字节。

code:表明IP选项的类型,7表示RR(Route Record)。

len:选项部分占用的字节数,该例为37。

ptr:指定下一个IP地址应该从哪里开始记录,把路由记录表想象成下标从1开始的字节数组,这个字段的值只能为4、8、12、16、20、24、28、32、36,当该值为40时,表示路由记录表已经满了。

时间戳


code:0x44表示时间戳。

len与ptr与路由记录选项一致。

OF表示溢出字段,当时间戳区域满时,则开始增加OF字段的值。

flag区域:



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值