Pi-hole DHCP

The issue I am facing:

I've enabled Pi-hole DHCP server but not all devices get DHCP leases. At least two devices (smart plugs) get no internet access. The problem is solved once i enable my modem's DHCP server.

Don't know how to troubleshoot it!

Details about my system:

Running on a docker (Raspbian) - all other dhcp servers are disabled

What I have changed since installing Pi-hole:

I have used more than a dozen Static DHCP leases configuration.

Did you renew the DHCP leases on the devices after you enabled Pi-hole DHCP?

The lease time is 8 hours and i did wait for more than 2 days! I also rebooted all devices!

DHCP uses broadcast messages - the client broadcasts a DHCP request, and the server broadcasts back the settings to use, which the client then applies to itself.

Broadcasts don't cross between subnets (i.e. routers don't automatically rebroadcast them to other subnets) so if your smart plugs are in a different subnet (commonly because you put them in a different VLAN) then they won't be able to communicate with the DHCP server. If this is your case, you need to see whether your router can do dhcp-relaying, in which case you need to set that up.

No subnets or different vlans here! everything is in 192.168.1.0 (255.255.255.0).

Question: If the ip used for MAC binding is lets say 192.168.1.100 does the dhcp range need to include that ip?

1 Like

I would say yes. Mac binding is just holding that IP for a specific Mac address. If its out of the DHCP Range of the server I cant see how it can reserve it.

Ok....i think that fixed things!!

No.
The DHCP pool is primarily (but not exclusively) reserved for dynamically allocated IPs, so any IP from that pool is guaranteed to not collide with static on-device assignments outside the pool range.

That doesn't preclude to configure a DHCP server to tie a DHCP lease reservation to any arbitrary IP from its subnet, regardless of that IP being inside or outside of the DHCP pool.

However, a DHCP server may decline or ignore a client's request for a certain IP if that specific IP is outside of its DHCP pool, offering a free IP from that pool instead.

I just want to say that I appreciate these nuggets of info. It made some things a bit clearer and its making me dig a bit more into dhcp. I learned more from that statement than several videos on "How DHCP works..."