Support for choice of resolver and/or Web server


Add the ability to choose your own resolver (Unbound, BIND, dnsmasq) and/or Web server (i.e. nginx, Apache, or lighttpd).

Help Us Beta Test FTLDNS

As another alternative, lighttpd should be able to listen only on one configured ip address, instead of :: and fallback to
That way you can run pihole on the same machine as another webserver listening on a different address.

The address may be in the same interface (e.g. eth0 = and eth0:0 =


Resolver choise does not matter to me nearly as much as beeing able to select between at least Apache and Lighttpd :slight_smile:


I guess that would be a really nice solution!


Even nicer would be if you could specify the listening address for both dnsmasq and lighttpd (or apache), and if the address isn’t on the default interface, it could be added as a second address. That way pihole doesn’t have to interfere with any services already running on the host.
(Context: I’m planning to monitor my energy meter with the same pi using a web-based interface. That interferes with a pihole listening on all interfaces :::80 and


This in not what is happening. Pi-hole listens only on a specific interface (e.g. eth0). You can achieve that very easily, but I guess you already know how to do it (if not, we can assist you). I don’t think that there is a real need for having it listen only to a specific IP. Looking at this thread, I attribute most votes for the choice of the webserver.


Alternatively one could set up lighttpd to listen on another port (since I fe have apache listening on port 80).
I use the port 8080 and a different document root for the webinterface.

I have written a script (no pull request yet as I want to make sure I follow
the correct procedure :slight_smile: )
which can be found here.


Don´t you run into this issue by doing so?


This is a parent feature request, which may be implemented via these two requests:


I agree with many, being able to select the webserver of our choice would be nice, particularly if it’s already up and running.

I was not terribly happy to find that my apache server was disturbed when I installed the admin panel (and lighttpd was installed without warning). The solution was simple, uninstall, then re-installed without the admin panel. But, it would be nice to have the panel, I guess, not really that important.

Though a simple message that a new webserver will be installed would be a nice short term solution.


Starting with v4.0, Pi-hole will be using _FTL_DNS, our fork of dnsmasq.


It would still be nice to have a choice of resolver.

Would prefer an option to stay with unforked dnsmasq.

Would prefer an option to use unbound with unforked dnsmasq


With maintaining our “own” resolver closely coupled into Pi-hole, this became unlikely.

Please elaborate on the reasons for this. Maybe we can assist you with something you think cannot be realized with pihole-FTL.

This seems unrelated. unbound would be installed independently anyway (like I described here) and will work exactly the same with dnsmasq and pihole-FTL.


That setup along with OpenVPN is working out great for me. Added a bit more security though; the Pi hasn’t got access to anything but the VPNs address until OpenVPN is connected, then dnsmasq fetches from unbound.
Hardly puts any strain in the Pi even.