My original problem was that all my clients (XP/SP2) failed to connect to the network if they rebooted when their DHCP server was down (even if their lease had not expired). Instead of just keeping their unexpired leases, the clients insisted on using 169.154.*.* APIPA addresses. This meant that a single server failure could result in hundreds of PCs failing, and this was a major issue.
I disabled APIPA on every PC by setting IPAutoconfigurationEnabled=0 in the registry. That worked a treat, and now I am immune from massive failure if a DHCP server is down. But I have a new problem ...
When some laptop users go home and connect to their home LAN they get a new address. That's fine and expected. But, when they come back into the office they RETAIN THAT ADDRESS from their home LAN. Packet sniffing showed that such clients sent out three DHCP requests on the work LAN, but the server just ignored them.
So, the clients successfully get a new address form their home LANs but not from their work LAN? It looks like a Windows 2003 DHCP server issue - why is it ignoring the requests?
Has anyone seen this or got any ideas?