Skip to main content

ping-multi-ext

This tool lets you interactively ping:

  • One host from multiple locations (via SSH)

  • Multiple hosts from one location (local machine, or remote via SSH)

  • Multiple hosts from multiple locations (via SSH)

Screenshots

The main screen:

https://raw.githubusercontent.com/famzah/ping-multi-ext/main/screenshots/main-screen.jpg

Full history of the “ping” raw output for a selected host:

https://raw.githubusercontent.com/famzah/ping-multi-ext/main/screenshots/full-history-ping-output.jpg

Description

The ping results are summarized in real-time and you can also observe the following statistics:

  • TX_cnt: Count of sent PING requests

  • RX_cnt: Count of received PING replies which are not timeouts

  • XX_cnt: Count of timeouts and missing PING replies

  • Loss%: Packet loss defined as the percentage of timed out and missing replies

  • Avg: Average round trip time (RTT)

  • Min: Minimum (best) RTT

  • Max: Maximum (worst) RTT

  • StDev: Population standard deviation of all RTT data

The interactive UI interface lets you visualize the RTT summary in three modes:

  • Successful vs. unsuccessful PING replies

  • The RTT values (ping time) as a number

  • Scaled per 100 ms where “0” means an RTT between 0 and 99 ms, “1” means an RTT between 100 and 199 ms, and so on

You also have the option to review each host’s “ping” command raw output. The full history is kept and you can navigate using the keys PgUp/PgDn/Home/End.

No “root” privileges are required because for each host an external process is started which uses the standard “ping” command.

You can select the statistics forwards and backwards using the lower “s” and upper “S” keys, similar to the “Vim” behavior.

Installation

pip3 install ping-multi-ext

The executable “ping-multi” is automatically added to your “~/.local/bin” directory which you should add to your “$PATH” environment, so that you can easily execute “ping-multi”.

If you install the package globally using “root” privileges, then the binaries are added in “/usr/local/bin” and you should be able to use them right away with no additional setup.

Examples

Ping multiple hosts specified directly on the command-line; you can also provide just one host:

ping-multi google.com github.com

You can also use SSH to run “ping” on remote machines:

ping-multi google.com github.com github.com@root@my-server.com

Ping multiple hosts specified in a file; you can also add more single hosts directly as additional command-line arguments:

ping-multi -f sample.list

IPv4 CIDR masks are supported:

ping-multi 192.168.0.0/30

The usage help explains the additional command-line options:

$ ping-multi -h

usage: ping-multi [-h] [--version] [--hosts-max-width HOSTS_MAX_WIDTH] [-s {Last,Loss%,Avg,Min,Max,StDev,RX_cnt,TX_cnt,XX_cnt}] [-f FILE] [-W SECS] [-i SECS] [-L COUNT_LIMIT] [-C]
                [host ...]

Ping all hosts from FILE and HOSTs.

positional arguments:
  host                  host to ping; you can specify this option many times

options:
  -h, --help            show this help message and exit
  --version             show program's version number and exit
  --hosts-max-width HOSTS_MAX_WIDTH
                        maximum width of the hosts column; default=0
  -s {Last,Loss%,Avg,Min,Max,StDev,RX_cnt,TX_cnt,XX_cnt}, --stat {Last,Loss%,Avg,Min,Max,StDev,RX_cnt,TX_cnt,XX_cnt}
                        statistic to display initially; default=Last
  -f FILE, --file FILE  read list of hosts from file
  -W SECS, --wait SECS  timeout in seconds to wait for a ping reply; default=1
  -i SECS, --interval SECS
                        time in seconds between sending each request; default=1
  -L COUNT_LIMIT, --count-limit COUNT_LIMIT
                        limit the number of hosts; avoids unintended bulk actions; default=600
  -C, --comments-as-sep
                        display comments as separators. Ignore comments starting with ##

Metadata

Release files for ping-multi-ext 1.3.1

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

Source distribution (sdist)

Source distribution for ping-multi-ext 1.3.1
File Size Uploaded Provenance
ping_multi_ext-1.3.1.tar.gz 17.1 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for ping-multi-ext 1.3.1
File Interpreter ABI Platform
ping_multi_ext-1.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 33.4 kB

Release files / ping_multi_ext-1.3.1.tar.gz

Download URL ping_multi_ext-1.3.1.tar.gz
Size 17.1 kB
Tags Source
SHA-256 checksum
How to use checksums
f85ce67efe0b9f6a8ef337b09b21a38aa9eefd4b9f40b50f8f1a090d56751f87
BLAKE2b-256 checksum
How to use checksums
d52aa7a2bd133c3dffbe03f0bd43725e5c0b5405d72578f6e3e3816d383fbbb8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.12

Release files / ping_multi_ext-1.3.1-py3-none-any.whl

Download URL ping_multi_ext-1.3.1-py3-none-any.whl
Size 16.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
857cdf56beaef4b47cf10dff51cbd76d118b67df41a6c0efd673e5108b08488e
BLAKE2b-256 checksum
How to use checksums
28f83b854162aa0288f61802c5faf3114d4734d00e8fa2fec6337303891dd4a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.12

Security for ping-multi-ext 1.3.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

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