=================================================================================
netcheck v4.4 2026 - Netzwerk-Werkzeugkasten im Browser
(Nachfolger von DDNS Check 2.2)
================================= (o_o) (¬_¬) ( ?_?) ?(°_°)? (??_?) (?_?) =======
WAS IST DAS?
++++++++++++++++++++++++++++++
Eine Webseite (index.html) plus ein kleiner Python-Helfer (netcheck.py).
Der Browser darf selbst nicht pingen oder Netzwerkbefehle ausfuehren,
deshalb erledigt der Helfer das und liefert die Ergebnisse an die Seite.
Kein Node, keine Zusatzpakete, nur Python 3.
SCHNELLSTART (Linux)
++++++++++++++++++++++++++++++
1. Ordner entpacken, z. B. nach ~/netcheck
2. config/device.py oeffnen und eigene Geraete eintragen (Name, IP, Etage)
3. Im Ordner starten: python3 netcheck.py
4. Im Browser oeffnen: http://127.0.0.1:8099/netcheck/
(oder index.html direkt per file:// oeffnen, Helfer muss laufen)
Beenden mit Strg+C. Kein sudo noetig, besser ohne.
DIE BOXEN
++++++++++++++++++++++++++++++
Geraete Ping-Status je Geraet, nach Etage gruppiert, Knopf "Pruefen"
Umschalter: Live = jeder Klick pingt wirklich
Snapshot = zeigt den letzten gespeicherten Stand
Netzwerk Schnittstellen: Typ, Status, Link ja/nein (nein = kein Kabel/
kein Signal), MAC, IP-Adressen, MTU, Tempo
DNS Nameserver, Suchdomaene, Testabfragen mit Antwortzeit
ARP Nachbarn im LAN (IP, MAC, Schnittstelle, Status), Filterfeld
Netstat Ports und Verbindungen, Listener zuerst, Filterfeld
Jede Box: (Neu laden) und - / + (ein-/ausklappen, wird gemerkt)
Kopfzeile: "Alles neu laden" und "Auto 30 s" (eingeklappte Boxen
werden nicht nachgeladen)
SNAPSHOT-BETRIEB (ohne laufenden Server)
++++++++++++++++++++++++++++++
python3 netcheck.py --snap
schreibt data.js, state.json und netcheck.log in die RAM-Ablage
(Linux: /dev/shm/netcheck/). Per Cron zyklisch, z. B. jede Minute:
* * * * * python3 /pfad/zu/netcheck/netcheck.py --snap
Die Seite liest data.js unter file:// ueber den Pfad aus os/<system>/client.js.
PLAIN-SEITE (ohne JavaScript, fuer alte Browser, z. B. AWeb)
++++++++++++++++++++++++++++++
http://<Helfer-Rechner>:8099/netcheck/plain
Fertig vom Server erzeugt, aktualisiert sich alle 30 Sekunden.
ORDNERSTRUKTUR
++++++++++++++++++++++++++++++
index.html Einstieg, erkennt das System per User-Agent
netcheck.py Helfer (Server und --snap)
config/device.py Geraete, Port, RAM-Pfade, DNS-Tests, Optionen
style/css/common.css Aussehen
style/js/common.js Boxen, Umschalter, Nachladen
os/lin|win|mac/ ping.py = Ping-Aufruf des jeweiligen Systems
info.py = Daten fuer Netzwerk/DNS/ARP/Netstat
client.js = Hinweistexte und Snapshot-Pfad
os/mos|ami/ nur client.js (Platzhalter)
EINSTELLUNGEN (config/device.py)
++++++++++++++++++++++++++++++
HOST "127.0.0.1" = nur lokal. "0.0.0.0" = auch im LAN erreichbar
PORT Standard 8099
LOG_LINES Laenge des Verlaufs in netcheck.log (Standard 500)
DEVICES "name": {"ip": "...", "etage": "..."}
DATA_DIRS RAM-Pfad je System, sonst Temp-Ordner
DNS_TESTS Namen fuer die DNS-Testabfragen
INFO_REMOTE False = Netzwerk/ARP/Netstat/DNS nur fuer lokale Clients
SICHERHEIT
++++++++++++++++++++++++++++++
- Der Helfer fuehrt nur feste Befehle aus (Ping auf die Geraeteliste,
Systeminfos), keine Eingaben aus dem Browser als Befehl.
- Ausgeliefert werden nur index.html, style/ und os/*/client.js.
config/ und alle .py-Dateien bleiben unerreichbar.
- Fremde Host-/Origin-Header werden abgelehnt (Schutz vor fremden Webseiten).
- Bei HOST = "0.0.0.0" ist der Helfer im LAN sichtbar. Info-Boxen bleiben
trotzdem lokal, solange INFO_REMOTE = False ist.
STAND DER SYSTEME
++++++++++++++++++++++++++++++
Linux getestet (Geraete, Netzwerk, DNS, ARP, Snapshot, Plain)
Windows Ping-Code vorhanden, Info-Boxen als Rohtext, ungetestet
macOS Ping-Code vorhanden, Info-Boxen als Rohtext, ungetestet
MorphOS Anzeige moeglich, Shell-Script-Helfer folgt
AmigaOS nur Plain-Seite, Shell-Script-Helfer folgt
FEHLERSUCHE
++++++++++++++++++++++++++++++
"Address already in use"
Auf Port 8099 laeuft schon etwas (meist eine alte Instanz):
ss -ltnp | grep 8099 dann kill <PID>
oder in config/device.py einen anderen PORT eintragen.
Seite zeigt "Helfer nicht erreichbar"
python3 netcheck.py starten und Seite neu laden.
Alle Geraete "offline"
IPs in config/device.py pruefen, Geraet im Netz erreichbar?
Netstat leer oder Fehler
Programm "ss" fehlt (Paket iproute2). Prozessnamen sieht man nur
fuer eigene Programme.
Snapshot-Modus: "Kein Snapshot gefunden"
python3 netcheck.py --snap ausfuehren, Pfad in os/<system>/client.js
pruefen.
USB-Stick (FAT/exFAT): Ausfuehrungsrechte fehlen, immer per python3 starten.
FEATURE & AUTOR
++++++++++++++++++++++++++++++
Für die Zukunft werden einige Dinge noch Optional erweitert
1. Wahl der Router Konfiguration "Un-Management Router / Switch" & "Management Router / Switch"
2. zzgl. TCP IP Netzwerk Tools, Programme, Binaeries in Einbindung
gemacht in Übernahme (Eigene Personen Namens Änderung Aufgrund Scheidung)
somit auf den MorphOS Betriebssystem seit 2019 in Test Reihen, Namensänderung DDNS Check auf "NETcheck"
Meldungen an : Alexander, Thomas Niesner | Solbad Strasse 28 | 31812 Bad Pyrmont
Mails + Fehlermeldungen bitte an " sysop@bbs.fpv-de.com "
www.fpv-de.com
Die Software ist Free Ware - Spenden zur Unterstützung sind dennoch immer Willkommen !
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|