我正在学习该ping
命令。
我无法理解带有and的ping
命令的输出。-T tsonly
-T tsandaddr
输出是:
$ 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
我用谷歌搜索。但我没有找到答案。在手册页中我也没有找到答案。
我知道它打印的绝对时间是 24 小时午夜时间戳的毫秒数。
除此之外,剩下的三个时间都是几点?为什么这两个ping
输出都打印出来?那有什么用呢?
答案1
-T 选项要求节点(每跳)在收到 ping 后在 IP 数据包中插入时间戳。它通过使用 IP 数据包的 TS 选项来工作,由RFC791。
ping -T 需要 tsonly、tsandaddr 或 tsprespec 之一参数。 tsonly 仅返回时间戳。 tsandaddr 返回时间戳和发送数据包的地址。
从手册页:
-T timestamp option
Set special IP timestamp options. timestamp option may be
either tsonly (only timestamps), tsandaddr (timestamps and
addresses) or tsprespec host1 [host2 [host3 [host4]]] (timestamp
prespecified hops).
例如,当我从 192.168.1.191 在本地网络上 ping 192.168.1.10 时,我收到以下输出:
ping -T tsandaddr 192.168.1.10
PING 192.168.1.10 (192.168.1.10) 56(124) bytes of data.
64 bytes from 192.168.1.10: icmp_seq=1 ttl=64 time=4.32 ms
TS: 192.168.1.191 31636378 absolute
192.168.1.10 6
192.168.1.10 0
192.168.1.191 -1
更新01
当您发出 tsandaddr 标志时,会返回四个时间值。在下面的示例中,我们看到 31636378 绝对值、6、0 和 -1。
ping -T tsandaddr 192.168.1.10
PING 192.168.1.10 (192.168.1.10) 56(124) bytes of data.
64 bytes from 192.168.1.10: icmp_seq=1 ttl=64 time=4.32 ms
TS: 192.168.1.191 31636378 absolute
192.168.1.10 6
192.168.1.10 0
192.168.1.191 -1
大值 (31636378) 是自 UTC 午夜以来的毫秒数,这就是使用 -T 标志时第一个数字继续向上计数的原因。这个大数字是一个参考时间。
第一个值 (6) 是传输 ping 所需的时间(以毫秒为单位)。第二个值 (0) 是目标接收 ping 所需的时间(以毫秒为单位)。第三个值 (-1) 是向发送者传输回复所花费的时间。
我相信 0 和 -1 毫秒值表明我 ping 的目标没有响应,因此我得到了无用的值。
请随意在一些网站上测试此命令,一些网站会回复合法值。
--timestamp 发送ICMP_TIMESTAMP数据包,从而请求目标主机的定时响应。
在成功的情况下,会返回三个时间值。所有内容均应注明自 UTC 午夜以来的毫秒数。其中第一个“icmp_otime”包含发送请求的原始时间。然后是“icmp_rtime”,即目标接收的时间,最后是“icmp_ttime”,即向发起者发送应答的时间。
请参阅此处的--timestamp:https://www.gnu.org/software/inetutils/manual/html_node/Ping-options.html