Android nimmt nicht Pihole DNS

Chibi88

Lt. Commander
Registriert
Dez. 2007
Beiträge
1.281
Hallo,

mir ist eben bei einem dnsleaktest auf Android aufgefallen, dass mein Android den DNS Server von meinem Pihole nicht nimmt. Leider ist das nicht optimal, da das Blocken von Werbeanzeigen dann nicht funktioniert. Ich nutze aktuell eine Vodafone Station bzw. AKA ConnectBox und habe dort DHCP deaktiviert und lasse das meinem Pihole machen.

Ich vermute das Problem wird ipv6 ggf. sein. Leider kann ich am Router keine Einstellung finden, wo ich das anpassen kann. Vielleicht suche ich auch an der falschen Stelle.

Habt ihr eine Idee?
 
Hat den das Telefon eine gueltige IP Konfiguration? Also als DNS ist piHole eingetragen?

DHCP per Vodafone Box und als DNS dort den piHole hinterlegen waere mein Gedanke, wenn das geht.
Achja. Manchmal holt sich eine App per mobilen Daten das was sie per Wifi nicht bekommt wenn beides an ist.
 
DNS kann bei Android einmal in den Netzwerkeinstellungen hinterlegt werden, dann bei Privates DNS und zum Schluss im Browser unter Einstellungen, Sicherheit, Sicheres DNS. Vermutlich ist bei einen der beiden letzteres etwas anderes als (bevorzugt) hinterlegt.
 
  • Gefällt mir
Reaktionen: frames p. joule
Die einfachste Möglichkeit wäre es DHCP und DNS dem Router zu überlassen, im Router aber den PiHole als DNS Server einzustellen. Dadurch würde jedes Gerät automatisch über PiHole laufen weil die einzelnen Geräte die DNS Anfrage an den Router stellen und der Router dann beim PiHole nachfragt. So mache ich es bei meiner FritzBox.

Jetzt ist nur die Frage ob man bei der Vodafone Box den DNS Server ändern kann. Falls nicht musst du in jedem einzelnen Endgerät die DNS Adresse des PiHole manuell eintragen.

Bei nem Smartphone aber auch nicht optimal außer du hast dauerhaft einen VPN am laufen. Sonst gehen die DNS Anfragen unterwegs im Mobilfunk natürlich ins Leere.

Achso und IPV6 Support müsste im PiHole auch aktiviert werden. Standardmäßig ist es deaktiviert. Wobei ich im LAN eh auf IPV6 verzichten würde. IPV6 DNS Anfragen kann der PiHole auch über IPV4 im LAN beantworten. Sprich auch wenn das Gerät eine öffentliche IPV6 Adresse hat muss man kein IPV6 im Heimnetz nutzen.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: LukS und DoNG
Also ich habe den privaten DNS bei Android deaktiviert. Zudem habe ich DHCP über die Vodafone Station deaktiviert und lasse den PiHole DHCP machen. Eine gültige IP Adresse bekomme ich und der DNS Server ist der Pihole, wenn ich in den Einstellungen gucke. Leider wird mir in den Einstellungen auch ein ipv6 DNS Server angezeigt, der anscheinend von der Vodafone Station kommt und das teilweise überschreibt. Ich habe im Pihole unter DHCP auch ipv6 als DNS gesetzt, dieser scheint aber nicht zu greifen. Eine Einstellung im DHCPv6 am Router zu deaktivieren finde ich leider nicht.
 
Der DHCPv6 Server der Vodafone Station lässt sich soweit ich weiß gar nicht deaktivieren. Selbst wenn man DHCPv4 abschaltet, vergibt die Box weiterhin IPv6. Da die meisten Betriebssysteme IPv6 priorisieren, wenn es verfügbar ist, umgehen sie damit leider den DNS, den sie via DHCPv4 bekommen haben. Gab schon mehrere Threads zu diesem Thema, u.a. diesen hier.

Vodafone hat die Kiste leider so zugenagelt, dass man pihole nicht sinnvoll nutzen kann. Da bleibt eigentlich nur der Tausch des Routers oder ggfs eine Routerkaskade, die aber ihre ganz eigenen Herausforderungen mit sich bringt.
 
  • Gefällt mir
Reaktionen: areiland und LukS
Danke für die Erklärung. Aber bekomme ich bei einem DHCPv6 Server nicht auch eine V6 Adresse? Bei meinem Leaktest werden mir neben meinem ausgewählten Google DNS vom Pihole ebenfalls v4 Adressen von Vodafone angezeigt.
 

Anhänge

  • Screenshot_20240515-224952.png
    Screenshot_20240515-224952.png
    162,9 KB · Aufrufe: 36
Das was auf dem Bild zu sehen ist, ist völlig normal. Nur einmal zur Erklärung, was dieser DNS Leaktest zeigt bzw. wofür er gut ist.
DNS Leaks sind eine Gefahr bei VPN Verbindungen. Sind VPNs nicht richtig konfiguriert kann es passieren, dass DNS Anfragen nicht durch den VPN geleitet werden. Bist du in einem fremden WLAN könnte der Besitzer also trotzdem verfolgen welche Websites du besuchst da die DNS Anfragen für ihn sichtbar sind. Ob das der Fall ist kann man mit diesem DNS Leaktester prüfen. Außerhalb von VPNs haben DNS Leaks keine Bedeutung weil der Traffic immer über das Netz läuft, mit dem du verbunden bist.

So deine Sorge war jetzt denke ich mal, dass dein PiHole nicht richtig funktioniert, weil du deinen ISP in der Liste siehst. Das ist aber richtig so. Du hast ja keine seperate Leitung zum Google DNS Server. Die DNS Anfrage geht also wie alles andere durchs Internet, also über deinen ISP. Der wird da dementsprechend immer stehen. Danach kommt Google. Also alles perfekt.
Z.b. bei meinem Pihole/Unbound Setup steht mein ISP als einziger Hop drin. Das liegt aber eben daran, dass Unbound die DNS Anfragen direkt an die DNS Rootserver stellt. Es gibt also kein Google, Cloudflare etc. dazwischen. Der ISP ist aber immer involviert, da der die Anfragen ja erst durch das Internet routet. Beim DNS Leaktest steht also bei nur meine eigene öffentliche IP Adresse als DNS Server drin, weil ich mein eigener DNS Anbieter bin. Nur gehört die eben dem ISP also steht deren Name dahinter. Und bei dir der ISP und Google.

Privatsphäre vor deinem ISP gewinnst du also durch einen anderen hinterlegten DNS Server im PiHole nicht. Letztenendes sieht er ja aber sowieso welche Websites du besuchst also ist das im Grunde eh egal.

TLDR: DNS Leaktest: ISP IP -> Google IP = richtig.

Nun zu der DHCP Geschichte. Wenn es geht schalte DHCPV6 einfach komplett aus. Das braucht man im Heimnetz einfach nicht, außer man möchte aus persönlichen Gründen ausschließlich IPV6 im Heimnetz nutzen. Zweigleisig im Heimnetz zu fahren macht keinen Sinn und IPV4 ist für die meisten mehr als ausreichend.
Alles was in deinem Heimnetz passiert hat auch nichts mit öffentlichen IPV4 bzw. IPV6 Adressen zu tun. Du kannst eine öffentliche IPV6 Adresse haben und trotzdem mit IPV4 im Heimnetz arbeiten. Deswegen einfach bei IPV4 bleiben, dann sollte es auch keine Probleme mit dem PiHole geben.

Meine Vermutung ist auch, dass dein Setup tatsächlich normal funktioniert.
Probier doch einfach mal eine vom ISP gesperrte Website aufzurufen. Verlinke ich jetzt hier mal nicht ;) Läuft der DNS Traffic über den PiHole sollte das klappen. Läuft er über deinen ISP wirst du die Sperrseite sehen. Oder du überwacht einfach den Query Log im PiHole beim öffnen einer Website. Die DNS Anfrage sollte da dann sichtbar sein. Eine bessere Methode fällt mir zum Testen am Smartphone jetzt nicht ein. Am PC könnte man noch über CMD den PiHole testen.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: areiland und Chibi88
Danke für deine ausführliche Erklärung. Das mit dem VPN wusste ich nicht und beruhigt mich ein bisschen.

Problem scheint aber wirklich zu sein, dass die DNS abfragen über Vodafone läuft und nicht komplett über den Pihole. Das konnte ich feststellen, als ich wie von dir empfohlen versucht hatte eine gesperrte Website aufzurufen. Der Aufruf der Website funktioniert nicht.

Vermutlich liegt es daran, dass eben noch DHCPv6 vom ISP im Spiel ist, welches man bei der VS nicht deaktivieren kann und ich in den Einstellungen bei Android unter DNS nicht nur meine ipv4 Pihole Adresse drin habe, sondern noch eine ipv6 Adresse, die von Vodafone kommt.

Ich habe zwei Fragen:

Kann ich das irgendwie umgehen? Ich habe versucht einen lokalen DNS Eintrag im Pihole anzulegen, der auf den Pihole zeigt. Leider löst die Adresse im Browser nicht auf und ich weiß nicht wieso. Liegt das an Vodafone? Grund ist, dass ich versuchen wollte den lokalen DNS Eintrag unter "privater DNS" bei Android zu hinterlegen.

Wenn ich mir eine Fritzbox bei Vodafone Miete: Hat diese Einschränkung gegenüber eine selbst gekaufte? Sind dort ebenfalls Funktionen gesperrt?
 
Chibi88 schrieb:
Vermutlich liegt es daran, dass eben noch DHCPv6 vom ISP im Spiel ist, welches man bei der VS nicht deaktivieren kann und ich in den Einstellungen bei Android unter DNS nicht nur meine ipv4 Pihole Adresse drin habe, sondern noch eine ipv6 Adresse, die von Vodafone kommt.
Das wird mutmaßlich die IPv6 der Vodafone Station sein.

Chibi88 schrieb:
Kann ich das irgendwie umgehen? Ich habe versucht einen lokalen DNS Eintrag im Pihole anzulegen, der auf den Pihole zeigt. Leider löst die Adresse im Browser nicht auf und ich weiß nicht wieso. Liegt das an Vodafone? Grund ist, dass ich versuchen wollte den lokalen DNS Eintrag unter "privater DNS" bei Android zu hinterlegen.
Keine Ahnung was du dir davon erhofft hast, aber das hat mit dem Problem überhaupt nichts zu tun. Es geht nicht darum, dass pihole nicht funktioniert oder nicht erreicht werden kann, sondern darum, dass pihole nicht benutzt wird.

Wenn IPv4 und IPv6 zur Verfügung stehen, wird in der Regel IPv6 bevorzugt. Steht nun also pihole als DNSv4 drin und die Vodafone Station als DNSv6, wird eben letztere gefragt.

Ob pihole an sich ordnungsgemäß funktioniert, kann man mit einem direkten Test ausprobieren. Am (Windows-)PC geht das so:

Start --> cmd --> nslookup computerbase.de hier.die.ip.von.pihole

Lässt man den letzten Parameter weg, wird der im OS hinterlegte DNS verwendet und dann eben wieder IPv6 bevorzugt.

Chibi88 schrieb:
Wenn ich mir eine Fritzbox bei Vodafone Miete: Hat diese Einschränkung gegenüber eine selbst gekaufte? Sind dort ebenfalls Funktionen gesperrt?
Ob Vodafone gemieteten Boxxen ein Branding verpasst, weiß ich nicht. Dann würde ich mir an deiner Stelle aber eher eine Fritzbox kaufen. Fritzboxxen sind immer mal wieder im Angebot oder man bekommt einige Modelle auch ganz gut gebraucht.



In der aktuellen Situation sehe ich nur drei Optionen:

1) Router tauschen
2) Zweiten Router hinter die Vodafone Station setzen (Routerkaskade) --> Doppel-NAT unschön, aber naja
3) IPv6 an den Endgeräten abschalten --> Notlösung
 
  • Gefällt mir
Reaktionen: Chibi88
Danke für dein Feedback, aber ich verstehe folgenden Punkt nicht. Du sagst, es wird ipv6 bevorzugt. Schön und gut, aber wieso funktioniert das Blocking dann auf anderen Geräten wie TV und Windows / Linux Clients? Nach der Logik, müssten die ja auch die V6 Adresse bevorzugen, aber das ist nicht der fall.

Edit: ich erhoffe mir durch die lokale DNS Auflösung in Kombination mit dem privaten DNS von Android, dass ipv4 vom Pihole erzwungen wird.
 
Ist dort denn IPv6 überhaupt aktiv? Gerade bei TVs und so wird das wahrscheinlich gar nicht unterstützt.

Guck dir am PC mal mit ipconfig /all an welche DNS eingetragen sind.
Nun machst du nslookup computerbase.de und schaust welcher DNS verwendet wird.

Wenn's IPv6 ist, kannst du entweder in der Vodafone Station gucken welche IPv6 sie hat (ka wo man das sehen kann) oder du schaust mit arp -a nach eben dieser IPv6 und siehst dir die MAC-Adresse an, die mit der MAC hinter der IPv4 der Station übereinstimmen müsste.
 
Hey @Raijin ,

anbei ein Auszug:

1715858798272.png



127.0.0.53 verwirrt mich etwas. Ich kenn nur 127.0.0.1.

Müsste hier nicht die IP meines Piholes zu sehen sein? Ich vermute, dieser wird auf Linux genutzt, da ich über DHCP ebenfalls eine IP Adresse vom Pihole bekomme.

Arp -a gibt mir folgendes aus:

1715858948725.png


Grüße

Edit:

1715859139646.png


Nach meinem Verständnis dürfte es bei Linux doch auch nicht funktionieren, aber das DNS Blocking über den Pihole läuft, nur eben auf Android nicht bzw. nur sporadisch.

Edit 2:

1715859401785.png


Muss ich auf der rechten Seite den Pihole unter Custom angeben? AFAIK nicht, oder?
 
Zuletzt bearbeitet:
Chibi88 schrieb:
Kann ich das irgendwie umgehen?
Wie Raijin schon schrieb, FRITZ!Box Cable holen. Oder Vodafone Station in Bridge-Modus versetzen (lassen) und dahinter einen eigenen Router. In Pi-hole hast Du neben der Option „DHCP server enabled“ auch die Option „Enable IPv6 Support (SLAAC + RA)“. Was dabei genau passiert, müsstest Du testen, denn selbst habe ich das nicht benötigt und ich fand auch keine Dokumentation dazu, nur dies … (erstes Zitat besser nicht lesen, für Dich geht es ab dem zweiten Zitat los)
Chibi88 schrieb:
Ich vermute, dieser wird auf Linux genutzt
Weil manche Linux-Distributionen inzwischen interne DNS-Resolver haben, siehst Du den aktuellen vermutlich am Einfachsten mittels Wireshark – braucht Administratoren-Rechte oder der lokale Nutzer braucht Schnittstellen-Rechte.
Chibi88 schrieb:
In den betroffenen Fällen. Oder anders formuliert: Nicht immer, reines Glücksspiel.
 
Chibi88 schrieb:
127.0.0.53 verwirrt mich etwas. Ich kenn nur 127.0.0.1.
Sorry, ich hätte dazuschreiben sollen, dass die Kommandos für Windows gedacht sind, weil sich die Ausgaben wie du schon gemerkt hast ein wenig unterscheiden, wenn sie unter Linux ausgeführt werden.

127.0.0.53 ist sozusagen eine Linux-Eigenheit. Das ist auch eine localhost- bzw. loopback-Adresse und zeigt also auf das System selbst und einen dort laufenden DNS-Resolver, in der Regel systemd-resolved. Dieser Resolver ist letztendlich derjenige, der dann die Namensauflösung vornimmt bzw. an übergeordnete DNS weiterleitet. Das sieht man bei nslookup aber nicht, weil nslookup nur die Antwort vom 1. DNS zeigt, in dem Falle also 127.0.0.53, weil sich das System sozusagen als erstes selbst fragt. Würde man zeitgleich tcpdump laufen lassen, könnte man allerdings den eigentlich DNS-Query sehen, der daraufhin das System nach draußen verlässt und dann ggfs Richtung pihole geht.

Unter Windows hat man aber keinen DNS-Resolver in dieser Form, sondern nur einen dummen DNS-Forwarder. Der macht also selbst nix und nimmt auch keine (lokalen) DNS-Queries entgegen, sondern leitet stur und ohne nachzufragen an den System-DNS weiter, wenn er in der hosts-Datei oder dem Cache keinen Eintrag findet.


Chibi88 schrieb:
Arp -a gibt mir folgendes aus:
Da dort keinerlei IPv6 zu sehen ist, mutmaße ich, dass in dem System gar kein IPv6 aktiv ist. Mit ifconfig bzw. ip kann man sich die IP-Einstellungen der Netzwerkadapter anschauen. Dort müsste entweder eine IPv6 auftauchen oder eben nicht. Wenn nicht, ist das System IPv4 only und damit würde es auch nicht vom DHCPv6 der Vodafone Station beeinflusst werden.


Chibi88 schrieb:
Muss ich auf der rechten Seite den Pihole unter Custom angeben?
Nein, sonst beißt sich die Katze in den Schwanz. Der Upstream-DNS ist derjenige, an den pihole weiterleitet, wenn pihole selbst keine Antwort parat hat, also die angefragte Domain nicht in der Filterliste steht. Würde sich pihole selbst fragen, dreht sich alles im Kreis.
 
Raijin schrieb:
127.0.0.53 ist sozusagen eine Linux-Eigenheit.
Nee, auch nicht sozusagen. Der komplette 127.0.0.0/8 Block ist loopback. So steht es seit 1986 in den IP-Zuweisungen. Funktioniert auch auf Windows problemlos:
Code:
>ping 127.12.34.56

Pinging 127.12.34.56 with 32 bytes of data:
Reply from 127.12.34.56: bytes=32 time<1ms TTL=128
Reply from 127.12.34.56: bytes=32 time<1ms TTL=128
Reply from 127.12.34.56: bytes=32 time<1ms TTL=128
Reply from 127.12.34.56: bytes=32 time<1ms TTL=128
resolved wollte keinem vom Nutzer installierten DNS-Server im Weg sein, aber oft kann man für einen DNS-Server nur eine IP angeben, keinen Port. Daher musste eine andere IP her. Unter IPv6 gibt es leider nur noch eine einzige loopback-Adresse, ::1.
 
Marco01_809 schrieb:
Nee, auch nicht sozusagen
Bitte nicht Teile eines Beitrags aus dem Kontext reißen, um deinen Punkt anzubringen. Mir ging es dabei explizit um 127.0.0.53, eben genau die loopback IP, die unter Linux für den internen DNS-Resolver verwendet wird, wie ich verlinkt hatte zB systemd-resolved. Unter Windows ist sowas alles andere als üblich und deswegen habe ich 127.0.0.53 speziell auf Linux bezogen.

Bevor du also meinst, mich korrigieren zu müssen, lies den Beitrag komplett und im Kontext. Danke.
 
In deinem Beitrag hört es sich an als ob es die IP 127.0.0.53 nur auf Linux gibt bzw. nur dort eine loopback Adresse ist. Fand das durchaus missverständlich und habe es daher mit Hintergrundinformationen angereichert. In meinem Beitrag gab es keinen Angriff gab sondern nur Fakten also alles geschmeidig
 
Zurück
Oben