Kea DHCP server assigns dynamic IP address instead of static
-
Initially reported at https://redmine.pfsense.org/issues/16583. Essentially I have a static DHCP mapping for a client by its MAC address, which works correctly with ISC DHCP server, but with Kea DHCP server the client ends up with a dynamically assigned IP address instead:

I believe this is wrong, while Jim Pingle at above link disagrees for some reason. See linked bug for pcap file with client<>server DHCP communication.
Not only that, firewall hostname aliases are resolved to the first (static) IP address only, not both, breaking my expectations about firewall rules.
-
@nazar-pc This is an issue with the Govee device's DHCP implementation. The non-standard behavior starts at packet #9 of the capture attached to your Redmine report. There's no reason for the device to make a new request after it's already received (and had acknowledged) your static reservation.
-
@tinfoilmatt That might be true, but why would DHCP server possibly return a dynamic IP address to the client instead of returning the same static IP address repeatedly instead?
That is definitely not how I expect DHCP server to behave. -
@nazar-pc Because your static reservation has already been requested and acknowledged (i.e., it's, at that point, in-use).
-
@tinfoilmatt Hm... but it is a static allocation. It doesn't have the start time and doesn't have the end time, I expect it to always be exactly the same no matter how many times the client requests it.
-
@nazar-pc The client's superfluous third request (i.e., packet #9) contains DHCP option 50, requesting a specific address (i.e.,
192.168.2.101in the case of your trace)—even though it's already been assigned a valid address from your static reservation. All bets are off when the client is acting in an unexpected/non-standard way. -
@tinfoilmatt Is DHCP server not supposed to reject request if static mapping already exists for it?
To me it seems like DHCP server is intentionally ignoring static configuration. -
@nazar-pc Would have to consult DHCP spec. Could be a valid report for upstream, but I'm not sure.