Due to changes in my living situation, I’ve switched from running Pi-Hole on a headless machine on my network, to running it locally on my main PC; which runs EndeavourOS.
Pi-Hole is working well; with my networking settings set to use 127.0.0.1 and ::1 to point to localhost for DNS, but I can’t boot Waydroid unless I either comment out the dnsmasq lines in /usr/lib/waydroid/data/scripts/waydroid-net.sh, or stop pihole-FTL.service.
Stopping pihole-FTL.service, of course stops Pi-Hole, and commenting out those dnsmasq lines disables networking in Waydroid.
I’d like to be able to get Waydroid running with networking, and preferably get it to use Pi-Hole as its DNS resolver. I understand the reason Waydroid won’t boot normally in my case is because it does some weird stuff with dnsmasq and port 53, which conflicts with Pi-Hole.
I should also mention that I’m also using ufw for a firewall, with default deny incoming and default allow outgoing set.
Why not run pi-hole in a docker/podman/lxc container/VM?
Would that make this easier? I have no experience using things like Docker or Podman.
It would make it easier in that way that docker/podman container services are on an seperate internal network, this means that waydroid and pihole will not come in conflict over the dns port on localhost anymore.
I see. Would I be able to set this up so that only my machine is able to access this? I’m sharing a LAN with family and don’t 100% trust all the devices on the network.
The docker network is internal to the Pc, so access is by default linited to the machine. External access would need port mappings or other means of forwarding to be configured.
Keep in mind docker will bypass iptables and ufw firewall rules. Podman does not afaik
Isn’t Pi-Hole usually expected to be accessed by other machines on LAN though? I’ve been looking at the official Docker compose file (https://github.com/pi-hole/docker-pi-hole/#quick-start), and I wonder what I’d need to change to make it accessible only to my machine and other VMs running on it.
I haven’t used pihole in some time, but I believe it has an option where you can set allowed networks and it will ignore requests from other devices.
Pi-Hole has an option to bind only to a specific interface, if that’s what you’re talking about, but that’s for Pi-Hole itself and not the Docker container it’s running under.



