Help with PiHole with RP3

Having some major difficulty getting Pihole to work with DietPi. Can someone walk through it with me? I could compensate for the time, please reach out if so. I’m central time btw

Thank you!

What is your setup? It’s generally very straight forward, so wihout a bit more detail of what you’ve done and what issues you’re facing it’s going to be tricky for us to help you.

Use your router to set your pi-hole server with a fixed IP (using the DHCP settings) and adjust the DNS server to point at the ip of the Pi-hole box. In general terms that’s all you need to do.

Acually Rothchild, I don’t think that’s quite what you’re supposed to do.

PiHole is a simple install using DietPi - like everything else is (thanks FourDee) but you need to configure either your computer(s) OR your router.

Depending your OS (Mac, Windows, Linux, BSD) this will vary quite a bit but essentially what you’re looking for is network settings. In there you’ll find stuff about IP (usually dynamic) and DNS which is also usually auto set by your router on a typical home installation.

If you can access your router settings you can switch “DCHP” OFF and let PiHole/DietPi do everything for you. This is usually the easiest solution if you have more than a couple of devices: phone, tablet, PC etc. However, it’s also the more fiddly option so I’ll tackle that in a momement.


When you find the option to switch your DNS - which will be in the form of a IP xx.xx.xx.xx you’ll need to enter the PiHole IP which is usually There are normall TWO DNS servers (one plus one more for redunancy) but there can be as few as one or up to three.

I say usually, because this is variable dependant on how DietPi is set up. Again, if you followed FourDee’s setup, you should be here by now but it’s worth checking that the Pi is at that address using ping from your command line or some network software if you have a tablet. This would look like (*nix, Mac OSX)

64 bytes from icmp_seq=1 ttl=64 time=0.268 ms
64 bytes from icmp_seq=2 ttl=64 time=0.294 ms
64 bytes from icmp_seq=3 ttl=64 time=0.233 ms

You press CTRL+C to stop it.

IF this doesn’t work, you’ll need to find out where your settings have gone awry. AngryIP Scanner ( is a great way to find out how your network is set up. It should find your Pi and tell you where it is for example.

Assuming it does, you should be able to connect to DietPi and PiHole using:


from any browser. If you don’t get the PiHole welcome screen… then again, something has gone wrong and you need to start over from the DietPi installer.

Assuming all is OK, nip back to your network settings, set that DNS to and enjoy!


This is the preferred solution but it’s a bit more complex. Not much, but it should be done with care and in one step since you can’t have more than one DHCP server on the (local) network at once.

  1. Log into your router and find the setting for DHCP server. Every router is different but there is usually a checkbox to allow you to switch it off. This server “leases” IP addresses to the machines on your network as they connect. Dead clever, dead easy, fire and forget. Without it, you have to set (and manage) fixed IPs for everything which is no fun I can tell you.

You can safely set this to OFF provided your leave your PC on for now as it will already have an IP address “leased” to it.

  1. Now log into the admin panel of PiHole and click SETTINGS on the left menu.

  2. Tick the checkbox for PiHole DCHP server and click SAVE (that’s important!)

  3. (optional) If you have a spare PC, laptop, tablet, etc. you can check everything is working by re-booting it and checking to see that it can acces the Internet.

  4. If all goes well, you can reboot your PC and enjoy mostly ad-free browsing from now on. Note that you will loses connectivity when DietPi is updating using this solution but that is usually quite quick.

Do let us know how you get on.

Thanks Marcdraco,

Good solid info there, although I can confirm that (at least on my EE supplied modem / router) I can continue to use it to serve up IPs via DHCP on the router whilst using pihole (attached to one of the ethernet sockets) as its DNS server (just put the pihole box’s address in the DNS box on the router). The only real downside of this approach is that all DNS requests come from one address (the router) so setting machines individually to directly take DNS from the pihole box is preferable for trouble shooting purposes.

Doing the DNS via the router also means that anyone who comes around and logs on to my WIFi will benefit from adblocking straight away and doesn’t need to adjust the settings on their device to get service.

Completely agree and thank you!

We’ll have to wait until the OP comes back to see if we can help any more. I really want to get more and more people on DietPi because it’s the one Distro that makes the Pi (and other SBCs) into a fearsome server like no other. DietPi and a couple of SBCs have revolutionised the way I work because I can leave the things running without worrying about my energy bill.

In fact, if I can find a way to improve the heatsink I plan on using it to keep my reptile cage warm to - and no, that’s not a joke!