RKIK - Rusty Klock Inspection Kit
Most systems rely on a daemon (like chronyd or ntpd) to synchronize time. But what if you just want to inspect the current offset between your system clock and one or more NTP servers - without root, without installing anything heavy and in a simple CLI command ?
RKIK is a Rust-based CLI tool designed for stateless and passive NTP inspection, just as dig or ping are for DNS and ICMP.
Link to Documentation page
Features
- Query any NTP server (IPv4 or IPv6)
- Compare offsets between X servers
- Output formats: human-readable or JSON - both shortable (
-S) - Verbose mode for advanced metadata
- Accepts both FQDN and raw IPv4/6 addresses
- Continuous diag with either infinite or static count
- Port specification
Installation
Linux
# Download rkik-linux-x86_64.tar.gz on https://github.com/aguacero7/rkik/releases/latest
Red-hat Like Systems (CentOS, Fedora, RHEL, Alma,..)
# Download rkik-<X.Y.Z-R>.x86_64.rpm on https://github.com/aguacero7/rkik/releases/latest
# OR
# OR
Debian-like Systems
# Download rkik-<X.Y.Z-R>.x86_64.deb on https://github.com/aguacero7/rkik/releases/latest
Cargo
From Source :
Compile sync feature
To enable rkik to apply queried time to your system, you must include sync feature to rkik's compilation
Usage Examples
| Command | Description |
|---|---|
rkik -V |
Display rkik installed version |
rkik pool.ntp.org |
Query an NTP server (positional) |
rkik pool.ntp.org -6 |
Query an NTP server using IPv6 (positional) |
rkik pool.ntp.org:123 |
Same as above, explicit specification of a port |
rkik --server time.google.com -v |
Verbose query output |
rkik --server time.cloudflare.com -jp |
JSON output for a single server |
rkik --compare pool.ntp.org time.google.com |
Compare two servers |
rkik time.google.com -8 -j |
Continuously query a server and display a raw json output (useful for monitoring scripts) |
rkik es.pool.ntp.org -S |
Query a server and display a short minimalist output |
rkik -C ntp1 ntp2 -c 2 -i 0.1 --nocolor |
Compare 2 servers twice with an interval of 100ms and display a nocolor output |
rkik -S time.google.com --sync |
Query a server and apply returned time to system (sync feature -> requires root or specific permissions)) |
Output Examples
Human-readable:
Server: time.google.com
IP: 216.239.35.4:123
UTC Time: Wed, 3 Sep 2025 09:44:43 +0000
Local Time: 2025-09-03 11:44:43
Clock Offset: -6776478.958 ms
Round Trip Delay: 33.192 ms
JSON:
Arguments supported
)
)
)
Example Use case
Sometimes, the monitoring system shows up with a ntp error on a server.
You don't know if the problem comes from this server or its reference.
Then you try rkik ntp.server.local -v
At this moment, we can assure there is an offset between our system and the distant server, we can also know which is the reference of that server.
We will chick whether this reference has an offset with us or not with rkik 145.238.80.80
It does, we now can assure the problem is external to our server, we may now connect on the system to change its reference with another server.