Das Pi-hole ist ein Segen für viele Heimnetzwerke: Ein leistungsstarker Werbeblocker und Netzwerk-Schutz, der auf DNS-Ebene agiert. Es filtert nicht nur unerwünschte Werbung und Tracking-Versuche, sondern kann auch den Zugriff auf bekannte bösartige Domains unterbinden. Doch manchmal scheint Ihr Pi-hole unter einer Art digitaler Amnesie zu leiden. Sie haben sorgfältig Ihre bevorzugten Upstream DNS Server konfiguriert, nur um festzustellen, dass diese nach einem Update oder einem Neustart plötzlich verschwunden sind und die Standardeinstellungen wiederhergestellt wurden. Frustrierend, nicht wahr? Keine Sorge, Sie sind nicht allein. Dieser Artikel taucht tief in das Problem ein und liefert Ihnen eine dauerhafte, robuste Lösung, damit Ihre Pi-hole-Einstellungen für immer gespeichert bleiben.
Die „Amnesie” des Pi-Hole verstehen: Warum Einstellungen verschwinden können
Bevor wir zur Lösung kommen, ist es wichtig zu verstehen, warum Ihr Pi-hole manchmal „vergisst”, welche DNS-Server es verwenden soll. Pi-hole nutzt den Dienst dnsmasq
(oder genauer gesagt, dessen Fork pihole-FTL
) als seinen Kern-DNS-Server. Die Hauptkonfiguration für Pi-hole selbst wird in der Datei /etc/pihole/setupVars.conf
gespeichert. Änderungen, die Sie über die Web-Oberfläche vornehmen, werden in der Regel hier hinterlegt.
Das Problem tritt oft auf, wenn:
- Sie Pi-hole aktualisieren: Updates können manchmal Konfigurationsdateien überschreiben oder zurücksetzen, insbesondere wenn es Konflikte gibt.
- Sie bestimmte Befehle ausführen: Befehle wie
pihole -r
(repair) oderpihole -up
(update) können die Initialisierung wiederholen und dabeisetupVars.conf
neu schreiben, wobei benutzerdefinierte Einträge verloren gehen können. - Es Konflikte mit anderen DNS-Server-Konfigurationen auf Ihrem System gibt, z.B. wenn
dnsmasq
zusätzlich über seine eigenen Dateien konfiguriert wird oder andere Systemdienste DNS-Einstellungen beeinflussen.
Das Ergebnis ist immer dasselbe: Statt Ihrer sorgfältig ausgewählten, datenschutzfreundlichen oder schnellen DNS-Server landen Sie wieder bei den Standard-Upstreams, die Pi-hole bei der Installation vorgeschlagen hat. Das ist nicht nur ärgerlich, sondern kann auch Ihre Online-Privatsphäre oder Netzwerk-Geschwindigkeit beeinträchtigen.
Was sind Upstream DNS Server und warum sind sie so wichtig?
Bevor Pi-hole einen Werbeblock oder eine Tracking-Domain identifizieren kann, muss es die Anfrage an einen anderen DNS-Server weiterleiten, wenn die Domain nicht in seinen Blocklisten steht. Diese Server werden als Upstream DNS Server bezeichnet. Sie sind der „nächste Halt” für Ihre DNS-Anfragen, bevor sie ins Internet hinausgehen.
Die Wahl Ihrer Upstream DNS Server hat direkte Auswirkungen auf:
- Geschwindigkeit: Ein schneller Upstream-Server kann die Ladezeiten von Webseiten verkürzen.
- Datenschutz: Einige DNS-Anbieter protokollieren Ihre Anfragen nicht, während andere dies tun könnten. Dienste wie Cloudflare (1.1.1.1) oder Quad9 (9.9.9.9) sind bekannt für ihren Fokus auf Datenschutz.
- Sicherheit: Einige Upstream-Server bieten zusätzliche Sicherheitsfunktionen, wie das Blockieren von Malware- oder Phishing-Domains auf DNS-Ebene (z.B. Quad9).
- Zensur/Filterung: Bestimmte DNS-Server können den Zugriff auf bestimmte Inhalte blockieren, andere sind völlig unzensiert.
Standardmäßig bietet Pi-hole eine Auswahl an gängigen Upstream DNS Servern an, wie Google, OpenDNS, Cloudflare und Quad9. Aber viele Nutzer möchten ihre eigenen Server eintragen, sei es ein lokaler Unbound-Server für höchste Privatsphäre, ein DNS-Server ihres VPN-Anbieters oder spezielle, familienfreundliche Filter-DNS-Server.
Die dauerhafte Lösung: Manuelle Konfiguration mit dnsmasq
Der Schlüssel zur Lösung der Amnesie liegt darin, die Konfiguration der Upstream DNS Server nicht nur über die Pi-hole-Web-Oberfläche (die setupVars.conf
modifiziert) zu steuern, sondern direkt über eine dedizierte Konfigurationsdatei für dnsmasq
. Pi-hole nutzt dnsmasq
und lädt alle Konfigurationsdateien aus dem Verzeichnis /etc/dnsmasq.d/
, die auf .conf
enden.
Der Vorteil dieser Methode ist, dass diese benutzerdefinierten Dateien von Pi-hole-Updates oder -Reparaturen in der Regel unberührt bleiben. Sie sind also eine „bulletproof”-Methode, um Ihre Einstellungen zu sichern.
Schritt-für-Schritt-Anleitung: So bleiben Ihre DNS-Einstellungen für immer gespeichert
Befolgen Sie diese Schritte sorgfältig, um Ihre Upstream DNS Server dauerhaft in Ihrem Pi-hole zu verankern.
Schritt 1: Zugriff auf den Pi-hole-Server per SSH
Verbinden Sie sich mit Ihrem Pi-hole-Server über SSH. Wenn Sie einen Raspberry Pi verwenden, ist der Standardbenutzer oft pi
.
ssh benutzer@ihre_pihole_ip_adresse
Ersetzen Sie benutzer
und ihre_pihole_ip_adresse
entsprechend.
Schritt 2: Eine neue Konfigurationsdatei erstellen
Wir werden eine neue Konfigurationsdatei im Verzeichnis /etc/dnsmasq.d/
erstellen. Es ist eine gute Praxis, Dateinamen zu verwenden, die mit einer hohen Zahl beginnen (z.B. 99-
), damit sie nach allen anderen Pi-hole-eigenen Konfigurationsdateien geladen werden. Dies stellt sicher, dass Ihre Einstellungen die Standardeinstellungen überschreiben.
sudo nano /etc/dnsmasq.d/99-custom-upstream-dns.conf
Sie können auch einen anderen Namen wählen, solange er mit .conf
endet und mit einer Zahl beginnt, die höher ist als die der Standard-Pi-hole-Dateien (z.B. 01-pihole.conf
).
Schritt 3: Die Upstream DNS Server eintragen
Fügen Sie in die neu erstellte Datei die gewünschten Upstream DNS Server ein. Jede Zeile sollte mit server=
beginnen, gefolgt von der IP-Adresse des DNS-Servers. Sie können sowohl IPv4- als auch IPv6-Adressen verwenden. Es ist auch ratsam, die Optionen no-resolv
und no-poll
hinzuzufügen, damit dnsmasq
keine anderen DNS-Server aus /etc/resolv.conf
oder von DHCP-Informationen verwendet und Pi-hole nicht versucht, automatisch andere Upstream-Server hinzuzufügen. Dies ist entscheidend, um die „Amnesie” zu verhindern.
Beispiel für Cloudflare (IPv4 und IPv6) mit DNSSEC:
# Benutzerdefinierte Upstream DNS Server
# Verhindert, dass dnsmasq /etc/resolv.conf liest
no-resolv
# Verhindert, dass dnsmasq andere Server aus /etc/resolv.conf pollt
no-poll
# Cloudflare DNS (IPv4)
server=1.1.1.1
server=1.0.0.1
# Cloudflare DNS (IPv6)
server=[2606:4700:4700::1111]
server=[2606:4700:4700::1001]
# Optional: DNSSEC aktivieren (falls Ihr Pi-hole es noch nicht tut)
# Wenn Sie dnsmasq als reinen Weiterleiter verwenden, kann dies sinnvoll sein.
# Das Pi-hole FTL Modul managed DNSSEC normalerweise automatisch.
# trust-anchor=..., etc. (In Pi-hole FTL ist das oft schon integriert)
Beispiel für Quad9 (IPv4 und IPv6, sichere und datenschutzfreundliche Server):
# Benutzerdefinierte Upstream DNS Server
no-resolv
no-poll
# Quad9 DNS (IPv4, mit Sicherheitsfunktionen und DNSSEC)
server=9.9.9.9
server=149.112.112.112
# Quad9 DNS (IPv6, mit Sicherheitsfunktionen und DNSSEC)
server=[2620:fe::fe]
server=[2620:fe::9]
Speichern Sie die Datei mit Strg+O
(oder Ctrl+O
) und bestätigen Sie mit Enter, dann verlassen Sie den Editor mit Strg+X
(oder Ctrl+X
).
Schritt 4: Vorhandene Einstellungen in der Pi-hole-GUI überprüfen (und ggf. entfernen)
Da no-resolv
und no-poll
in Ihrer neuen Datei dnsmasq
anweisen, *keine* anderen DNS-Server zu verwenden, ist es eine gute Idee, die Pi-hole-Web-Oberfläche zu besuchen und unter „Settings” -> „DNS” sicherzustellen, dass keine anderen Upstream-Server aktiviert sind.
Wenn Sie möchten, können Sie die Haken bei allen Standard-Upstreams entfernen. Alternativ können Sie „Custom DNS (IPv4)” und „Custom DNS (IPv6)” auswählen und dort dieselben IP-Adressen eintragen, die Sie auch in Ihre .conf
-Datei geschrieben haben. Dies dient als Redundanz oder falls die .conf
-Datei aus irgendeinem Grund ignoriert wird (was aber bei den no-resolv
/no-poll
-Direktiven unwahrscheinlich ist).
Schritt 5: Pi-hole DNS-Server neu starten
Damit die Änderungen wirksam werden, müssen Sie den DNS-Dienst von Pi-hole neu starten.
pihole -g # Regeneriert Blocklisten und Konfigurationen
sudo service pihole-FTL restart # Startet den FTL-Dienst neu
Der Befehl pihole -g
ist nicht immer zwingend, aber er sorgt dafür, dass Pi-hole seine gesamte Konfiguration neu lädt, was eine gute Praxis ist, wenn man Änderungen an den Konfigurationsdateien vorgenommen hat.
Überprüfung und Fehlerbehebung
Um sicherzustellen, dass Ihre Einstellungen korrekt angewendet wurden:
- Überprüfen Sie das Pi-hole-Log:
pihole -t
Beobachten Sie das Live-Log, um zu sehen, ob DNS-Anfragen korrekt an Ihre neuen Upstream-Server weitergeleitet werden.
- Testen Sie DNS-Abfragen:
Verwenden Siedig
(odernslookup
) auf einem Client, der Pi-hole als DNS-Server verwendet.dig example.com @ihre_pihole_ip_adresse
Alternativ können Sie den Test auch direkt auf dem Pi-hole-Server ausführen:
dig example.com @localhost
Die Antwort sollte die IP-Adresse von
example.com
anzeigen und nicht auf Fehler hinweisen. - Überprüfen Sie die Web-Oberfläche:
Gehen Sie zu „Settings” -> „DNS”. Obwohl die GUI jetzt möglicherweise „Custom DNS” oder gar keine aktivierten Upstreams anzeigt (wenn Sie sie deaktiviert haben), ist dies erwartet, da die Konfiguration direkt vondnsmasq
über Ihre.conf
-Datei gelesen wird. Die GUI spiegelt in diesem Fall nicht die tatsächlichen Upstreams wider, diednsmasq
verwendet, wenn Sieno-resolv
undno-poll
gesetzt haben.
Weitere nützliche dnsmasq-Optionen für Pi-hole
Neben den Upstream DNS Servern können Sie in Ihrer benutzerdefinierten .conf
-Datei noch weitere nützliche dnsmasq
-Optionen festlegen, um Ihr Pi-hole zu optimieren:
cache-size=<Größe>
: Erhöht die Größe des DNS-Caches (z.B.cache-size=10000
für 10.000 Einträge), was die Leistung verbessern kann, da weniger Anfragen an Upstream-Server gesendet werden müssen.log-queries
: Aktiviert die Protokollierung aller DNS-Abfragen. Nützlich für Debugging, kann aber das Log schnell füllen.local-ttl=<Sekunden>
: Legt die Time-To-Live (TTL) für lokale DNS-Einträge fest, z.B. für Einträge in/etc/hosts
oder in Pi-hole’s „Local DNS Records”.rev-server=<IP-Bereich>/<Upstream-IP>
: Für Reverse-DNS-Lookups in Ihrem lokalen Netzwerk. Zum Beispielrev-server=192.168.1.0/24,192.168.1.1
weist Pi-hole an, Reverse-Anfragen für den Bereich192.168.1.x
an Ihren Router (192.168.1.1
) weiterzuleiten, um Hostnamen für lokale IPs zu erhalten.dns-forward-option=filterwin2k
: Kann Probleme mit einigen Windows-Clients beheben, die unnötige DNS-Abfragen senden.
Denken Sie daran, dass zu viele oder falsch konfigurierte Optionen zu Problemen führen können. Fügen Sie immer nur eine Option nach der anderen hinzu und testen Sie deren Funktion.
Best Practices und abschließende Gedanken
Diese Methode, die Upstream DNS Server über eine dnsmasq.d
-Datei zu konfigurieren, ist die robusteste Art, Ihre Einstellungen dauerhaft zu speichern und die „Amnesie” Ihres Pi-hole zu heilen. Hier sind einige zusätzliche Tipps:
- Kommentieren Sie Ihre Konfigurationsdateien: Fügen Sie Kommentare (beginnend mit
#
) hinzu, um zu erklären, was jede Zeile tut. Das hilft Ihnen (und anderen), die Einstellungen später zu verstehen. - Sichern Sie Ihre Konfiguration: Auch wenn diese Methode stabil ist, ist es immer ratsam, regelmäßig Backups Ihrer Pi-hole-Konfiguration zu erstellen, insbesondere der Datei
/etc/pihole/setupVars.conf
und Ihrer benutzerdefinierten.conf
-Dateien. - Bleiben Sie informiert: Die Pi-hole-Community und die offizielle Dokumentation sind hervorragende Ressourcen, um über Änderungen und neue Funktionen auf dem Laufenden zu bleiben.
Indem Sie diese Schritte befolgen, nehmen Sie die Zügel Ihrer Pi-hole-Konfiguration fest in die Hand. Ihre Upstream DNS Server werden nicht mehr unbemerkt verschwinden. Sie haben eine Lösung geschaffen, die Updates überdauert und Ihnen die Gewissheit gibt, dass Ihr Netzwerk stets die von Ihnen gewählten, optimalen DNS-Server nutzt – für mehr Geschwindigkeit, Datenschutz und Sicherheit. Die Amnesie ist geheilt!