Pi-Hole nur über IP erreichbar und nicht über "pi.hole/admin"

Hallo,

ich betreibe Pi-Hole in der aktuellen Version auf einem Raspberry Pi W Zero mit folgendem Image "Raspberry Pi OS (32-bit) Lite " (da nur eine 2GB SD Karte).

Alles funktioniert, allerdings kann ich nicht auf "pi.hole(/admin)" zugreifen. Über die IP-Adresse (192.168.1.2) ist das kein Problem, da funktioniert es.

Die lokalen Domains wie "fritz.box" und "fritz.nas" werden korrekt aufgelöst und sind über das Webinterface aufrufbar.

Was mache ich bei "pi.hole" falsch?

Zur Konfiguration:
Die Fritzbox (192.168.1.1) ist der DHCP-Server und verteilt den Pi-Hole als DNS-Server an alle Geräte (sowohl IPv4 und IPv6).
Im Pi-Hole selbst ist unter Upstream DNS-Server als Custom 1 (IPv4) und Custom 3 (IPv6) die Fritzbox eingetragen (192.168.1.1 und fe80::xxxx).
In der Fritzbox selbst sind die DNS-Server von Google eingetragen.

Keine Häckchen im Pi-Hole bei:

  • Never forward non-FQDNs
  • Never forward reverse lookups for private IP ranges
  • Use DNSSEC

Aktiviert ist:
Use Conditional Forwarding ("192.168.1.1" und "fritz.box")

In der Fritzbox habe ich schon unter DNS-Rebind-Schutz "pi.hole" und/oder "192.168.1.2" eingetragen, das hat keine Auswirkungen gehabt.

Ich hatte irgendwo gelesen, dass man den lighthttpd service neustarten soll, wenn ich "sudo service lighthttpd restart " eingebe gibt er mir die Meldung "Failed to restart ighthttpd.service: Unit ighthttpd.service not found." raus. Ist das das Problem?

Vielen Dank für eure Hilfe.

Was gibt denn

cat /etc/pihole/local.list 

aus?

Das klingt als sei lighttpd nicht installiert. Hast du denn bei der Installation von pihole ausgewählt, dass der Webserver installiert werden soll?

Was gibt denn

sudo lsof -i -P -n | grep LISTEN

aus?

ADD

dig pi.hole
cat /etc/pihole/setupVars.conf

Hallo yubiuser :blush:

Ich mach es mal als Screenshot:
image

Also local.list sollte nicht leer sein....
Und lsof hat nicht geklappt. Lass mal das -n weg.
Außerdem habe ich dir oben noch zwei weitere Befehle zum testen reingeschrieben.

dig pi.hole:
image

cat /etc/pihole/setupVars.conf:
image

sudo lsof -i -p | grep LISTE
image

Schon mal gut, dass in setup.vars deine IP auftaucht.
Das mit den Ports scheint nicht zu funktionieren, probier mal

sudo netstat -tulpn | grep LISTEN

ADD

Ich habe gerade gesehen, dass bei jedem gravity Update local.list neu geschrieben wird.
Evt. reicht es schon aus, wenn du

pihole -g
pihole restartdns

mal ausführst.

sudo netstat -tulpn | grep LISTEN:
image

Danach "pihole -g" und "pihole restartdns" ausgeführt und dann nochmal "cat /etc/pihole/local.list":
image

Also lighttpd läuft und lauscht auch auf Port 80 und local.list sieht jetzt auch gut aus.
Kannst du jetzt von einem Client aus auf pi.hole/admin zugreifen?

Ja, jetzt funktioniert es. Dankeschön! Auch wenn ich jetzt nicht weiß woran es lag :smiley:

Da das so gut geklappt hat hänge ich gleich noch eine Frage dran :wink: .

Ich habe in der Fritzbox allen Geräten einen eindeutigen Namen gegeben (Laptop-Max, Laptop-Moritz, Smartphone-Emil, Repeater-Keller usw.), Pi-Hole zeigt mir allerdings die "Eigennamen" an wie "fritz.repeater", "android-dc9939612e16ae1b.fritz.box" oder "computer.fritz.box". Ist es möglich die Namen aus der Fritzbox zu übernehmen oder muß ich für fast 50 Geräte alles nochmal händisch neu im Pi-Hole irgendwo eingeben? Bei vielen Geräten kann man den Namen ja leider nicht oder nur mit großem Aufwand im Gerät selbst ändern.

Schön, dass es funktioniert!

Ich befürchte ja. Die "Namen", die du in der Fritzbox vergeben hast, sind nur Aliase, die nicht für die DNS Auflösung genutzt werden.
Am Besten legst du entsprechende Einträge unter "Local DNS Records" an. Das hat dann auch den Vorteil, dass deine Geräte im Heimnetz auch unter ihrem Namen zu erreichen sind (zB. bei Clients die ein Webinterface anbieten; oder du kannst dann auch ping handy-ENF eingeben und es funktioniert).

Aber warum das jetzt funktioniert mit dem Ansprechen des Webinterfaces über die Domain und vorher nicht kannst du dir auch nicht erklären, oder? Man möchte ja dazulernen :wink:

Ich habe jetzt versucht den Drucker unte "Local DNS Records" anzulegen. In meinem Fall "drucker.lan" und "192.168.1.105".

Wenn ich im Browser das Webinterfaces des Druckers aufrufen möchte werde ich aber an Google weitergeleitet. Das Anpingen über den Hostnamen funktioniert ebenfalls nicht, nur über die IP klappt es in beiden Fällen.

Dazu habe ich gesehen, dass ich in der Fritzbox den PiHole in den IPv6-Einstellungen auch noch mit seiner fe80 Adresse eingetragen hatte, ich habe jetzt mal die fd00 genommen so wie es hier empfohlen wird.

Leider war es gestern noch so, dass 2x auf dem Laptop sowie Tablet der Standardgateway (ja die Fritzbox mit 192.168.1.1) nicht verfügbar war laut Problemdiagnose. Ein Zurücksetzen des Adapters hat geholfen. Ich hoffe mal das waren "Startschwierigkeiten" und nicht ein Anzeichen für eine Fehlkonfiguration meinerseits irgendwo...

Das entscheidende war der Eintrag in local.list. Da steht praktisch drin, dass 192.168.1.2 den hostnamen pi.hole haben soll. Die Datei selbst wird von /etc/dnsmasq.d/01-pihole.conf mit eingebunden. Piholes Herz ist praktisch dnsmasq, deshalb liest Pihole dort auch die Configs ein.
Jetzt weiß Pihole praktisch, wenn von einem Client die Anfrage nach "pi.hole" kommt, welche IP Adresse er zurückliefern soll.

Ich denke, dass liegt daran, dass du als Local Domain hier *.lan verwendest, aber die Fritzbox standardmäßig .fritz.box nimmt. Lass das Suffix mal weg (also nur drucker) oder nimm drucker.fritz.box.

Ah, ok. Danke.

Drucker funktioniert jetzt, es lag an mir. Habe übersehen, dass Chrome zwar bei der ersten Eingabe von "drucker.lan" auf die Googlesuche weiterleitet, aber oben ein Feld einblendet ob ich vielleicht doch tatsächlich die Domain aufrufen möchte :wink: .

Ich habe jetzt exemplarisch verschiedene Geräte in die Liste aufgenommen und bekomme unterschiedliche Ergebnisse die ich mir nicht erklären kann:

Drucker.lan ->kein Problem, Chrome meckert das erste Mal wegen des Zertifikats aber das Webinterface erscheint

powerline.lan ->Webinterface erscheint sofort

nintendoswitch.lan ->Chrome leitet auf Google weiter und bietet nicht an die Domain auzurufen und anpingen funktioniert auch nicht

repeater-buero.lan ->es wird auf die Seite "http://tplinkrepeater.net/" weitergeleitet. Anpingen funktioniert und wenn ich direkt die IP 192.168.1.109 aufrufe lande ich im Webinterface

raspberry.lan ->"Website blocked", siehe Screenshot. "pi.hole" oder "192.168.1.2" funktionieren aber

(In der Fritzbox werden alle diese Geräte als aktiv und verbunden angezeigt.)

Wenn das anpingen nicht funktioniert, funktioniert die Namensauflösung nicht? Tippfehler? Ansonsten mal anpingen und schauen, was im Query Log von Pihole auftraucht.

Gibt in einem client mal

dig repeater-buero.lan

ein.

raspberry.lan hast du das als Local DNS Record angelegt?

Auch für eventuelle spätere Mitleser:
Scheinbar muss man um sicher zu gehen bei Chrome immer "http(s)://" voranstellen um die lokalen Domains aufzurufen. Dann funktioniert es, wenn sonst auch alles richtig konfiguriert ist.

So sehen meine aktuellen DNS Records aus:

(Der Laptop ist von meiner Frau, deshalb brauchte der einen sympathischen Namen :wink: )

Und so das Query Log, wenn ich raspberry.lan aufrufe:

dig repeater-buero.lan:
image

Zur Nintendo Switch:
Ping:

Was die Fritzbox anzeigt:

dig repeater-buero.lan

von einem Client ausführen, d.h. nicht dem Rasperry (denn der selbst nutzt, wie in der Ausgabe oben zu sehen, Pihole gar nicht (kennt deine Local DNS Records daher auch nicht), sondern 8.8.8.8).


Nitendo Switch wird wie im 2. Screenshot mit der korrekten IP aufgelöst. Es ist also eher ein Netzwerkproblem. Vielleicht liegt es am Repeater? Es kann auch sein, dass die Switch nicht auf Pings reagiert.


Pihole liefert auch eine IP für raspberry.lan aus.

Wenn dein Ziel ist, dass die Pihole Weboberfläche unter raspbery.lan zu finden ist, musst du wahrscheinlich die Konfiguration von Lighttpd anpassen. Allerdings wird die Konfig bei jedem Pihole Update wieder überschrieben.