Belkin router not respecting the dhcp bootp flag

Yassin Bennaceur

Reputable
Aug 12, 2015
1
0
4,510
Hello I have a Belkin N300 with the latest firmware on it. i have two machines on accepts dhcp unicasted messages and the other accepts only broadcasted dhcp messages. Now each of these two machines inform the router dhcp server using the dhcp bootp flag whether it want the messages to be unicasted or broadcasted but the router it completely ignoring this flag resulting to one of the machines not getting an IP (the one that requires broadcast - but receives unicsat).

I am sure the dhcp-client of my machines are correctly implemented - it is indeed a Ubuntu machine.

I analysed it all using wireshark and have the history here on my pc i can share for more discussion if it is needed.

Any one had the same problem with this router or other router that might have the same bug ?
 
Solution
The broadcast flag was pretty much a hack to get around stupid machines. This is one of those good practice things where devices should accept unicast dhcp. For other reasons (security in particular) the vast majority of dhcp offer messages are sent with unicast. This is also why it is the default on dhcp servers.

This quickly gets into the mess of reading the RFC for bootp and dhcp and see if they use the word MUST or SHOULD. If the server "MUST" support the flag then belkin has a bug or did not implement a compliant service. If it is "SHOULD" then they choose not to support the broadcast flag.
The broadcast flag was pretty much a hack to get around stupid machines. This is one of those good practice things where devices should accept unicast dhcp. For other reasons (security in particular) the vast majority of dhcp offer messages are sent with unicast. This is also why it is the default on dhcp servers.

This quickly gets into the mess of reading the RFC for bootp and dhcp and see if they use the word MUST or SHOULD. If the server "MUST" support the flag then belkin has a bug or did not implement a compliant service. If it is "SHOULD" then they choose not to support the broadcast flag.
 
Solution