Virtual Networking and Wireless network adapters

Some people have noticed that our support for virtual networking when using a physical wireless network adapter is a bit hit and miss. 

The reason for this is because in order to perform our virtual networking – we implement an OSI layer 2 filter driver that creates network packets with the MAC address of the appropriate virtual machine.  Unfortunately the wireless networking standard explicitly forbids the creation of network packets with different MAC addresses to that of the physical computer (for security reasons).  To handle this – when we detect that we are using a wireless network adapter we create packets where some of the MAC addresses in the packet match that of the virtual machine – while the other MAC addresses match that of the physical computer.

Given this approach we find that some wireless networking hardware works, but other hardware doesn’t.  When it doesn’t work it will either:

  1. Just throw away all network traffic from the virtual machine – and the virtual machine will behave like it is disconnected.

    or

  2. Think that the network traffic from the virtual machine is actually coming from the physical computer.  This will cause things like the virtual machine being assigned the same IP address as the physical computer.

If you are seeing either of these symptoms your options are:

  1. Try different wireless networking hardware (either at the wireless adapter or the wireless access point).  I would only recommend doing this if you have the hardware handy.

  2. Use Shared networking under Virtual PC – or the Microsoft loopback adapter and Internet connections sharing with either Virtual Server or Virtual PC (as discussed here: http://blogs.msdn.com/virtual_pc_guy/archive/2005/10/04/477195.aspx).

Cheers,
Ben