Hallo zusammen,
ich versuche aktuell auf meinem Raspi 4 innerhalb einer Docker Installation ein Adguard aufzusetzen.
Soweit klappt auch zunächst alles. Allerdings möchte ich den Container nicht nur mit der IPv4 Adresse ansprechen, sondern auch mit einer IPv6 Adresse, damit ich in meiner FritzBox auch die IPv6 DNS Adresse auf Adguard ändern kann.
Im folgenden kurz, welchen Fortschritt ich bereits erzielt habe und wo es noch hakt.
Ich möchte Adguard gerne als Stack aufsetzen im Portainer, also quasi mittels docker compose Definition.
Der aktuelle Stack dafür sieht derzeit wie folgt aus:
Das IPv6 Subnet fdd3:4ddf:faef::/64 habe ich beliebig gewählt und mir online generieren lassen.
Aus einem Tutorial habe ich das "docker_vlan_bridge" Netz entnommen, welches zur Kommunikation mit dem Host (Raspi) dient.
Auf der OS-Ebene des Raspi habe ich folgendes Skript hinterlegt:
Dieses Skript wird mittels systemd automatisch beim Systemstart ausgeführt und erstellt ein Bridge Macvlan Netzwerk für die Kommunikation zwischen Host (Raspi) und dem Docker Container (Adguard).
Die Kommunikation mittels IPv4 funktioniert auch wunderbar, nur IPv6 will nicht so recht.
Vom Docker Host aus kann ich die Adresse fdd3:4ddf:faef::250 pingen.
Vom Container aus geht ein Ping auf fdd3:4ddf:faef::1 jedoch nicht.
Von einem anderen Rechner im LAN geht ein Ping auf die fdd3:4ddf:faef::250 auch nicht.
Des Weiteren frage ich mich, ob ich das "docker_vlan_bridge" Netzwerk benötige bzw. ob ich dort nicht auch die 192.168.1.254 als Adresse nutzen kann, wie beim der macvlan Bridge auf Raspi OS Ebene?
Eventuell kann mir hier jemand die Augen öffnen, an welcher Stelle ich gedanklich falsch abgebogen bin.
Vielen Dank im Voraus,
shirocko
ich versuche aktuell auf meinem Raspi 4 innerhalb einer Docker Installation ein Adguard aufzusetzen.
Soweit klappt auch zunächst alles. Allerdings möchte ich den Container nicht nur mit der IPv4 Adresse ansprechen, sondern auch mit einer IPv6 Adresse, damit ich in meiner FritzBox auch die IPv6 DNS Adresse auf Adguard ändern kann.
Im folgenden kurz, welchen Fortschritt ich bereits erzielt habe und wo es noch hakt.
Ich möchte Adguard gerne als Stack aufsetzen im Portainer, also quasi mittels docker compose Definition.
Der aktuelle Stack dafür sieht derzeit wie folgt aus:
Code:
---
version: "2.1"
services:
adguard:
container_name: adguard
image: adguard/adguardhome
ports:
- 53/tcp
- 53/udp
- 80/tcp
- 3000/tcp
- 67/udp
- 68/tcp
- 68/udp
- 443/tcp
- 853/tcp
volumes:
- adguard_work:/opt/adguardhome/work
- adguard_conf:/opt/adguardhome/conf
networks:
docker_macvlan:
ipv4_address: 192.168.1.250 # this IP will show as a device on your router
ipv6_address: fdd3:4ddf:faef::250
docker_vlan_bridge:
ipv4_address: 192.168.10.250 # Pick same last numbers as macvlan and use "vlan bridge subnet" (10)
restart: unless-stopped
# Here we define what networks are available to use by the services above
# Make sure to set the config of both macvlan and vlan_bridge as described in the guide.
networks:
docker_macvlan:
name: docker_macvlan
driver: macvlan
enable_ipv6: true
driver_opts:
parent: eth0
ipam:
config:
- subnet: 192.168.1.0/24 # Set to same subnet as your router and other devices
ip_range: 192.168.1.224/27 # Available range from 192 to 224.
gateway: 192.168.1.1 # This is your router IP
- subnet: fdd3:4ddf:faef::/64
gateway: fdd3:4ddf:faef::1
docker_vlan_bridge:
name: docker_vlan_bridge
driver: bridge
enable_ipv6: false
ipam:
config:
- subnet: 192.168.10.0/24 # subnet for all containers
ip_range: 192.168.10.224/27 # for easier use, set to same range as under macvlan (192 to 224 here)
gateway: 192.168.10.1 # for easier use, set to same last number as your router
# Here we define where to save the files that live outside the container
# Located under /var/lib/docker/volumes
volumes:
adguard_work:
name: adguard_work
adguard_conf:
name: adguard_conf
Das IPv6 Subnet fdd3:4ddf:faef::/64 habe ich beliebig gewählt und mir online generieren lassen.
Aus einem Tutorial habe ich das "docker_vlan_bridge" Netz entnommen, welches zur Kommunikation mit dem Host (Raspi) dient.
Auf der OS-Ebene des Raspi habe ich folgendes Skript hinterlegt:
Bash:
#!/bin/bash
sudo ip link add dockerconnector link eth0 type macvlan mode bridge
sudo ip addr add 192.168.1.254/32 dev dockerconnector
sudo ip addr add fdd3:4ddf:faef::254/64 dev dockerconnector
sudo ip link set dockerconnector up
sudo ip route add 192.168.1.224/27 dev dockerconnector
sudo ip route add fdd3:4ddf:faef::/64 dev dockerconnector
Dieses Skript wird mittels systemd automatisch beim Systemstart ausgeführt und erstellt ein Bridge Macvlan Netzwerk für die Kommunikation zwischen Host (Raspi) und dem Docker Container (Adguard).
Die Kommunikation mittels IPv4 funktioniert auch wunderbar, nur IPv6 will nicht so recht.
Vom Docker Host aus kann ich die Adresse fdd3:4ddf:faef::250 pingen.
Vom Container aus geht ein Ping auf fdd3:4ddf:faef::1 jedoch nicht.
Von einem anderen Rechner im LAN geht ein Ping auf die fdd3:4ddf:faef::250 auch nicht.
Des Weiteren frage ich mich, ob ich das "docker_vlan_bridge" Netzwerk benötige bzw. ob ich dort nicht auch die 192.168.1.254 als Adresse nutzen kann, wie beim der macvlan Bridge auf Raspi OS Ebene?
Eventuell kann mir hier jemand die Augen öffnen, an welcher Stelle ich gedanklich falsch abgebogen bin.
Vielen Dank im Voraus,
shirocko