DeviceEmulator and Virtual Switch inside VirtualPC/VirtualServer

One of the great things about the DeviceEmulator is that it runs inside VirtualPC and VirtualServer.

However, there is one gotcha about using the Virtual Switch driver (download from inside a VirtualPC.

For security reasons, VirtualPC/VirtualServer blocks the Virtual Switch running inside the VM from receiving broadcast network packets.  This in turn means that the DeviceEmulator running inside a VirtualPC cannot acquire an IP address from your LAN's DHCP server... the DHCP negotiation is done via broadcast packets.

If you are running the emulator inside a VirtualPC and want to communicate with other server apps inside the VirtualPC, such as IIS and Exchange, then the best solution is to do the following:

  1. Install the microsoft Loopback Adapter into the version of Windows running inside the VPC.  Use "Start/Help And Support" and search for "install loopback adapter' and pick the first hit in the Microsoft Knowledge Base.
  2. Configure the DeviceEmulator's NE2000 to bind to the "Microsoft Loopback Adapter"

Now both the Device Emulator and Windows inside the VirtualPC will use auto-ip addresses over the private LAN created by the loopback adapter.