Warum DNS im Alltag so wichtig ist
Wenn sich eine Webseite nicht öffnet, wird häufig zuerst die Internetverbindung verdächtigt. Dabei kann schon die Namensauflösung fehlen. Der Rechner kennt die Adresse des Dienstes dann nicht, obwohl die eigentliche Verbindung noch funktionieren würde. Ein eigener DNS-Dienst übernimmt deshalb eine zentrale Aufgabe.
AdGuard Home kann DNS-Anfragen filtern und ihre Verarbeitung nachvollziehbar machen. In meiner Anlage laufen zwei Instanzen auf getrennten Wirten in LXC-Containern. Die Anwendung lässt sich auch mit Docker betreiben. Die folgenden Betriebsfragen gelten für beide Varianten; sie sind kein Bericht über eine bei mir vorhandene Docker-Installation.
Den vollständigen Anfrageweg verstehen
Vor der Einrichtung würde ich den Weg einer Anfrage aufzeichnen: Welchen DNS-Server verwendet das Endgerät? Vermittelt der Router die Anfrage weiter? Welche Upstream-Server fragt AdGuard anschließend? Dabei sollten IPv4 und IPv6 betrachtet werden, damit nicht ein ungeprüfter zweiter Weg übrig bleibt.
Verschlüsselte Namensauflösung muss ebenfalls abschnittsweise betrachtet werden. Eine verschlüsselte Verbindung vom DNS-Dienst zum Upstream bedeutet nicht automatisch, dass jeder Abschnitt im Heimnetz verschlüsselt ist. Im eigenen Aufbau sollten die tatsächlich gewählten Wege dokumentiert und an den jeweiligen Endpunkten geprüft werden.
Filter und Ausnahmen klein halten
Ein DNS-Filter entscheidet anhand von Namen. Er kann nicht jedes unerwünschte Element innerhalb eines ansonsten benötigten Dienstes getrennt behandeln. Manche Anwendungen reagieren außerdem empfindlich, wenn ein für ihre Funktion verwendeter Name blockiert wird.
Statt große Ausnahmen auf Verdacht einzutragen, würde ich einen Fehler reproduzieren und die betroffenen Anfragen ansehen. Danach folgt eine möglichst eng begrenzte Änderung und ein neuer Funktionstest. Auch die Antwort des Upstreams gehört zur Diagnose: Eine lokale Freigabe kann eine bereits dort blockierte Antwort nicht einfach rückgängig machen.
Zwei Instanzen brauchen eine Umschaltprobe
Zwei eingetragene DNS-Adressen sind ein Anfang. Ob der Router beim Ausfall einer Instanz tatsächlich rechtzeitig die andere benutzt, muss sich im konkreten Aufbau zeigen. In meiner Umgebung war gerade der Routerweg bei den Ausfalltests ein eigener Prüfpunkt.
Die Probe sollte kontrolliert erfolgen: eine Instanz unterbrechen, über den normalen Geräte- und Routerweg neue Namen auflösen und danach den Wiederanlauf prüfen. Ein vorhandener Cache kann einen Fehler kurzfristig verdecken. Die Grenze zwischen kurzer Umschaltpause und dauerhaft hängender Verbindung muss deshalb sichtbar bleiben.
Docker und LXC haben unterschiedliche Updatewege
Für Docker beschreibt der Hersteller dauerhaft gespeicherte Arbeits- und Konfigurationsverzeichnisse sowie die benötigten Ports. Es sollten nur die Funktionen freigegeben werden, die wirklich gebraucht werden. Die Administrationsoberfläche und ein DNS-Dienst sind unterschiedliche Zugänge.
Auch das Updateverfahren hängt von der Installationsart ab. Die Herstellerdokumentation unterscheidet die native Anwendung und die Containerinstallation; automatische In-App-Updates sind unter Docker deaktiviert. Ein Betriebssystemupdate allein beweist daher noch keinen aktuellen AdGuard-Stand. Vor der Wartung gehören Einstellungen und ein passender Rückweg gesichert.
Mit einer klaren Funktionskontrolle abschließen
Nach einer Änderung würde ich drei Fragen beantworten: Werden normale Namen aufgelöst? Greift eine bewusst gewählte Filterprobe? Funktioniert eine freigegebene Anwendung weiterhin? Dazu kommt bei zwei Instanzen die getrennte Prüfung beider Wege.
Mein Ziel ist ein nachvollziehbarer DNS-Betrieb, bei dem Ausnahmen, Wartung und Abhängigkeiten bekannt sind. Eine große Filterliste ist dafür weniger aussagekräftig als eine kleine Reihe wiederholbarer Tests. Der Dienst soll Schutz bieten und im Alltag verlässlich erreichbar bleiben.