Pi-hole should assign IPv4 addresses to all devices via DHCP without any issues. Devices should be able to obtain an IP address and connect to the internet seamlessly.
The Pi-hole DHCP server is enabled and correctly configured to offer IP addresses from 192.168.0.30 to 192.168.0.250.
The client receives a "Network is unreachable" error when attempting to send DHCP packets.
There are no firewall or SELinux rules blocking DHCP traffic.
From your debug log and the information presented, this looks like a problem with that particular client, and not with Pi-hole.
Your Pi-hole is the DHCP server, and is answering service calls:
*** [ DIAGNOSING ]: Discovering active DHCP servers (takes 10 seconds)
Scanning all your interfaces for DHCP servers
Timeout: 10 seconds
* Received 300 bytes from eth0:192.168.0.4
Offered IP address: 192.168.0.91
Server IP address: 192.168.0.4
Relay-agent IP address: N/A
BOOTP server: (empty)
BOOTP file: (empty)
DHCP options:
Message type: DHCPOFFER (2)
server-identifier: 192.168.0.4
lease-time: 86400 ( 1d )
renewal-time: 43200 ( 12h )
rebinding-time: 75600 ( 21h )
netmask: 255.255.255.0
broadcast: 192.168.0.255
dns-server: 192.168.0.4
domain-name: "lan"
router: 192.168.0.1
--- end of options ---
DHCP packets received on interface eth0: 1
If you assign a static IP on a client, that client won't request an IP from a DHCP server - you have told it what IP to use.
DHCP transactions are shown in the pihole.log at:
/var/log/pihole/pihole.log
Refresh the DHCP lease (after removing the static entry) on the client in question and then look in this log for the DHCP transactions from that client. Are any requests received? If so, what are the subsequent transactions (DHCPDISCOVER, DHCPOFFER , etc.)
May 17 19:07:01 dnsmasq[14662]: compile time options: IPv6 GNU-getopt no-DBus no-UBus no-i18n IDN DHCP DHCPv6 Lua TFTP no-conntrack ipset no-nftset auth cryptohash DNSSEC loop-detect inotify dumpfile
May 17 19:07:01 dnsmasq-dhcp[14662]: DHCP, IP range 192.168.0.20 -- 192.168.0.250, lease time 1d
May 17 19:07:06 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:d9:c8:1f
May 17 19:07:06 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.191 48:55:19:d9:c8:1f
May 17 19:07:09 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:db:28:68
May 17 19:07:09 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.182 48:55:19:db:28:68
May 17 19:07:09 dnsmasq-dhcp[14662]: DHCPREQUEST(eth0) 192.168.0.94 00:d8:61:59:6e:3e
May 17 19:07:09 dnsmasq-dhcp[14662]: DHCPACK(eth0) 192.168.0.94 00:d8:61:59:6e:3e DESKTOP-L42VPPK
May 17 19:07:09 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:d9:c8:1f
May 17 19:07:09 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.191 48:55:19:d9:c8:1f
May 17 19:07:13 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:d9:c6:1c
May 17 19:07:13 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.198 48:55:19:d9:c6:1c
May 17 19:07:13 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:db:28:68
May 17 19:07:13 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.182 48:55:19:db:28:68
May 17 19:07:14 dnsmasq[14662]: DHCP 192.168.0.94 is DESKTOP-L42VPPK.lan
May 17 19:07:17 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 60:74:f4:ae:ac:94
May 17 19:07:17 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.155 60:74:f4:ae:ac:94
May 17 19:07:17 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 60:74:f4:ae:ac:94
May 17 19:07:17 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.155 60:74:f4:ae:ac:94
May 17 19:07:17 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 60:74:f4:ae:ac:94
May 17 19:07:17 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.155 60:74:f4:ae:ac:94
May 17 19:07:17 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:d9:c8:1f
May 17 19:07:17 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.191 48:55:19:d9:c8:1f
May 17 19:07:17 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:db:28:68
May 17 19:07:17 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.182 48:55:19:db:28:68
May 17 19:07:19 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:d9:c8:1f
May 17 19:07:19 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.191 48:55:19:d9:c8:1f
May 17 19:07:19 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:db:28:68
May 17 19:07:19 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.182 48:55:19:db:28:68
May 17 19:07:21 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 60:74:f4:ae:ac:94
May 17 19:07:21 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.155 60:74:f4:ae:ac:94
May 17 19:07:22 dnsmasq-dhcp[14662]: DHCPREQUEST(eth0) 192.168.0.99 22:51:72:4a:b4:96
May 17 19:07:22 dnsmasq-dhcp[14662]: DHCPNAK(eth0) 192.168.0.99 22:51:72:4a:b4:96 wrong address
May 17 19:07:22 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 22:51:72:4a:b4:96
May 17 19:07:22 dnsmasq-dhcp[14662]: DHCPACK(eth0) 192.168.0.60 22:51:72:4a:b4:96 Pixel-7a
May 17 19:07:23 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 22:51:72:4a:b4:96
May 17 19:07:23 dnsmasq-dhcp[14662]: DHCPACK(eth0) 192.168.0.60 22:51:72:4a:b4:96 Pixel-7a
May 17 19:07:23 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:d9:c8:1f
May 17 19:07:23 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.191 48:55:19:d9:c8:1f
May 17 19:07:23 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:db:28:68
May 17 19:07:23 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.182 48:55:19:db:28:68
May 17 19:07:25 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 22:51:72:4a:b4:96
May 17 19:07:25 dnsmasq-dhcp[14662]: DHCPACK(eth0) 192.168.0.60 22:51:72:4a:b4:96 Pixel-7a
May 17 19:07:26 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:d9:c6:1c
May 17 19:07:26 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.198 48:55:19:d9:c6:1c
May 17 19:07:29 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 22:51:72:4a:b4:96
May 17 19:07:29 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.60 22:51:72:4a:b4:96
May 17 19:07:30 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:d9:c6:1c
May 17 19:07:30 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.198 48:55:19:d9:c6:1c
May 17 19:07:31 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:d9:c8:1f
May 17 19:07:31 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.191 48:55:19:d9:c8:1f
May 17 19:07:31 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:db:28:68
May 17 19:07:31 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.182 48:55:19:db:28:68
May 17 19:07:39 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 38:d5:7a:47:71:b9
May 17 19:07:39 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.150 38:d5:7a:47:71:b9
May 17 19:07:39 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 60:74:f4:ae:ac:94
May 17 19:07:39 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.155 60:74:f4:ae:ac:94
May 17 19:07:39 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 22:51:72:4a:b4:96
May 17 19:07:39 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.60 22:51:72:4a:b4:96
May 17 19:07:43 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:d9:c8:1f
May 17 19:07:43 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.191 48:55:19:d9:c8:1f
May 17 19:07:46 dnsmasq-dhcp[14662]: DHCPDISCOVER(eth0) 48:55:19:d9:c6:1c
May 17 19:07:46 dnsmasq-dhcp[14662]: DHCPOFFER(eth0) 192.168.0.198 48:55:19:d9:c6:1c
May 17 19:07:48 dnsmasq[14778]: compile time options: IPv6 GNU-getopt no-DBus no-UBus no-i18n IDN DHCP DHCPv6 Lua TFTP no-conntrack ipset no-nftset auth cryptohash DNSSEC loop-detect inotify dumpfile
May 17 19:07:48 dnsmasq-dhcp[14778]: DHCP, IP range 192.168.0.20 -- 192.168.0.250, lease time 1d
May 17 19:07:51 dnsmasq[14778]: DHCP 192.168.0.94 is DESKTOP-L42VPPK.lan
May 17 19:07:54 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 48:55:19:d9:c8:1f
May 17 19:07:54 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.191 48:55:19:d9:c8:1f
May 17 19:07:58 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 48:55:19:db:28:68
May 17 19:07:58 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.182 48:55:19:db:28:68
May 17 19:07:58 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 22:51:72:4a:b4:96
May 17 19:07:58 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.60 22:51:72:4a:b4:96
May 17 19:08:01 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 38:d5:7a:47:71:b9
May 17 19:08:01 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.150 38:d5:7a:47:71:b9
May 17 19:08:04 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 48:55:19:d9:c6:1c
May 17 19:08:04 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.198 48:55:19:d9:c6:1c
May 17 19:08:04 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 48:55:19:d9:c8:1f
May 17 19:08:04 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.191 48:55:19:d9:c8:1f
May 17 19:08:04 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 48:55:19:db:28:68
May 17 19:08:04 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.182 48:55:19:db:28:68
May 17 19:08:04 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 48:55:19:d9:c8:1f
May 17 19:08:04 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.191 48:55:19:d9:c8:1f
May 17 19:08:04 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 48:55:19:db:28:68
May 17 19:08:04 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.182 48:55:19:db:28:68
May 17 19:08:04 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 48:55:19:d9:c6:1c
May 17 19:08:04 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.198 48:55:19:d9:c6:1c
May 17 19:08:08 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 48:55:19:d9:c8:1f
May 17 19:08:08 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.191 48:55:19:d9:c8:1f
May 17 19:08:09 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 48:55:19:db:28:68
May 17 19:08:09 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.182 48:55:19:db:28:68
May 17 19:08:09 dnsmasq[14778]: DHCP 192.168.0.60 is Pixel-7a.lan
May 17 19:08:10 dnsmasq[14778]: DHCP 192.168.0.94 is DESKTOP-L42VPPK.lan
May 17 19:08:13 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 60:74:f4:ae:ac:94
May 17 19:08:13 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.155 60:74:f4:ae:ac:94
May 17 19:08:13 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 38:d5:7a:47:71:b9
May 17 19:08:13 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.150 38:d5:7a:47:71:b9
May 17 19:08:13 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 60:74:f4:ae:ac:94
May 17 19:08:13 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.155 60:74:f4:ae:ac:94
May 17 19:08:13 dnsmasq-dhcp[14778]: DHCPDISCOVER(eth0) 60:74:f4:ae:ac:94
May 17 19:08:13 dnsmasq-dhcp[14778]: DHCPOFFER(eth0) 192.168.0.155 60:74:f4:ae:ac:94
same thing happens. i think my gateway is blocking this for some reason.
i have a ZTE MC888A with standard config, except no DHCP enabled obviously.
I cant set the DNS to my pihole in the router settings apparently, there is no option for that.
There are no issues with your DHCP server, but there seem to be issues with (at least) two of your clients. Let me answer the two distinct parts you have been asking here independently:
You said your range is 192.168.0.30 - 192.168.0.250
but you client is trying to renew a lease with address 192.168.0.11:
.11 is outside of the allowed range .30 - .250 so the lease renewal attempt is rightfully blocked as ... the address not available
Now the range has changed, but that's not an issue here.
This is a different error message, it means that the device with MAC 22:51:72:4a:b4:96 is known and tried to renew the wrong address (192.168.0.99) - however, this is not the address we know it has!
As it failed with renewing, the client thereafter rightfully requests a new lease:
This time it received the address we already know it should have had the whole time: 192.168.0.60
From what it looks like to me, I wouldn't say your Pi-hole doesn't send the ACK, it's more the client does not receive it.
We have seen very similar behavior in the past with Google Nest and some other routers, may even be that ZTE was among those. The problem was that such routers often prevented forwarding DHCP/DNS packets and the solution has been to either replace the router altogether or buy a $15 WiFi router (eg TP-Link), put this one behind the existing router, and connect all devices to this new well-behaving router. If you maybe already have something like this available, it's surely worth a try.
Thank you so much, I will give it a try and buy a new router.
It seems like the router blocks this traffic for some reason. I also talked to my ISP and he told me that this issue does occure on some ZTE routers.