NetProbe

NetProbe

Application Docker from bmartino1's Repository

Vue d'ensemble

Netprobe 2.0 – Internet Quality Dashboard

Netprobe 2.0 is a lightweight, container-friendly network probe and web UI for home/lab internet monitoring.

It periodically:

Pings your gateway, router, and a list of “anchor” sites.
Measures packet loss, latency, and jitter.
Measures DNS lookup latency per DNS server.
Runs scheduled and manual Speedtest.net tests.
Stores everything in SQLite and renders a dark-mode dashboard with Chart.js.
The goal is a simple “drop in and forget it” quality monitor that you can run on Unraid, Proxmox, Docker, etc.

Additional variables can be found here: https://github.com/bmartino1/NetProbe_Python

Optional data:
ALL are OPTIONAL! Defaults/fallbacks to SQLite.

Optional: if ping needs extra caps in your environment

--cap-add=NET_RAW --cap-add=NET_ADMIN --cap-add=SYS_ADMIN

Use standalone Postgres for backend storage docker variables...

(May be hidden in template)
USE_POSTGRES: ${USE_POSTGRES:-true}
DB_ENGINE: ${DB_ENGINE:-postgres}

Postgres connection details (match the Postgres service above via env file...)

POSTGRES_HOST: ${POSTGRES_HOST:-postgres}
POSTGRES_PORT: ${POSTGRES_PORT:-5432}
POSTGRES_DB: ${POSTGRES_DB:-netprobe}
POSTGRES_USER: ${POSTGRES_USER:-netprobe}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-netprobe}

Exigences

ALL are OPTIONAL! Defaults/fallbacks to SQLite

# Optional: if ping needs extra caps in your environment
--cap-add=NET_RAW --cap-add=NET_ADMIN --cap-add=SYS_ADMIN


# Use standalone Postgres for backend storage docker variables...

USE_POSTGRES: ${USE_POSTGRES:-true}
DB_ENGINE: ${DB_ENGINE:-postgres}
    
# Postgres connection details (match the Postgres service above via env file...)

POSTGRES_HOST: ${POSTGRES_HOST:-postgres}
POSTGRES_PORT: ${POSTGRES_PORT:-5432}
POSTGRES_DB: ${POSTGRES_DB:-netprobe}
POSTGRES_USER: ${POSTGRES_USER:-netprobe}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-netprobe}

Arguments d'exécution

Interface utilisateur Web
http://[IP]:[PORT:8080]
Réseau
bridge
Coquille
bash
Privilégié
false

Configuration du modèle

DockerNatPortPorttcp
Cible
8080
Défaut
8080
Valeur
8080
Database pathPathrw

Container /data location for SQLite file that holds long-term data. Container path can be changed if DB_PATH variable is assigned. DB_PATH defaults to /data/netprobe.sqlite

Cible
/data/
Défaut
/mnt/user/appdata/netprobe_database
Valeur
/mnt/user/appdata/netprobe_database
PROBE_INTERVALVariable

Seconds between script probe runs. (Countdown in web page.) This runs the pings, DNS lookups, and others to collect data...

Défaut
30
Valeur
30
PING_COUNTVariable

ICMP packets per target per probe.

Défaut
20
Valeur
4
APP_TIMEZONEVariable

Time zone, e.g. America/Chicago

Défaut
UTC
Valeur
UTC
SITESVariable

Comma-separated ping targets.

Défaut
fast.com,google.com,youtube.com
Valeur
fast.com,google.com,youtube.com
ROUTER_IPVariable

Optional LAN router IP. Your router/gateway IP address to help with pings. Can leave blank (to leave blank, delete this variable).

Défaut
192.168.1.1
Valeur
192.168.1.1
DNS_TEST_SITEVariable

Domain for DNS latency tests.

Défaut
google.com
Valeur
google.com
DNS_NAMESERVER_4Variable

Web UI display name

Défaut
My_DNS_Server
Valeur
My_DNS_Server
DNS_NAMESERVER_4_IPVariable

DNS IPs to probe. Do you run a custom DNS server? Set this to that IP.

Défaut
192.168.1.1
Valeur
192.168.1.1
SPEEDTEST_ENABLEDVariable

Enable periodic speed tests at SPEEDTEST_INTERVAL in seconds.

Défaut
True
Valeur
True
SPEEDTEST_INTERVALVariable

14400 seconds = 4 hours. Seconds between automatic speed tests.

Défaut
14400
Valeur
14400
DNS_NAMESERVER_1Variable

Google_DNS

Défaut
Google_DNS
Valeur
Google_DNS
DNS_NAMESERVER_1_IPVariable

Google_DNS 8.8.8.8

Défaut
8.8.8.8
Valeur
8.8.8.8
DNS_NAMESERVER_2Variable

Quad9_DNS

Défaut
Quad9_DNS
Valeur
Quad9_DNS
DNS_NAMESERVER_2_IPVariable

Quad9_DNS 9.9.9.9

Défaut
9.9.9.9
Valeur
9.9.9.9
DNS_NAMESERVER_3Variable

CloudFlare_DNS

Défaut
CloudFlare_DNS
Valeur
CloudFlare_DNS
DNS_NAMESERVER_3_IPVariable

CloudFlare_DNS 1.1.1.1

Défaut
1.1.1.1
Valeur
1.1.1.1
USE_POSTGRESVariable

Requires DB_ENGINE set to postgres Use a standalone Postgres and set the required Postgres Docker variables manually.

Défaut
true
Valeur
false
DB_ENGINEVariable

Choose database backend. If using Postgres, set USE_POSTGRES to true as well.

Défaut
postgres
Valeur
sqlite
WEIGHT_LOSSVariable

Weight of packet loss in score (0–1, sum = 1).

Défaut
-0.6
Valeur
-0.6
WEIGHT_LATENCYVariable

Weight of latency.

Défaut
0.15
Valeur
0.15
WEIGHT_JITTERVariable

Weight of jitter.

Défaut
0.2
Valeur
0.2
WEIGHT_DNS_LATENCYVariable

Weight of DNS latency.

Défaut
0.05
Valeur
0.05
THRESHOLD_LOSSVariable

Loss % considered “max bad” for scoring.

Défaut
5
Valeur
5
THRESHOLD_LATENCYVariable

Latency ms considered “max bad”.

Défaut
100
Valeur
100
THRESHOLD_JITTERVariable

Jitter ms considered “max bad”.

Défaut
30
Valeur
30
THRESHOLD_DNS_LATENCYVariable

DNS ms considered “max bad”.

Défaut
100
Valeur
100
WEB_PORTVariable

This sets the Python web server port. If edited, update Docker NAT ports and WebUI URL.

Défaut
8080
Valeur
8080
TailScale Fallback State DirectoryVariable{3}

Fallback container directory for Tailscale state information - Added by Community Applications

Cible
CA_TS_FALLBACK_DIR
Défaut
/data/
Valeur
/data/

Télécharger les statistiques

3,666
Total des téléchargements

Détails

Référentiel
bmmbmm01/netprobe:latest
Dernière mise à jour2026-04-08
Première vue2025-12-01

Exécutez NetProbe sur Unraid.

NetProbe est listé dans Community Apps pour Unraid OS. Explorez Unraid pour créer un serveur domestique flexible, un NAS ou un laboratoire domestique.