tcping

Crates.iotcping
lib.rstcping
version1.2.19
created_at2024-01-14 04:43:33.495953+00
updated_at2025-09-19 14:25:02.042161+00
descriptionπŸ› οΈ tcping-rs: Rust (rs) TCP Ping (tcping) Utility for Port Reachability.
homepagehttps://github.com/lvillis/tcping-rs
repositoryhttps://github.com/lvillis/tcping-rs
max_upload_size
id1099188
size55,640
(lvillis)

documentation

https://github.com/lvillis/tcping-rs/blob/main/README.md

README

πŸ‡ΊπŸ‡Έ English Β· πŸ‡¨πŸ‡³ δΈ­ζ–‡ Β Β Β Β Β Β |Β Β Β Β Β  Table of Contents ↗️

tcping-rs

πŸ› οΈ tcping-rs: Rust (rs) TCP Ping (tcping) Utility for Port Reachability.

Crates.ioΒ  Repo SizeΒ  CIΒ  Docker PullsΒ  Image SizeΒ  Say Thanks


✨ Features

Feature Description
Pure Rust No runtime dependencies, produces a tiny static binary
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 / CSV via -o, ideal for scripts & monitoring
Jitter stats -j flag shows latency variance (p95)
Docker image Multi-arch (amd64 / arm64) for pipelines or Kubernetes Jobs

Usage

tcping <host:port> [-c count] [-t] [-e] [-j] [-o mode]

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 calculates and displays jitter
  • -o mode sets the output mode (normal, json, csv)
  • -h displays help
  • -V displays version

Example

$ tcping github.com:443

Resolved address in 0.9340 ms
Probing 140.82.113.4:443/tcp - Port is open - time=12.7510ms
Probing 140.82.113.4:443/tcp - Port is open - time=12.4270ms
Probing 140.82.113.4:443/tcp - Port is open - time=11.4410ms
Probing 140.82.113.4:443/tcp - Port is open - time=12.7510ms

--- 140.82.113.4:443 tcping statistics ---
4 probes sent, 4 successful, 0.00% packet loss
Round-trip min/avg/max = 11.4410ms/12.3425ms/12.7510ms
Address resolved in 0.9340 ms

Installation

Download from Releases

Download the precompiled binaries from the Releases Page.

  • Navigate to the Releases section.
  • Download the appropriate binary for your operating system.
  • Extract the executable and place it in a directory included in your PATH.

Using Docker

Run tcping-rs using the Docker image:

docker run --rm docker.io/lvillis/tcping:latest <host:port> [options]

Using Nix

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

About

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.

Commit count: 349

cargo fmt