Sporadische DNS-Probleme mit Pi-Hole und Fritz!Box

Rickmer

Fleet Admiral
Registriert
Sep. 2009
Beiträge
22.259
Moin zusammen,

ich habe vor einigen Wochen bei mir ein Pi-Hole installiert und implementiert.

Da ich bei den diversen Server-Installationen keine Änderungen machen wollte und die Fritz!Box als primären DNS bei DHCP Clients haben wollte für den Fall, dass mit dem Pi-Hole was nicht will, hatte ich das so implementiert:

2021-06-04 14_43_20-Window.png


2021-06-04 14_43_53-Window.png


Soweit, so gut. Das funktioniert auch prima. Das Pi-Hole wundert sich zwar, warum es nur Anfragen von einem Client bekommt (der Fritz!Box), aber das ist mir relativ ega.


Problem:
Sporadisch funktioniert das DNS nicht mehr. Seiten werden nicht gefunden und wenn ich ins Query-Log vom Pi-Hole schaue sind dort keine aktuellen Anfragen mehr drin.

Das lässt sich relativ einfach lösen, indem ich in der Fritte von 'Andere DNS-Server verwenden' auf 'Vom Internetanbieter zugewiesene DNS-Server verwenden' und direkt wieder zurück stelle. Prompt kommen auch beim Pi-Hole DNS-Anfragen an und alles funktioniert wieder.


Hatte das einer von euch schon? Habt Ihr eine Lösung, wie ich dieses Verhalten von der Fritz!Box loswerde?

Alternativ kann ich zwar den DNS von der Fritz!Box wieder auf 'normal' umstellen und das Pi-Hole über die DHCP-Einstellungen verteilen, aber eigentlich will ich das nicht.
 
  • Gefällt mir
Reaktionen: NutzenderNutzer
Ich hatte mich letztens gewundert, warum ich wieder Werbung angezeigt bekam. Tatsächlich bestand das Problem offenbar schon mehrere Tage, aber da ich nicht jeden Tag zu Hause bin, ist mir das offenbar nicht direkt aufgefallen.

Info: Ich habe in der Fritzbox als sekundären DNS 8.8.8.8 eingetragen, um im Falle eines Ausfalls des PiHoles automatisch nen Fallback zu haben. Daher wurden bei mir die Seiten dann eben mit Werbung angezeigt.

Und als ich das dann bemerkte, habe ich erst einmal dem PiHole die Schuld gegeben und einmal rebootet. Leider ohne Erfolg. Dann ging ich von irgendwelchen Konfigfehlern nach einem evtl. Update aus, aber konnte auf die Schnelle nichts negatives finden.

Schlussendlich hat dann ein Reboot der Fritzbox geholfen. Ich weiß zwar nicht, ob dein Workaround mit DNS-Änderung geholfen hätte, aber ich gehe jetzt einfach mal davon aus.

Also ja, offenbar bist du da nicht allein mit. Allerdings ist dies die erste Fehlfunktion dieser Art seit seit Inbetriebnahme des PiHoles gewesen und das ist schon recht lang her. Ich würde Anfang 2020 oder gar Ende 2019 vermuten. Also bei mir wirklich SEHR sporadisch. Da ich bisher nicht davon ausging, dass das Problem öfter auftritt, habe ich mich um eine Lösung bisher auch nicht weiter bemüht und warte ab.

Bei mir ist die Fritzbox 6490 im Einsatz (dürfte auch noch nicht die neueste FW-Version sein).

Grüße
 
Rickmer schrieb:
Moin zusammen,

ich habe vor einigen Wochen bei mir ein Pi-Hole installiert und implementiert.

Da ich bei den diversen Server-Installationen keine Änderungen machen wollte und die Fritz!Box als primären DNS bei DHCP Clients haben wollte für den Fall, dass mit dem Pi-Hole was nicht will, hatte ich das so implementiert:

Anhang anzeigen 1087696

Anhang anzeigen 1087697

Soweit, so gut. Das funktioniert auch prima. Das Pi-Hole wundert sich zwar, warum es nur Anfragen von einem Client bekommt (der Fritz!Box), aber das ist mir relativ ega.


Problem:
Sporadisch funktioniert das DNS nicht mehr. Seiten werden nicht gefunden und wenn ich ins Query-Log vom Pi-Hole schaue sind dort keine aktuellen Anfragen mehr drin.

Das lässt sich relativ einfach lösen, indem ich in der Fritte von 'Andere DNS-Server verwenden' auf 'Vom Internetanbieter zugewiesene DNS-Server verwenden' und direkt wieder zurück stelle. Prompt kommen auch beim Pi-Hole DNS-Anfragen an und alles funktioniert wieder.


Hatte das einer von euch schon? Habt Ihr eine Lösung, wie ich dieses Verhalten von der Fritz!Box loswerde?

Alternativ kann ich zwar den DNS von der Fritz!Box wieder auf 'normal' umstellen und das Pi-Hole über die DHCP-Einstellungen verteilen, aber eigentlich will ich das nicht.
heute mrgen hier auch gehabt und die woche schon einmal

liegts am pi hole oder dem 7.27er fritz os?
 
Hast du den lokalen DNS-Server schon einmal auf den Pi-Hole umgestellt?
Aktuell laufen deine DNS-Anfragen nochmal einen Umweg über die Fritzbox. Wenn du das umstellst, dann bekommen die Clients den DNS vom Pi mitgeteilt und du siehst auch die einzelnen Clients im Query Log.

Edit:
Hab deinen Hinweis übersehen, dass du die Fritzbox als primären DNS möchtest.
 
Hm.. Erstmal wundere ich mich, dass primärer und sekundärer DNS identisch sind. Normalerweise gibt es entweder nur den primären oder es sind zwei verschiedene DNS. Bei letzterem muss man jedoch berücksichtigen, dass primärer und sekundärer DNS redundant sein müssen, also gewissermaßen vom Informationsgehalt identisch. Hat man zB 8.8.8.8 als sekundären DNS, kann es eben auch passieren, dass DNS leaks entstehen, weil sporadisch auch mal der sekundäre DNS befragt wird. Die Folge sind fehlerhafte lokale Namensauflösung oder eben Werbung trotz pihole. Der primäre und sekundäre DNS werden nämlich in einer recht komplexen Logik mal nacheinander, aber auch mal parallel befragt, mit steigenden Timeouts. Deswegen müssen BEIDE DNS auch ALLE Anfragen korrekt beantworten können (Stichwort: Clone).

Das ist bei dir zwar nicht der Fall, dennoch wundere ich mich, dass überhaupt ein sekundärer DNS eingetragen ist. Ich hätte erwartet, dass der sekundäre einfach leer bleibt.
 
  • Gefällt mir
Reaktionen: Fenugi
Du kannst auch den DHCP der Fritz!Box abstellen und dann den PiHole den DHCP Server machen. Damit gehst Du dem Problem dann einfach aus dem Weg.
 
es ist in der fritte nicht möglich den alternativen dns leerzulassen, die will da was haben
 
  • Gefällt mir
Reaktionen: omavoss, Fenugi und Raijin
NutzenderNutzer schrieb:
liegts am pi hole oder dem 7.27er fritz os?
Der Verdacht, dass es an der 7.27er fritz!os Version liegt wäre naheliegend, wenn hier mehrere bestätigen können, dass das bei Ihnen auch seit kurzer Zeit auftritt.

Ich hatte die 7.27er schon drauf als ich mit dem Pi-Hole angefangen hatte, daher habe ich nicht den Vergleich.

Raijin schrieb:
Hm.. Erstmal wundere ich mich, dass primärer und sekundärer DNS identisch sind. Normalerweise gibt es entweder nur den primären oder es sind zwei verschiedene DNS. Bei letzterem muss man jedoch berücksichtigen, dass primärer und sekundärer DNS redundant sein müssen, also gewissermaßen vom Informationsgehalt identisch. Hat man zB 8.8.8.8 als sekundären DNS, kann es eben auch passieren, dass DNS leaks entstehen, weil sporadisch auch mal der sekundäre DNS befragt wird. Die Folge sind fehlerhafte lokale Namensauflösung oder eben Werbung trotz pihole. Der primäre und sekundäre DNS werden nämlich in einer recht komplexen Logik mal nacheinander, aber auch mal parallel befragt, mit steigenden Timeouts. Deswegen müssen BEIDE DNS auch ALLE Anfragen korrekt beantworten können (Stichwort: Clone).
Ich hätte natürlich lieber wenn ich das Pi-Hole als primären DNS eintragen könnte und nur falls das Pi-Hole nicht erreichbar ist fragt die Fritte am sekundären DNS (z.B. 1.1.1.1) nach.
Aber nach etwas googlen war klar, dass das nicht ist wie die Fritte das in der Realität umsetzt und dann wurde halt das Pi-Hole doppelt eingetragen weil ein leerer Eintrag nicht gültig war.

Forlorn schrieb:
Du kannst auch den DHCP der Fritz!Box abstellen und dann den PiHole den DHCP Server machen. Damit gehst Du dem Problem dann einfach aus dem Weg.
Auch eine Option, aber macht das Leben dann noch nerviger, wenn das Pi-Hole mal vorübergehend abgeschaltet ist.

Daher auch alle DNS-Einträge auf die Fritte und die reicht ans Pi-Hole weiter: Ich habe das Pi-Hole nicht auf dedizierter Hardware, sondern in 'ner VM auf dem Heimserver laufen.
Ich will die Freiheit haben, mit meinem Heimserver mal ein paar Experimente zu machen und dann ist das Pi-Hole halt ein paar Stunden/Tage nicht erreichbar.

Bei der jetzigen Konfiguration schalte ich kurz das DNS in der Fritte um und gut ist. Wenn ich dann jedesmal DHCP umstellen müsste wäre deutlich nerviger.

Engaged schrieb:
Man muss doch noch "Unique Local Address Ihrer FRITZ!Box" und "DNS-Rebind-Schutz" einstellen?
Sollte meinem Verständnis nach beides nicht nötig sein?
 
Rickmer schrieb:
Ich hätte natürlich lieber wenn ich das Pi-Hole als primären DNS eintragen könnte und nur falls das Pi-Hole nicht erreichbar ist fragt die Fritte am sekundären DNS (z.B. 1.1.1.1) nach.
Leider funktioniert das aber eben nicht so wie man sich das denkt. Dadurch hättest du den Effekt, dass sporadisch eben doch Werbung durchkommt, weil ein DNS-Client sehr kurze Timeouts für den primären DNS hat und danach sofort den sekundären fragt - parallel zu einem zweiten Request beim primären DNS mit längerem Timeout. So schaukelt sich das hoch und beide werden quasi-parallel benutzt. Anders geht das auch gar nicht, weil sonst bei einem fehlerhaften primären DNS die Wartezeiten extrem spürbar wären, weil es ja keine "Umschaltung" im Falle eines Ausfalls gibt, sondern der grob beschriebene Prozess bei jedem DNS-Query auf's neue beginnt - immer erst primär fragen, warten, dann sekundär fragen, warten. Stattdessen wird der sekundäre ziemlich schnell gefragt, wenn der primäre auch nur eine Mikrosekunde zu lange braucht.

Deswegen ist es essentiell wichtig, dass primärer und sekundärer DNS quasi-identisch sind. Das wären zB 8.8.8.8 + 8.8.4.4 oder eben zB zwei pihole-Instanzen im lokalen Netz. Bei gemischten DNS kann ansonsten nicht sichergestellt werden, dass jeder DNS-Query auf Werbung/Tracker hin untersucht wird oder zB lokale DNS-Queries auch wirklich lokal bleiben (mal die Fritzbox als forwarder für die DHCP-Clients außen vor gelassen).

Wie ich jetzt aber dazugelernt habe, scheint die Fritzbox einen leeren sekundären DNS nicht zuzulassen. Dann muss man dort eben etwas eintragen. Da du aber sowieso 2x denselben DNS dort stehen hast, dürfte obiges Problem auch gar nicht auftreten. Ich wollte damit auch nur die Logik hinter den beiden DNS grundsätzlich erklären und wunderte mich eben über 2x dieselbe IP.

Da bei dir also kein 8.8.8.8/1.1.1.1 im Spiel ist und pihole im Fehlerfall auch keine eingehenden Queries anzeigt, bleiben nur zwei Fehlerquellen übrig: Der Client-PC, der ggfs gar keinen DNS-Query abschickt, oder die Fritzbox, die ihrerseits den Query vom Client empfängt, aber nicht weiterleitet.
Der nächste Schritt könnte nun also WireShark bzw. tcpdump sein, mit denen man am PC bzw. in der Fritzbox den DNS-Traffic (Port 53) mitliest.
 
  • Gefällt mir
Reaktionen: NutzenderNutzer
Raijin schrieb:
Da bei dir also kein 8.8.8.8/1.1.1.1 im Spiel ist und pihole im Fehlerfall auch keine eingehenden Queries anzeigt, bleiben nur zwei Fehlerquellen übrig: Der Client-PC, der ggfs gar keinen DNS-Query abschickt, oder die Fritzbox, die ihrerseits den Query vom Client empfängt, aber nicht weiterleitet.
Wenn der Fehler auftritt haben auch alle anderen Clients (Laptop, Server, 2 Smartphones) DNS Probleme
 
Dann kann man das Problem mit hoher Wahrscheinlichkeit auf den zweiten Teil des Zitats eingrenzen, die Fritzbox.

Wenn du im Expertenmodus mal ein Capture startest, kannst du dir hinterher die pcap Datei von der Fritzbox runterladen. Diese lädst du in WireShark und filterst nach Port 53 bzw DNS.
 
Kann ich mal machen... wofür habe ich einen Heimserver, wenn ich damit nicht mal ein paar Tage lang allen Netzwerktraffic mitschneiden kann.

Mal schauen, wann das wieder auftritt - das war letzte Woche aufgetreten, dann hatte ich ein paar Tage Ruhe nachdem ich die Fritte durchgebootet hatte, und heute war es einmal morgens und einmal mittags aufgetreten.

Nuja, der Server hat auf der Systemplatte ~470GB frei. So viel werde ich für den Mitschnitt wohl hoffentlich nicht brauchen :D
Ergänzung ()

Speicherverbrauch nach aktuellem Trend ca. 360 MB/h
 
Zuletzt bearbeitet:
Auf deinem Server ist das nur bedingt aussagekräftig. Wenn pihole im Log keine Queries anzeigt, wird tcpdump auch keine anzeigen. Es geht viel mehr darum ob die Fritzbox überhaupt Queries an pihole weiterleitet, sie selbst beantwortet oder gar an einen anderen DNS durchreicht.

Hintergrund ist Folgender (ACHTUNG! Unverfizierte Infos folgen!):

Ich meine, mich an einen Thread erinnern zu können, in dem jemand davon berichtet hat, dass er im tcpdump der Fritzbox auch andere DNS gefunden hat obwohl sie nicht eingestellt waren (zB Provider-DNS). Das ist aber schon lange her, ich habe das dumpfile nicht gesehen und finde den Thread auch nicht wieder - und ich habe keine Fritzbox, mit der ich das selbst prüfen könnte. Daher kann das auch beliebiger Unsinn gewesen sein. Aber man würde genau das in einem tcpdump der Fritzbox sehen können, und zwar nur da.
 
Raijin schrieb:
Auf deinem Server ist das nur bedingt aussagekräftig. Wenn pihole im Log keine Queries anzeigt, wird tcpdump auch keine anzeigen. Es geht viel mehr darum ob die Fritzbox überhaupt Queries an pihole weiterleitet, sie selbst beantwortet oder gar an einen anderen DNS durchreicht.
Ich meinte nur, dass ich den Log auf dem Server gestartet habe weil der nicht zwischendurch ausgeschaltet oder neu gestartet wird
Die Fritzbox gibt das ja als einen langen Download aus dem Browser heraus weil die definitiv nicht genügend Speicher hat dafür
 
  • Gefällt mir
Reaktionen: Raijin
Ich kenne die Fritzbox ja nicht im Detail, weil ich keine habe. Hätte jetzt ehrlich gesagt erwartet, dass man beim dump einen Filter vorgeben kann und dann wird auch nur dieses geloggt, also zB DNS-Queries. Klar, ewig lang kann ein Router das nicht speichern, aber das muss ja auch keine 24/7/365 laufen, sondern effektiv nur während einer Fehlersituation.

Aber wie gesagt, dazu kenne ich Fritten nicht gut genug und du wirst schon wissen wie das am besten funktioniert, da vertraue ich dir :)
 
EIne direkte Filtermöglichkeit bei der Aufzeichnung gibt es nicht. Allerdings kann man den erstellen Mitschnitt in WireShark laden und kann dann da schauen, filtern und analysieren.
 
Da du dein pihole als upstream dns eingestellt hast solltest du bei den dns rebind Ausnahmen pi.hole + IP eintragen.
Bekommt dein VM Host seine IP über DHCP?
 
Zuletzt bearbeitet:
.DeluXer schrieb:
Da du Bekommt dein VM Host seine IP über DHCP?
Alle Server haben feste IPs, falls das ist was du fragen wolltest

Domain rebind Eintrag habe ich für pi-hole.fritz.box erstellt. Das ist zumindest die fqdn die mir bei einem Ping zurück gegeben wird.
 
Zurück
Oben