| Crates.io | tcping |
| lib.rs | tcping |
| version | 1.2.24 |
| created_at | 2024-01-14 04:43:33.495953+00 |
| updated_at | 2025-12-12 16:33:44.991729+00 |
| description | π οΈ tcping-rs: Rust (rs) TCP Ping (tcping) Utility for Port Reachability. |
| homepage | https://github.com/lvillis/tcping-rs |
| repository | https://github.com/lvillis/tcping-rs |
| max_upload_size | |
| id | 1099188 |
| size | 61,595 |
πΊπΈ English Β· π¨π³ δΈζ Β Β Β Β Β Β |Β Β Β Β Β Table of Contents βοΈ
tcping-rsπ οΈ tcping-rs: Rust (rs) TCP Ping (tcping) Utility for Port Reachability.
| Feature | Description |
|---|---|
| Pure Rust | Single binary with no external runtime dependencies |
| ICMP-free | Works where traditional ping is blocked; relies solely on TCP handshake |
| Cross-platform | Linux, macOS, Windows, *BSD, and any Tier-1 Rust target |
| Continuous / Burst modes | -t for continuous, -c for specific count, plus -e early exit |
| Machine-readable output | JSON (NDJSON) / CSV / Markdown via -o, ideal for scripts & monitoring |
| Jitter stats | -j prints per-probe jitter and a p95 summary |
| Docker image | Multi-arch (amd64 / arm64) for pipelines or Kubernetes Jobs |
tcping <host:port> [-c count] [-t] [-e] [-j] [-o mode] [--timeout-ms ms]
Where:
host:port is the host and port to ping-c count specifies the number of times to ping the host (default: 4)-t enables continuous pinging-e exits immediately after a successful probe-j enables jitter output (per-probe + p95 in summary)-o mode sets the output mode (normal, json, csv, md, color)--timeout-ms sets per-probe timeout in milliseconds (default: 2000)-h displays help-V displays version$ tcping github.com:443
Resolved github.com -> 140.82.113.4 (DNS system default) in 0.9340 ms
Probing 140.82.113.4:443/tcp - open - 12.7510 ms
Probing 140.82.113.4:443/tcp - open - 12.4270 ms
Probing 140.82.113.4:443/tcp - open - 11.4410 ms
Probing 140.82.113.4:443/tcp - open - 12.7510 ms
--- 140.82.113.4:443 tcping statistics ---
4 probes sent, 4 successful, 0.00% packet loss
Round-trip min/avg/max = 11.4410/12.3425/12.7510 ms
Address resolved in 0.9340 ms
-o json: NDJSON (one JSON object per line) with schema=tcping.v1 and record=probe|summary-o csv: single CSV stream with a header row, with schema=tcping.v1 and record=probe|summaryDownload the precompiled binaries from the Releases Page.
Run tcping-rs using the Docker image:
docker run --rm docker.io/lvillis/tcping:latest <host:port> [options]
tcping-rs is available in nixpkgs. To install it system wide:
environment.systemPackages = [
pkgs.tcping-rs
];
Or spawn in a nix-shell:
nix-shell -p tcping-rs
This tool allows you to measure the latency to a server using TCP. It is built with Rust and uses the clap library for command line argument parsing, plus Tokio for the async loop and timers.