PiHole im Docker auf QNAP Kein IPv6?
Nabend alle zusammen, ich stehe vor einem Problem und komme irgendwie nicht weiter.
Ich habe gerade PiHole als Dockerimage auf meinem QNAP Nas installiert.
Dieses läuft nach ein paar Anlaufschwierigkeiten auch einwandfrei, nur leider wird mir im Webinterface von PiHole keine IPv6 Adresse angezeigt, obwohl sowohl in den Container Options IPv6 enabled als auch in PiHole aktiviert ist.
Wenn ich folgendes Ausführe, scheint es so, dass die Anfrage direkt über die FritzBox und nicht über PiHole läuft:
nslookup googleadservices.com
Server: fritz.box
Address: fd00::cece:1eff:fe73:xxxx
Ich weiß leider nicht weiter, wie kriege ich hier IPv6 zum laufen, sodass ich die Adresse in meine FritzBox eintragen kann?
Danke für jeden Tipp im Voraus
Liebe Grüße
PS: Ich verwende folgendes Image: https://github.com/pi-hole/docker-pi-hole
Ich habe gerade PiHole als Dockerimage auf meinem QNAP Nas installiert.
Dieses läuft nach ein paar Anlaufschwierigkeiten auch einwandfrei, nur leider wird mir im Webinterface von PiHole keine IPv6 Adresse angezeigt, obwohl sowohl in den Container Options IPv6 enabled als auch in PiHole aktiviert ist.
Wenn ich folgendes Ausführe, scheint es so, dass die Anfrage direkt über die FritzBox und nicht über PiHole läuft:
nslookup googleadservices.com
Server: fritz.box
Address: fd00::cece:1eff:fe73:xxxx
Ich weiß leider nicht weiter, wie kriege ich hier IPv6 zum laufen, sodass ich die Adresse in meine FritzBox eintragen kann?
Danke für jeden Tipp im Voraus
Liebe Grüße
PS: Ich verwende folgendes Image: https://github.com/pi-hole/docker-pi-hole
Please also mark the comments that contributed to the solution of the article
Content-ID: 389497
Url: https://administrator.de/contentid/389497
Printed on: December 14, 2024 at 19:12 o'clock
8 Comments
Latest comment
Guten Abend,
Hast du den Docker Daemon für IPv6 eingerichtet?
Wie sieht deine Netzwerkkonfiguration des Docker Netzwerks aus? Hast du die Bridge so wie hier beschrieben eingerichtet?
https://docs.docker.com/network/bridge/#use-ipv6
Das rechte Bild zeigt dir die Environment Variablen des Containers an.
Das linke Bild zeigt die Netzwerkoptionen. Ob bei der Bridge IPv6 Konfiguriert ist, kann man anhand des GUIs nicht sagen. Machs daher über CLI.
Keins der Bilder zeigt, ob überhaupt beim Docker Daemon IPv6 aktiviert wurde.
Siehe auch:
https://docs.docker.com/v17.09/engine/userguide/networking/default_netwo ...
Viele Grüße,
Exception
Hast du den Docker Daemon für IPv6 eingerichtet?
Wie sieht deine Netzwerkkonfiguration des Docker Netzwerks aus? Hast du die Bridge so wie hier beschrieben eingerichtet?
https://docs.docker.com/network/bridge/#use-ipv6
obwohl sowohl in den Container Options IPv6 enabled als auch in PiHole aktiviert ist.
Das rechte Bild zeigt dir die Environment Variablen des Containers an.
Das linke Bild zeigt die Netzwerkoptionen. Ob bei der Bridge IPv6 Konfiguriert ist, kann man anhand des GUIs nicht sagen. Machs daher über CLI.
Keins der Bilder zeigt, ob überhaupt beim Docker Daemon IPv6 aktiviert wurde.
Siehe auch:
https://docs.docker.com/v17.09/engine/userguide/networking/default_netwo ...
Viele Grüße,
Exception
Was weiterhin fragwürdig ist, ist die v6 Adressierung. Der TO hat dort ja irgendwie private Adressen fc00::/7 in Benutzung was falsch wäre, wenn die FritzBox an einem IPv6 Provider hängt.
Dort sollte er dann eine offizielle v6 IP bekommen via Prefix Delegation.
Normal müssten 2 IPv6 Adressen am PiHole aktiv sein, einmal die Link Local Adresse fe80::/64 und einmal die via Prefix Delegation. Ein ifconfig auf dem PiHole sollte das zeigen aber auch dazu hats beim TO ja leider nicht gereicht
Man kann nur vermuten das das Docker Image nicht per Bridging angebunden ist oder irgendwas am v6 Setup da falsch gelaufen ist.
Dort sollte er dann eine offizielle v6 IP bekommen via Prefix Delegation.
Normal müssten 2 IPv6 Adressen am PiHole aktiv sein, einmal die Link Local Adresse fe80::/64 und einmal die via Prefix Delegation. Ein ifconfig auf dem PiHole sollte das zeigen aber auch dazu hats beim TO ja leider nicht gereicht
Man kann nur vermuten das das Docker Image nicht per Bridging angebunden ist oder irgendwas am v6 Setup da falsch gelaufen ist.
Hi,
Ifconfig oder ähnliche Tools gibt es in produktiven Containern nicht und sollten auch niemals nachinstalliert werden. Sowas macht man über die Docker CLI. Dort stehen alle relevanten Informationen über den Container z.B. die IP Adresse eth. Wie bereits geschrieben sollte uns der TO mal die Container Konfiguration mitteilen. -> docker inspect <id>
Ich vermute, dass der TO den Docker Daemon und die Bridge überhaupt nicht für IPv6 eingerichtet hat.
Dazu mit docker network ls die richtige Bridge suchen und mit docker network inspect <id> die Einstellungen hier posten.
Zitat von @aqui:
Ein ifconfig auf dem PiHole sollte das zeigen aber auch dazu hats beim TO ja leider nicht gereicht
Man kann nur vermuten das das Docker Image nicht per Bridging angebunden ist oder irgendwas am v6 Setup da falsch gelaufen ist.
Ein ifconfig auf dem PiHole sollte das zeigen aber auch dazu hats beim TO ja leider nicht gereicht
Man kann nur vermuten das das Docker Image nicht per Bridging angebunden ist oder irgendwas am v6 Setup da falsch gelaufen ist.
Ifconfig oder ähnliche Tools gibt es in produktiven Containern nicht und sollten auch niemals nachinstalliert werden. Sowas macht man über die Docker CLI. Dort stehen alle relevanten Informationen über den Container z.B. die IP Adresse eth. Wie bereits geschrieben sollte uns der TO mal die Container Konfiguration mitteilen. -> docker inspect <id>
Ich vermute, dass der TO den Docker Daemon und die Bridge überhaupt nicht für IPv6 eingerichtet hat.
Dazu mit docker network ls die richtige Bridge suchen und mit docker network inspect <id> die Einstellungen hier posten.
Hallo,
wenn du das so gemacht hast, wie in der Dokumentation beschrieben ist, dann ja.
https://docs.docker.com/config/daemon/ipv6/
Anschließend musst du noch das Docker Netzwerk bzw. die Bridge anpassen mit dem öffentlichen IPv6 Subnetz, damit Docker dem Container eine Global Unicast Adresse zuweisen kann. Hab gerade selber noch mal in die Doku von den Entwicklern geschaut. Die empfehlen, die Einrichtung des Subnetzes auch über den Daemon zu machen. Dann wird Docker automatisch die Default Bridge (docker0) anpassen.
Also in der selben Datei noch den Parameter hinzufügen: "fixed-cidr-v6": "<subnet>/64"
Natürlich das <subnet> noch anpassen...
Anschließend den Docker Dienst Neustarten und den Container wieder starten. Und schon sollte er neben der IPv4 auch eine öffentliche IPv6 IP Adresse haben.
Viele Grüße,
Exception
wenn du das so gemacht hast, wie in der Dokumentation beschrieben ist, dann ja.
https://docs.docker.com/config/daemon/ipv6/
Anschließend musst du noch das Docker Netzwerk bzw. die Bridge anpassen mit dem öffentlichen IPv6 Subnetz, damit Docker dem Container eine Global Unicast Adresse zuweisen kann. Hab gerade selber noch mal in die Doku von den Entwicklern geschaut. Die empfehlen, die Einrichtung des Subnetzes auch über den Daemon zu machen. Dann wird Docker automatisch die Default Bridge (docker0) anpassen.
Also in der selben Datei noch den Parameter hinzufügen: "fixed-cidr-v6": "<subnet>/64"
Natürlich das <subnet> noch anpassen...
Anschließend den Docker Dienst Neustarten und den Container wieder starten. Und schon sollte er neben der IPv4 auch eine öffentliche IPv6 IP Adresse haben.
Viele Grüße,
Exception
Hallo,
Und warum geht das nicht?
Falls die QNAP NAS grundsätzlich Änderungen an dem System bzw. an den Diensten verweigert bzw. du keinen vollen Root Rechte hast, dann siehts schlecht aus. Dann entweder Pi Hole nur in IPv4 betreiben oder das Teil nicht auf dem NAS betreiben sondern auf ein zusätzliches Gerät z.B. Raspberry pi und dort betreiben.
Viele Grüße,
Exception
Ich kann einfach keine Änderungen am Deamon vornehmen..
Und warum geht das nicht?
Falls die QNAP NAS grundsätzlich Änderungen an dem System bzw. an den Diensten verweigert bzw. du keinen vollen Root Rechte hast, dann siehts schlecht aus. Dann entweder Pi Hole nur in IPv4 betreiben oder das Teil nicht auf dem NAS betreiben sondern auf ein zusätzliches Gerät z.B. Raspberry pi und dort betreiben.
Viele Grüße,
Exception