Technitium DNS Server v15.1.0 has been released with support for OIDC! Now you can use your preferred identity provider to log in to user accounts, and manage your DHCP/DNS deployments with approriately granular permissions controls.
I’ve played around with it, and safe to say that the SSO integration works well. I’ve written a guide to set it up against Kanidm here. There were some OIDC/clustering bugs in prior v15 releases, and with v15.1.0 they have been squashed and solved.
The major release of version 15 also include various important changes, such as the following highlights:
- A new API call for Prometheus metrics
- Query Logs apps can now follow live updates
- Codebase updated to .NET 10 runtime
- HTTP tokens are now accepted via the
Authorization: Bearer <token>header - Many other bugfixes, secfixes, and improvements…
Technitium is pretty great. Hope everyone enjoy the release :)


Has anyone used this and Pihole and have some thoughts on which they would use and why?
Currently using Pihole myself. For adblocking, and a local DNS server. I also have Unbound configured and installed which my Pihole uses.
Anyone have any insight on this before I work on spinning something like this up?
I migrated from pihole to technitium a few weeks ago and it was so smooth.
Native support for clustering is huge. I didn’t even realize how complex managing the pihole had gotten trying to get it to sync to multiple instances.
That’s good to hear!
One feature I wish I could find was automatic DNS record creation for new docker containers I spawn.
Can’t wait to check out Technitium.
Oh do I have a treat for you, check out DNSWeaver.
It’s designed to do exactly that, to automate creation of DNS records for container services. I use it with Traefik. It reads from the same labels that Traefik already uses to proxy services but if you already use another reverse proxy and don’t want to switch it supports dnsweaver-specific labels as well which are easy to add to your current deploys.
I used it both with pihole and technitium and actually used it to make the migration easier. Great tool.
Oh my. I am so thankful you shared this! I will be reading up on this and testing it out likely.
Currently I use Caddy. Which I eventually would like to automate Caddy with this: https://github.com/lucaslorentz/caddy-docker-proxy
Currently I build my own Caddy based off the official image with the cloudflare plugin
I’ve used both.
Pihole is fine for a standard replacement of DNS for record lookups with the ad blocking most ppl want. But pihole is just fancy dnsmasq, you can’t manage much more DNS than A records. (That was 4 years ago, though, things might have changed).
Technitium is a real DNS server with all the things DNS I supposed to be able to do. I use it for the zone transfers.
Performance is better than pihole, too, but that may also have changed.
With my Pihole setup I currently use A records and CNAMES for my local DNS entries. What interests me with Technitium is that it supports DoH, DoT, and DoQ. Which I would like to see if I could implement.
I remember a while back looking into setting up DoH or DoT with Unbound on my Pihole box, but that didn’t work well for me (likely a me issue.)
But I am constantly looking to improve my homelab setup.
I’m just barely okay at self hosting applications, so using Unbound together with Pi-hole poses a great challenge. Technitum DNS is a whole package and the GUI is user-friendly to me. But, after using Netbird on VPS (for the reverse proxy mostly), because of a different sub-domain being used, I think I don’t need Technitium anymore though it continues to work so I have no reason to change.
Pihole + unbound on the same box as my DNS has been super simple for me. I didnt do a lot of extra configuration for Unbound, I used mostly the guide that was on Pihole official documentation.
As for reverse proxy, I have Caddy setup. And to access my homelab I use wireguard.
Most of my services run on a separate box running docker.
I’ve woven most of it together bit by bit. I’m slowly upgrading different pieces and its lead me down a rabbit hole. So I found this post intriguing.
Biggest hurdle with Technitium for me is the lack of documentation. I can say the compose file they provided has lots of comments. That doesn’t solve for a few pieces for me though. Systemd-resolv uses port 53 on my host box, and I have to find out the ramifications for disabling that and using Technitium. That and I am unsure of what extra capabilities I have to grant that container. And I have to find out how adding it to my reverse proxy docker network.
So its gonna be trial and error I suppose! I’m looking forward to getting DoT or DoH or DoQ setup.
I couldn’t agree more about the lack of documentation for Technitium. Thank God it has an interface instead of command line only. Don’t know anything DoT or whatever. Guess I’m not using Technitium to it’s full potential. That said, I appreciate it being a total package of DNS server and adblocker.
I’ve used PiHole and have switched to Technitium. Basically there’s vastly more options available. A lot of DNS records and zones that simply isn’t available with PiHole.
Also much better support for more advanced protocols (DoH, DoT, …).
But to get the best out of it you do need to use the “Advanced Blocking app”, which is a sort of a plugin. And it doesn’t always play nice with defaults in terms of blockint.
It’s best if one uses one or another, also because of how temporary disabling works.
Sounds like I am going to dig into some documentation for Technitium.
When you mention the “Advanced Blocking App” can you provide a link that for more info by chance?
I had zero plans of running both, more of a situation where I would want to try Technitium and then switch once I know everything is working!
Thank you for the info!
It’s an addon that you enable/install inside Technitium, you only need to configure it in the Admin ui.
Perfect! I saw there were addons once I spun up a quick docker container for it. Though, I feel I may have a bit of configuring to do to get this working. My host server uses systemd-resolv so I may have to wrestle with that.
Thank you!
I never could get Technitium working correctly, it’s like there’s some switch you need to throw to actually get it to accept requests. I posted that and had a couple of other say the same thing. I didn’t spend a lot of time with it, IMO a DNS server should serve requests out of the box.
Went back to Unbound on my OPNsense router.
Yeah. I get more mileage with pFsense + unbound
And + pfBlockerNG
Absolutely. It’s quite effective.
Hi, the other comments have said it pretty well, but you can also check out my previous post for some of the other comparisons.
I went from Pihole > Adguard Home > Technitium, and stuck with the last one because it supports clustering (syncing data between nodes) and recursion (so no need for external Unbound). The interface is a bit complex and there is no dedicated documentation, but should be intuitive enough as you learn.
If you want something simpler, I think Adguard Home is a better choice than Pihole as it natively supports encrypted DNS protocol, and has a sleeker UI. But other than that Technitium is nice as you expand your homelab eventually.
Thank you for sharing the link to your previous post. Will definitely read up on that!
I think I will skip Adguard just due to not wanting a license.
I do wish they had more documentation on this stuff for Technitium.
Though it does seem like a cool product.
adguard home is foss (gpl3)
I may give this a shot and see how I like it. However, I am struggling with my systemd-resolvd service not wanting to disable.
I have used Pi-Hole but not Technitium. As I understand it, Technitium has some more options than that of Pi-Hole + Unbound that power users may appreciate.