I've had pi-hole for quite a while but something that hassled me was the choice between either running it as my DHCP server or forwarding all upstream queries through my router (which is my DHCP server today) and losing DNSSEC, performance and so on.
Today I finally got around to testing and implementing conditional forwarding for my pi-hole!
Step 1 - Create a custom configuration file, in my case it's called
sudo vim /etc/dnsmasq.d/05-custom.conf
Step 2 - Into the file place the following
Essentially this tells DNSMASQ (which is the current backend DNS forwarder for pi-hole) to forward all requests for domains under local (eg - myiphone.local) to your router (eg - 192.168.1.1). Change the values to suit your network.
Step 3 - In the pi-hole gui feel free to change your upstream away from your router, to GoogleDNS or something else
Step 4 - Restart DNS on the pi-hole using
pihole restartdns or the web ui
You're done. You can verify the effect using query logs and also using the pie chart on the pi-hole admin page which will start to change to show your new upstream whilst still showing requests to your router for local names.
Also if you want to override some public DNS (for say, running your own Steam cache) just use
address= instead of
Note the above list is incomplete, it includes
content1.steampowered.com and all