带选项 -T 的 ping 命令的输出

带选项 -T 的 ping 命令的输出

我正在学习 ping 命令。

因为我无法理解带有 -T tsonly 和 tsandaddr 的 ping 命令的输出。

输出是,

$ ping -T tsonly 192.168.1.52
PING 192.168.1.52 (192.168.1.52) 56(124) bytes of data.
64 bytes from 192.168.1.52: icmp_req=1 ttl=63 time=0.470 ms

 TS:    43448298 absolute
        1
        31
        0
        -31
        0
$ ping -T tsandaddr 192.168.1.52
PING 192.168.1.52 (192.168.1.52) 56(124) bytes of data.
64 bytes from 192.168.1.52: icmp_req=1 ttl=63 time=0.434 ms

TS: 192.168.2.64    43461227 absolute
    192.168.2.10    0
    192.168.1.52    32
    192.168.1.52    0

我在谷歌上被搜索到了。但我没有得到答案。在手册页中我也没有得到答案。

谁能解释一下这两个命令的输出。这两个 ping 命令打印的时间是什么时候?

答案1

来自乒乓人

-T 时间戳选项

设置特殊的 IP 时间戳选项。时间戳选项可以是 tsonly(仅时间戳)、tsandaddr(时间戳和地址)或 tsprespec host1 [host2 [host3 [host4]]](时间戳预先指定的跃点)

IP时间戳选项是一个IP数据包选项字段,用于记录处理数据报(并且支持此选项)的每个设备的时间戳(以世界时间为单位)。RFC781

  • 请求-T tsonly并仅显示 IP 时间戳字段中记录的时间戳,第一个是绝对时间戳,接下来的似乎是增量时间戳:

(来自 RFC:flag = 0 -- 仅时间戳

  • 请求-T tsandaddr并在设备的 IP 地址旁边显示时间戳:

(来自 RFC:flag = 1 -- 每个时间戳前面都有注册实体的互联网 ID

  • -T tsprespec仅针对指定的互联网 IP 地址的请求和显示时间戳:

(来自 RFC:flag = 3——互联网 ID 字段是预先指定的。 IP 模块仅在其自身 ID 与下一个指定的 Internet ID 匹配时才注册其时间戳

答案2

据我了解,-T 选项将时间戳选项添加到 IP 数据包中。这是 rfchttps://www.rfc-editor.org/rfc/rfc781。 TS:绝对是自午夜以来的毫秒数

但我可以理解接下来的数字。我认为这就是你的主机和其他跃点之间的区别。但并不是所有的路由器都会接受这种类型的数据包

如果你自己 ping 一下,比如 127.0.0.1,你会看到零

相关内容