Help configuring Pi-hole as local DNS server without using its DHCP (using Kea DHCP instead)

Hi everyone,

I need help configuring Pi-hole to continue acting as a local DNS server without enabling its DHCP server.

In my setup:

  • I'm using Kea DHCP as my DHCP server.
  • My local domain is properly defined in Kea (e.g., home.local).
  • Pi-hole has a static IP address that is within the IP range managed by Kea.
  • I want Pi-hole to correctly resolve local hostnames (provided via Kea) and still function as the main DNS server for all clients on the network.

What’s the best way to make Pi-hole aware of the hostnames and IPs provided by Kea, without using Pi-hole’s built-in DHCP?

Any advice on how to set this up correctly is much appreciated!

Thanks in advance!

You should note that .local is the TLD reserved for the mDNS protocol, and should not be used with plain DNS.

That's what Pi-hole's Conditional Forwarding is for.
It is available in Expert mode only, and you'll find that section at Settings | DNS.

This will only work if KEA would inject hostnames in a co-located internal DNS server.

You can verify if that's the case by querying your KEA's IP for a hostname you expect it to know, e.g.

nslookup <hostname> <KEA.IP>

Substitute <hostname> and <KEA.IP> as required.