David,
Someone else alluded to NetBEUI / NetBIOS. This is on the right track for a good solution in a Windows environment.
If one can assume that a) The environment supports Windows systems, and b) that DHCP is supported, you're a good distance there. While not always true, this will meet "98%" of your target environments.
1) Boot, get a DHCP, learn the WINS server address. 2) Register with WINS using a pre-defined name 2b) If WINS isn't supported, then use the Windows local subnet name resolution mechanism (local subnet broadcasts, I believe) 3) First device on the network wins the name. Additional devices register themselves with the winner. 4) Users address the pre-defined WINS/NetBEUI name in their ubiquitous Windows-based browser, the name resolves, and the user connects. 4b) User is presented with a list of devices currently online. Hyperlinks point the the current DHCP IP of the device. 5) Configure statically from there.Or - label each widget with a unique random device name less than 16 characters long. That's the WINS name. (Hint: the MAC address is less than 16 characters.)
Between ZeroConf and local-subnet Windows name resolution, you should be able to handle just about any environment. Only the pure non-Windows shops would be an issue, and I'll bet there aren't many.
Richard