Repolode
Svedrin

Svedrin/meshping

Pings many targets at once, graphs response times as histograms, and maps network paths to help spot weak links.

Stars
170
Forks
10
Open issues
22
Last commit
13 days ago

What is it?

Meshping is a self-hosted network monitor that sends ICMP pings to many targets in parallel and keeps the response times as histograms rather than averages. Deploying several instances at different points in a network lets you compare links and see where latency or loss originates.

For each target it runs traceroute, performs Path MTU discovery on every hop, detects routing loops, and looks up AS information for the hops. The collected routes are drawn as an SVG network map, where nodes turn red when an outage is located along the path. Heatmaps of the last few days (configurable via an environment variable) show latency distribution over time.

The project is configured through environment variables, supports IPv6, and can be deployed with Docker. Instances can peer with each other to share target lists, and a /metrics endpoint exposes data for Prometheus.

Key features

  • 01Shows latency distributions as histograms instead of averages.
  • 02Runs traceroute and draws the hops as an SVG network map.
  • 03Performs Path MTU discovery per hop and detects routing loops.
  • 04Displays AS information for hops along each route.
  • 05Exposes metrics for Prometheus and supports IPv6.

Use cases

  • Locating a flaky WAN or WiFi link between sites.
  • Diagnosing intermittent latency or packet loss inside a datacenter.
  • Monitoring multiple targets from several vantage points on a home or office network.

Quick start

  1. 1

    Create a working directory

    mkdir meshping
  2. 2

    Download the docker-compose.yaml file from the repo

    wget https://raw.githubusercontent.com/Svedrin/meshping/master/examples/docker-compose.yaml
  3. 3

    Start meshping with Docker Compose

    docker compose up --detach
  4. 4

    Open the web UI at http://<your-ip>:9922

Things to know

  • Deployment is built around Docker, so you need Docker installed.
  • Raspberry Pi use requires a recent Docker version and libseccomp 2.4.2 or newer.
  • On Windows it needs Docker Desktop with the WSL2 backend.
  • Behind nginx, proxy_http_version 1.1 must be set or the UI is very slow.

In collections

Topics

FAQ

What is meshping?
Pings many targets at once, graphs response times as histograms, and maps network paths to help spot weak links. Meshping is a self-hosted network monitor that sends ICMP pings to many targets in parallel and keeps the response times as histograms rather than averages. Deploying several instances at different points in a network lets you compare links and see where latency or loss originates.
Is meshping free to use? What license does it have?
meshping is open source under the MIT license. Check the license terms before using it in commercial products.
Is meshping still maintained?
Actively maintained. The last commit to meshping was on Oct 25, 2026.
What can I use meshping for?
Locating a flaky WAN or WiFi link between sites. Diagnosing intermittent latency or packet loss inside a datacenter. Monitoring multiple targets from several vantage points on a home or office network.
How do I install meshping?
Create a working directory: mkdir meshping Download the docker-compose.yaml file from the repo: wget https://raw.githubusercontent.com/Svedrin/meshping/master/examples/docker-compose.yaml Start meshping with Docker Compose: docker compose up --detach Open the web UI at http://<your-ip>:9922
Where can I get meshping?
The source code and installation instructions are on GitHub: https://github.com/Svedrin/meshping

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects