Skip to main content

icmp-timestamp

A small toolkit to convert ICMP Timestamp (type 13/14) replies into human‑readable times and to report clock offsets.

This repository contains:

  • timecheck.py — a Python/Scapy-based tool that queries ICMP Timestamp and reports NTP-style offsets.
  • icmp-timestamp.sh — a Bash helper that converts numeric millisecond timestamps to human-readable UTC datetimes.
  • pry_bar.sh — a small driver that uses hping3 to probe hosts, parses RTT/timestamp values, and calls icmp-timestamp.sh.

Prerequisites

  • Python 3.8+ and pip (for timecheck.py).
  • scapy Python package (install via requirements.txt or directly).
  • hping3 for the Bash flow (pry_bar.sh and direct hping3 use).
  • Elevated privileges (root / sudo) are typically required to send/receive raw ICMP packets.

Install system packages (examples):

Debian / Ubuntu (For bash script using hping3)

sudo apt update
sudo apt install -y hping3

macOS (Homebrew)

brew install hping

Python (For Python script using scapy)

python3 -m pip install -r requirements.txt

With Pip

pip install icmp-timestamp

Using the Python tool (timecheck.py)

timecheck.py uses Scapy (AF_PACKET) to send ICMP Timestamp requests. It usually requires sudo.

Examples:

Query hosts from a file (one host per line)

sudo python3 timecheck.py hosts.txt

With a 3 second timeout and verbose per-host timing

sudo python3 timecheck.py hosts.txt --timeout 3 --verbose

Write results to CSV

sudo python3 timecheck.py hosts.txt --csv results.csv

timecheck.py prints a compact table of remote times, offsets vs local clock, RTTs, and a simple assessment.

Pythonversion

Using the Bash flow (hping3 + pry_bar.sh + icmp-timestamp.sh)

icmp-timestamp.sh can be used standalone to convert numeric millisecond timestamps into human-readable times. For example:

icmptimestamp

pry_bar.sh drives hping3, extracts round-trip min/avg/max values, and calls icmp-timestamp.sh which converts numeric millisecond timestamps into human-readable times.

Notes:

  • hping3 requires root privileges — run with sudo.
  • pry_bar.sh parses hping3 output for round-trip min/avg/max. It prints per-target RTTs and forwards them to icmp-timestamp.sh.
  • icmp-timestamp.sh expects numeric millisecond timestamps (or values parsed by pry_bar.sh) via -O (Originate), -R (Receive), -T (Transmit). Example:

Metadata

Release files for icmp-timecheck 1.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for icmp-timecheck 1.1.5
File Size Uploaded
icmp_timecheck-1.1.5.tar.gz 6.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for icmp-timecheck 1.1.5
File Interpreter ABI Platform
icmp_timecheck-1.1.5-py3-none-any.whl Python 3 none any Details

Total release size: 13.3 kB

Release files / icmp_timecheck-1.1.5.tar.gz

Download URL icmp_timecheck-1.1.5.tar.gz
Size 6.5 kB
Tags Source
SHA-256 checksum
How to use checksums
16561674952b81a3a108fbac8306183049f029ff207dc815640150614cbd81af
BLAKE2b-256 checksum
How to use checksums
297d8ea904d2ea521a0245c82d80569af8f52dfdc17c8eed0c4cc36eb295ba24
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.15

Release files / icmp_timecheck-1.1.5-py3-none-any.whl

Download URL icmp_timecheck-1.1.5-py3-none-any.whl
Size 6.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2605009ab9b4ab2949d5af90e974cc4a8040adcf823ca220b75b534830cbe6c1
BLAKE2b-256 checksum
How to use checksums
c9ab3a0d64229c90616391cf3b87208820fde6c4bc1a093e2ca323ceb10c0d80
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.15

Release history Release notifications | RSS feed

This release

1.1.5 This release

2 release files

1.1.4

2 release files

1.1.3

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page