How do I use Pi-hole's built in DHCP server (and why would I want to)?


#1

Using Your Existing Router For Network-wide Ad Blocking

You might not need to use Pi-hole’s DHCP server: In many home environments, your router also functions as your DHCP server. In this case, you can often set Pi-hole to be the DNS server for your network clients in the router’s DHCP (or LAN) settings page, which allows all of your network clients to block ads simply by connecting to the network.

Setting it up this way is also what makes Pi-hole very powerful for network-wide ad blocking.

When You Cannot Change LAN/DHCP Options In Your Router

Some routers (and even some Internet Service Providers) do not let you change these settings. In this case, using Pi-hole’s DHCP server is very advantageous because you can still get automatic, network-wide ad ad blocking even if you can’t make the necessary changes on existing hardware.

To Use Pi-hole’s DHCP Server

  1. Disable the DHCP server on your router (this is a critical stepyou will see red warning text when you enable the checkbox)
  2. Enable Pi-hole’s DHCP server on the Settings page

Technically, this is all you need to do, as DHCP is meant to be easy for clients to get an address; if a DHCP server is on your network, network devices will find it. However, there are several additional options you can set for your DHCP server (and it’s not just limited to what’s currently available in our Web interface if you know how to edit the dnsmasq config file).

Advanced DHCP Settings

These settings are similar to what you would find on your router’s DHCP server, so if you have ever adjusted those settings, these will look familiar.

IPv6, SLAAC, And RA

Without getting too technical, enabling SLAAC and RA allows your network devices to auto assign themselves an IPv6 address.

DHCP Lease Time

This setting is how long your network devices keep their address assigned by DHCP. This will vary depending on your network.

DHCP Leases

This section allows you to assign DHCP reservations for your network devices. Enter the MAC address of the device and the IP address you want it to have. You can also give it a name so you can easily see what clients are accessing what domains via the query log. So instead of seeing just IP addresses on the dashboard and query log, you can see the client name.


Unable to Enable Pi Hole DHCP Server. Internet Access Lost
No internet on some devices after setting router to use Pi Hole as DNS server
Pi-Hole Not Blocking Ads on Clean Install with Asus router
Pihole DHCP writes to hosts file as well
Gargoyle router firmware
PiHole statistics show it working, but it doesn't block basic ads
Problems with DHCP/DNS settings (stock router), PC over LAN and Smartphone over WLAN connections
Machine Name List
Instal of PiHole on DLink Router not working
Pi-hole as DHCP server blocks nothing
It Just doesn't seem to work
Why are Adverts on Some Domains Not Blocked?
DHCP Settings on Router
Pi-Hole not blocking anything
Pihole Not Working on Other Devices using a ZyXEL router
Can't use pi-hole DNS (or any DNS for that matter) on my Netgear C6300 router
Can't access /admin (another webpage running there already)
Pihole stops blocking ads
Very new user
Pfsense/pi-hole - all requests showing as localhost
IP Telefon geht nicht mehr
Pihole Not Working on Other Devices using a ZyXEL router
New Pi-Hole questions
Pihole is not working - Help
Ads not blocked from Ubuntu VM after install. Perhaps router configuration?
Pi hole working (sort of, but not all the time!)
Guide for less problematic setup?
How to configure my D-LINK DSL-225 DHCP Server?
Pi-hole device can not access internet
Can't access internet v3.2.1 - Other devices OK
PI admin showing spinning wheel
Router died, modem + pihole = slow?
Manually DNS windows, have to manually change DNS every day
Pi-hole not receiving queries?
PI works when set to DNS on device, unable to resolve when configured on router
Pi Hole running fine, DNS server not showing pi hole IP. VPN also not working
Too many queries made when 'Conditional Forwarding' is enabled
FTL is offline after update to 4.0
Majority of traffic through one client (Eero settings)
Didn't work
No Internet Access
Setting up Pi-Hole on Asus router
piHole with Netgear R6400 using Tomato
Hardware/Software Requirements
IPv6 & Armbian
Display all clients in Top List Clients
FTL issues: Connection refused. Is FTL running?
Www.googleadservices.com 8,894k denied requests (while asleep?)
No access to admin page after PiHole installation
Pihole stops blocking ads
What can I do if I can't change manually set the DNS server on my router?
#2

Hi, I am trying to see if this works for two networks? I use DietPi (Pi-hole Version v3.1.4 Web Interface Version v3.1 FTL Version v2.10) However, I don’t see anything in the gui where I can add DHCP service for 192.168.0.0/24 and 192.168.2.0/24.

Thanks


#3

We have not exposed those kind of settings, if dnsmasq even supports it. Search for information on dnsmasq’s DHCP config options.


#4

9 posts were split to a new topic: Remove DHCP Leases


Dnsmasq daemon is failed
#5

Is it possible to enable static DHCP entries where I can pick different default gateway per MAC address?
I need a few devices to be routed through VPN appliance (another Raspberry Pi) which is not my regular firewall.


#6

We still use dnsmasq as the base program, so anything that you can set up via dnsmasq configurations would work. That would be something that could be done, just create two DHCP pools and assign the MAC to either pool, it would be manually done through the configuration files, but there are a number of guides out there that explain the DHCP pools with dnsmasq as it’s a really powerful program.


#7

I’m thinking of changing the config files manually for now but it would be really good to have this option in the management interface.


#8

You can open a Feature Request in that category and we’ll have it vote-able by the community.


#9

Thanks Dan. Will do.


#10

Can I still just add my own dnsmasq config options in now that you’ve forked it for FTLDNS? I’ve had dnsmasq be my dns and dhcp server for ages and I’d like to keep my dhcp rules and subnets etc.

Where do I drop in dnsmasq config options? Do they still live in /etc/dnsmasq.d/?


#11

Yup.

And _FTL_DNS is just our fork of dnsmasq so any custom configs that work with dnsmasq will work with Pi-hole.


#12

I red the topic very carefully, and I don’t understand how can I do the following:
One of my pc in the network contain the pi-hole installation, and I want to relay all the network from my router to this pc, in order to use pi-hole for all my home network, instead of adding middle machine, like PI between the router and the modem to do pretty much the same.

  • Consider that I don’t have the option to set VPN/DNS servers on my home router, I only have the option to set relay server.
    Can you please explain my what should I do?

Thanks.


#13

Not quite sure what you mean by this.

You coud disable the router’s DHCP server (that is a default, standard option available in all routers) and enable the DHCP server in the admin interface (of Pi-hole). That will ensure that all clients connecting to the network, LAN or WiFi will all get the Pi-hole IP as the DNS server.


#14

3 posts were split to a new topic: DHCP server custom configuration