I have a system in which 2 computers communicate via Ethernet point-to-point. When system 1 boots, system 2 is initially off. The IP address of system 1 has been set. Of course, since system 2 is currently off, the IP address of system 1 shows as "Media disconnected" (as evidenced by "ipconfig"), which is expected.
I have some Java RMI code, the server for which runs on system 1 at boot and attempts to bind to this IP, which fails, presumably because this IP is not yet available/initialized. If I wait to bind until I turn system 2 on (at which point system 1's IP address is now available because system 2's Ethernet card is now active), the bind succeeds. This is also expected.
Strangely (at least to me), if I boot system 1, turn on system 2, wait for the Ethernet connection to become active (as evidenced by Windows reporting an IP address on system 1 in "ipconfig"), then turn off system 2 (note that I still haven't attempted to bind yet), then bind, the bind works, as does RMI communication between the 2 systems when I later turn on system 2 and start its client process. It seems that when I power up system 2, this causes the two NIC's to negotiate, but it also causes the IP address on system 1 to become bindable, even after system 2 is later turned off.
My question: How can I force Windows to initialize the NIC such that its IP address will be bindable even if there is currently no computer on the other end?
Or maybe I'm missing something obvious altogether.