Geräte im Heimnetz mit NetAlertX erkennen¶
Veröffentlicht am 7. August 2026 · Geschätzte Lesezeit: 4 Minuten
NetAlertX durchsucht dein lokales Netzwerk, führt eine Geräteliste und erkennt neu hinzugekommene oder verschwundene Geräte. Der Container nutzt dafür unter anderem ARP-Scans direkt im Heimnetz. Für Installation und ersten Scan solltest du etwa 20 Minuten einplanen.
Voraussetzungen
- Ein Linux-Server mit Docker und Docker Compose
- Eine feste private IP-Adresse für den Server
- Name der Netzwerkschnittstelle und Subnetz des Heimnetzes
- SSH-Zugriff und ein Benutzer mit
sudo-Rechten
1. Netzwerkdaten ermitteln¶
Zeige auf dem Server die Netzwerkschnittstellen und IP-Adressen an:
Notiere die aktive Schnittstelle, zum Beispiel eth0 oder enp3s0, und die
private IP des Servers. Ermittle anschließend die Route des Heimnetzes:
Eine typische Zeile lautet 192.168.1.0/24 dev eth0. In diesem Beispiel ist
192.168.1.0/24 das Subnetz und eth0 die Schnittstelle.
2. Datenordner vorbereiten¶
Erstelle auf dem Server einen persistenten Ordner für Konfiguration und Datenbank:
sudo mkdir -p /opt/netalertx/data
sudo chown -R 20211:20211 /opt/netalertx/data
sudo chmod -R u+rwX,go-rwx /opt/netalertx/data
cd /opt/netalertx
20211:20211 ist die von der offiziellen Container-Dokumentation genannte
Standard-ID des NetAlertX-Dienstbenutzers.
3. Compose-Datei erstellen¶
Erstelle /opt/netalertx/compose.yaml. Ersetze <server-ip> durch die private
IP des Servers. Durch das Host-Netzwerk kann NetAlertX Geräte auf Ebene 2 des
lokalen Netzes erkennen.
services:
netalertx:
image: ghcr.io/netalertx/netalertx:latest
container_name: netalertx
restart: unless-stopped
network_mode: host
read_only: true
cap_drop:
- ALL
cap_add:
- NET_ADMIN
- NET_RAW
- NET_BIND_SERVICE
- CHOWN
- SETUID
- SETGID
sysctls:
net.ipv4.conf.all.arp_ignore: 1
net.ipv4.conf.all.arp_announce: 2
environment:
LISTEN_ADDR: "<server-ip>"
PORT: "20211"
GRAPHQL_PORT: "20212"
volumes:
- ./data:/data
- /etc/localtime:/etc/localtime:ro
tmpfs:
- "/tmp:uid=20211,gid=20211,mode=1700,rw,noexec,nosuid,nodev,async,noatime,nodiratime"
logging:
options:
max-size: "10m"
max-file: "3"
Nur im vertrauenswürdigen Netz betreiben
Leite Port 20211 nicht im Router ins Internet weiter. Die Geräteliste enthält sensible Informationen wie IP- und MAC-Adressen. Nutze für Fernzugriff ein VPN oder einen Reverse Proxy mit zusätzlicher Anmeldung.
4. Container starten¶
Starte NetAlertX im Arbeitsordner:
Prüfe den Zustand und die letzten Startmeldungen:
Öffne danach http://<server-ip>:20211 im Browser. Ersetze <server-ip> durch
die private IP aus Schritt 1.
5. Scanbereich festlegen¶
Öffne in NetAlertX Settings und suche nach SCAN_SUBNETS. Trage dein Subnetz
und die Netzwerkschnittstelle in diesem Format ein:
Ersetze <lan-subnet> zum Beispiel durch 192.168.1.0/24 und <interface>
zum Beispiel durch eth0. Speichere die Einstellung. Die standardmäßig
aktivierten Scanner ARPSCAN und INTRNT können damit das lokale Netz prüfen.
Nur eigene Netze scannen
Trage ausschließlich Subnetze ein, die dir gehören oder für deren Prüfung du eine Erlaubnis hast. Ein unnötig großer Bereich verlängert den Scan und kann fremde Systeme erfassen.
6. Ersten Scan prüfen¶
Der erste vollständige Durchlauf kann laut Projektdokumentation fünf bis zehn Minuten dauern. Öffne danach Devices und vergleiche einige Einträge mit der Geräteliste deines Routers.
Markiere bekannte Geräte mit verständlichen Namen und prüfe neue oder unbekannte MAC-Adressen zuerst im Router. Ein unbekannter Eintrag ist nicht automatisch ein Angriff; Smartphones verwenden zum Beispiel häufig private, wechselnde MAC-Adressen.
Benachrichtigungen langsam aufbauen
Richte zuerst nur eine Meldung für neue Geräte ein. Beobachte einige Tage, welche Geräte wegen Energiesparmodus oder privater MAC-Adressen wechseln, bevor du weitere Warnungen aktivierst.
7. Backup und Rückweg¶
Stoppe NetAlertX, damit Konfiguration und SQLite-Datenbank konsistent gesichert werden:
Lege den Backup-Ordner an:
Sichere den gesamten Datenordner und die Compose-Datei:
Starte den Dienst wieder:
Für den Rückweg stoppst du den Container, benennst /opt/netalertx um und
entpackst das gewünschte Archiv wieder unter /opt. Besonders wichtig sind
data/db/app.db, data/config/app.conf und data/config/workflows.json.
8. Aktualisieren und Fehler finden¶
Erstelle vor einem Update ein Backup. Aktualisiere danach das stabile Image:
Prüfe bei Fehlern die Protokolle:
- Keine Geräte gefunden: Subnetz, Schreibweise und Schnittstellenname in
SCAN_SUBNETSprüfen. - Weboberfläche nicht erreichbar:
LISTEN_ADDRmuss exakt der privaten Server-IP entsprechen; außerdem Port 20211 in der lokalen Firewall prüfen. - Berechtigungsfehler unter
/data: Eigentümer des Ordners mitsudo chown -R 20211:20211 /opt/netalertx/datakorrigieren. - Container startet wegen
sysctlsnicht: Die Laufzeit erlaubt die beiden Einstellungen möglicherweise nicht. Entferne densysctls-Block und setze die Werte nach offizieller Anleitung auf dem Linux-Host.
9. Quellen und Video¶
- Offizielle Docker-Anleitung von NetAlertX
- Offizielle aktuelle Compose-Vorlage
- Offizielle Anleitung für Backups
- Video: NetAlertX unter Debian mit Docker einrichten
Fertig¶
NetAlertX führt nun eine dauerhaft gespeicherte Geräteliste für dein Heimnetz. Vergleiche zur Funktionsprüfung die gefundenen Geräte mit deinem Router und verbinde anschließend testweise ein eigenes WLAN-Gerät neu. Nach dem nächsten Scan sollte es als online oder neu erkannt erscheinen.