Technitium DNS - Ad blocking with zone transfer? reddit / selfhosted ---------------------------------------------------------------------- imissedthebutton · 2023-09-28 23:32 Hello all, I'm using Technitium in a docker container to manage my internal DNS, but rather than querying it directly, I have two Raspberry Pis that I zone transfer to and send all the client traffic to those. However, I don't see a way to add in the ad blocker functionality this way. I'd prefer to not query Technitium directly - is there a way to do this? ---------------------------------------------------------------------- hereisjames · 2023-09-28 23:54 What are you trying to achieve/what are you trying to prevent? The adblock lists on Technitium DNS are (or can be) the same as the Pihole ones. ---------------------------------------------------------------------- imissedthebutton · 2023-09-28 23:59 BIND DNS. And mostly hoping for the ad blocking, but having the redundancy of the Pis being queried. If the Docker host goes down, I'd like to have DNS not go down with it. ---------------------------------------------------------------------- hereisjames · 2023-09-29 01:03 I'm not clear what functionality you're getting out of BIND you wouldn't get out of running Technitium natively on the Pis, it doesn't need to be in a container. At the moment you have to use zone transfers to get sync between two Technitium DNS servers, but that's more or less your current situation anyway and some sort of sync is in the works for a future release. https://www.reddit.com/r/technitium/comments/pxvo1e/redundant_failover _setup/ Technitium will do your DHCP as well. ---------------------------------------------------------------------- imissedthebutton · 2023-09-29 01:51 Mostly wanting to have a hidden primary setup in Technitium with the Pis as secondary name servers. I definitely understand Technitium can run in the Pis, but yeah, it would need a separate sync setup and my setup works just fine, as is, except for the ad blocking. I appreciate the discussion, I think I just need to figure out my steps forward ---------------------------------------------------------------------- jusepal · 2023-09-29 03:04 You can run 2 or more instance of technitium on the same machine. 1 can act as your authoritative for your domain zone and never being known to others except your secondaries, and another 1 for recursive querying third party providers or as authoritative xafr-ing icann root zone. This guide tells you how to setup a second instance as authoritative syncing icann root zone https://blog.technitium.com/2021/07/running-root-server-locally-on- your-dns.html?m=1 ---------------------------------------------------------------------- ElevenNotes · 2023-09-29 05:21 PiHole (or adguard) > upstream DNS > bind authorative > bind resolver. ​ Yes you need three DNS servers to achieve this but they can all run on the same machine since its all containers anyway. ---------------------------------------------------------------------- Raithmir · 2023-09-29 06:26 Just run Technitium on the Pi? My primary instance is a VM. Secondary zone transfer to a second instance on the Pi. The Pi has a DHCP offer delay of half a second. ---------------------------------------------------------------------- imissedthebutton · 2023-09-29 14:02 I'm trying to specifically avoid running everything on one box - I want the redundancy of having multiple servers to be queried. ---------------------------------------------------------------------- imissedthebutton · 2023-09-29 14:03 But will the blocklists get transferred to the second Pi? That's the issue I'm having with trying to zone transfer to BIND currently ---------------------------------------------------------------------- Raithmir · 2023-09-29 14:07 It's just a second instance of Technitium, so I set the blocklist the same as on the primary. ---------------------------------------------------------------------- [deleted] · 2023-09-29 14:12 [deleted] ---------------------------------------------------------------------- ElevenNotes · 2023-09-29 14:12 keepalived for virtual IP, traefik on the same systems listening on that VIP (virtual IP). UDP:53 > traefik > DNS 1 & DNS 2 & DNS {n} Like this you have a virtual IP that will load balance all requests to all DNS servers.