Closed BoGs closed 1 month ago
I forgot to add based on my understanding the packet option needs to be 300 bytes or is invalid but I am unsure based on RFC 2131 - or be padded.
In fact, RFC2131 says, "A DHCP client must be prepared to receive DHCP messages with an 'options' field of at least length 312 octets. This requirement implies that a DHCP client must be prepared to receive a message of up to 576 octets, the minimum IP datagram size an IP host must be prepared to accept [3]. "
After further testing it seems like only some dhcp requests are running into this. I am not sure how to narrow this down as it seems both reserved and dynamic leases are working.
Thanks for the feedback. It could be possible that the client is requesting too many options and the response is getting over limit.
It would be great if you can run tcpdump on the server running the DHCP server and try to get a lease from the affected client, and share the captured pcap file to support@technitium.com. This will help understanding the issue much better.
It seems that the DHCP server is sending invalid packet sizes for DHCP requests from client requests that are part of the Reserved Leases list.
Dynamic leases seem to be working on my machines that do not have reservations.
I am using OPNSense where behind the scenes is BSD with the dhcrelay being (https://github.com/openbsd/src/blob/master/usr.sbin/dhcrelay/dhcrelay.c#L334)
Request
Response
Version 12.2.1