clockdiff(8) -- Linux man page



clockdiff - measure clock difference between hosts  


clockdiff [ -o] [ -o1] destination



clockdiff Measures clock difference between us and destination with 1 msec resolution using ICMP TIMESTAMP [2] packets or, optionally, IP TIMESTAMP option [3] option added to ICMP ECHO. [1]  


Use IP TIMESTAMP with ICMP ECHO instead of ICMP TIMESTAMP messages. It is useful with some destinations, which do not support ICMP TIMESTAMP (f.e. Solaris <2.4).
Slightly different form of -o, namely it uses three-term IP TIMESTAMP with prespecified hop addresses instead of four term one. What flavor works better depends on target host. Particularly, -o is better for Linux.


Some nodes (Cisco) use non-standard timestamps, which is allowed by RFC, but makes timestamps mostly useless.
Some nodes generate messed timestamps (Solaris>2.4), when run xntpd. Seems, its IP stack uses a corrupted clock source, which is synchronized to time-of-day clock periodically and jumps randomly making timestamps mostly useless. Good news is that you can use NTP in this case, which is even better.
clockdiff shows difference in time modulo 24 days.


ping(8), arping(8), tracepath(8).  


[1] ICMP ECHO, RFC0792, page 14.

[2] ICMP TIMESTAMP, RFC0792, page 16.

[3] IP TIMESTAMP option, RFC0791, 3.1, page 16.  


clockdiff was compiled by Alexey Kuznetsov <>. It was based on code borrowed from BSD timed daemon.  


clockdiff requires CAP_NET_RAWIO capability to be executed. It is safe to be used as set-uid root.  


clockdiff is part of iputils package and the latest versions are available in source form for anonymous ftp