Bugzilla – Bug 2029
DHCP client stops working after power cycle.
Last modified: 2008-12-18 11:38:22 UTC
If a squeezebox2, configured to get IP by DHCP is power cycled, it no longer renews its DHCP lease, but continues to use the DHCP-assigned address anyway. Note: by power cycle, I mean physically remove the power plug and then re-insert it. When power comes back, if the "press right to configure networking" prompt is allowed to time-out, the SB resumes it's previous network settings, including the IP address. However during boot it doesn't interact at all with the DHCP server or even probe the address using an ICMP echo request, and it never again sends a DHCPREQUEST to renew the DHCP lease. This means that the DHCP lease will eventually time-out at the server; either during the time the SB is down, or later when it has come back up but is no longer sending renewal requests. The DHCP server will mark the address as free and available for re-allocation but the SB will still be using it, leading to the possibility of an address conflict. Under these circumstances (previous DHCP lease, reboot) I would expect the DHCP client to come up in INIT-REBOOT state, and start by sending a DHCPREQUEST to attempt to claim the old lease. If that fails then the whole DHCPDISCOVER, DHCPOFFER process would start ne novo. I've rated this a major bug since it can lead to use of an IP address after the DHCP lease has expires: this breaks the promise that a DHCP client makes when taking a lease, that use of the address will cease before the lease expires, unless the lease is renewed.
Patch is in, this will appear as a fix in firmware 22, which should be available in a nightly in a day or so.