# DuckDNS & DNS Monitor Setup **Erstellt am:** 05.01.2026 **Zuletzt aktualisiert:** 06.01.2026 **Status:** Aktiv **Architektur:** Sidecar-Pattern Dieses Dokument beschreibt die Docker-basierte Lösung zur DynDNS-Aktualisierung und Überwachung sowie die kritischen Netzwerkeinstellungen auf der Synology Diskstation und der FritzBox. ## Problembeschreibung Das System litt unter massiven DNS-Problemen: 1. **"IP Flapping":** Die IP sprang ständig zwischen der aktuellen (`.252`) und der gestrigen (`.49`). Ursache war **aggressives Caching** der alten IP durch Google DNS (`8.8.8.8`) und falsche DNS-Einstellungen in der Synology, die diesen Cache abfragten. 2. **Interne Unerreichbarkeit:** Dienste waren im LAN nicht erreichbar (NAT Loopback Problem). 3. **Synology DNS-Chaos:** Die Synology nutzte veraltete DNS-Server (`8.8.8.8`) fest in der Netzwerkschnittstelle. ## Lösung Wir haben eine robuste **Zwei-Container-Lösung** implementiert und das gesamte Netzwerk-Environment gehärtet. ### 1. Docker Services (`docker-compose.yml`) * **Updater (`duckdns`):** Aktualisiert zuverlässig die IP bei DuckDNS. Wir nutzen einen **neuen Token**, um alle alten Updater auszusperren. * **Monitor (`dns-monitor`):** Überwacht alle 5 Minuten die DNS-Auflösung via Cloudflare (`1.1.1.1`). ## Kritische Peripherie-Konfiguration (MUSS GEPRÜFT WERDEN!) ### 1. Synology DSM Netzwerkeinstellungen (Die "versteckte Falle") Die Synology kann DNS-Server an zwei Orten haben. Die Schnittstellen-Einstellung überschreibt die allgemeine Einstellung! * **Ort 1 (Allgemein):** Systemsteuerung -> Netzwerk -> Allgemein -> "DNS-Server manuell konfigurieren". * **Ort 2 (Schnittstelle - WICHTIG):** Systemsteuerung -> Netzwerk -> Netzwerk-Schnittstelle -> LAN 1 -> Bearbeiten -> IPv4. * **Fehler:** Hier war manuell `8.8.8.8` eingetragen. * **Korrektur:** Auf "Automatisch abrufen" oder manuell auf `1.1.1.1` (Cloudflare) stellen. ### 2. FritzBox (Router) * **DNS-Server:** Internet -> Zugangsdaten -> DNS-Server auf Cloudflare (`1.1.1.1`, `1.0.0.1`) stellen. * **DNS-Rebind-Schutz:** Heimnetz -> Netzwerk -> Netzwerkeinstellungen -> "DNS-Rebind-Schutz". Alle Subdomains eintragen (`floke.duckdns.org` etc.). ### 3. Hardware / DSL-Leitung (Physische Ursache für Timeouts) Die FritzBox-Logs zeigen wiederkehrende DSL-Sync-Probleme und den Fehler: > *"An der DSL-Leitung wurde eine Beeinträchtigung des Signals durch eine unzulässige Verkabelung erkannt. [...] Die Abzweigung ist 17 Meter lang."* Dies deutet auf eine **Stichleitung/Parallelschaltung** in der Hausverkabelung hin. Dies verursacht Signalreflexionen, Paketverluste und Timeouts (`NETWORK_WAIT` im Monitor). **Empfehlung:** Hausverkabelung prüfen (lassen) und ungenutzte Telefondosen abklemmen. ## Logs & Monitoring ### DNS-Konsistenz prüfen ```bash docker logs dns-monitor ``` **Szenario OK:** ```text [TIMESTAMP] [OK] Pub: 87.x.x.x | CF: 87.x.x.x | Loc: 87.x.x.x ``` **Szenario NETWORK_WAIT (Leitungsfehler):** ```text [TIMESTAMP] [NETWORK_WAIT] Pub: 87.x.x.x | CF: Unresolved | ... ``` Häufig verursacht durch DSL-Resyncs oder Paketverlust wegen der Stichleitung. ## Dateien - `/app/docker-compose.yml`: Definition der Services. - `/app/dns-monitor/monitor.sh`: Das Shell-Skript für den Monitor-Container.