Hi!
I spent the last three hours debugging a problem where suddenly a number
of my diskless embedded systems refused to boot. Those systems are
based on etherboot (http://www.etherboot.org/).
After adding tons of debug statements to the etherboot code, I found out
that
1) Etherboot DHCP client code ignores a DHCPOFFER with "siaddr" 0.0.0.0
2) dhcp-3.0.2 suddenly changed the default from the dhcp server address
to 0.0.0.0. This is mentioned in the changelog, but is contradicted
by the dhcpd.conf.5 manpage (which still states that the DHCP server
address is used as default).
I don't really understand the reasoning of the change in dhcp-3.0.2. I
think it will cause many similar setups to break, and if admins look
into the dhcpd.conf.5, they verify that their setup is correct according
to the documentation - but it ceases to work after a isc dhcp upgrade.
Please find the patch below for dhcpd.conf.5
If you still want to continue the semantic change of the default value,
I strongly suggest to print a warning or even make server startup fail,
if
A) any netbooting related directive (root-path, filename, ...) is used
_AND_
B) no "next-server" directive is present in the configuration.
This way the admin at least knows that something is wrong and has to be
changed.
For the etherboot folks: I've attached a suggested patch that prints a
message if a zero siaddr dhcpoffer is ignored. The current silent
failiure makes debugging hard.
Thanks for your consideration,
--
- Harald Welte <la...@gn...> http://gnumonks.org/
============================================================================
"Privacy in residential applications is a desirable marketing option."
(ETSI EN 300 175-7 Ch. A6)
|