Connecting an Hyper-V Virtual Machine to the Internet through a Wireless Connection
In a previous post I wrote about how to configure your laptop to act alternatively as a virtualization server or as a nearly-standard desktop. Why would you do that? Well, if you need to use 64 bits virtual machines on top of Microsoft’s virtualization solutions, your only choice is to run Windows Server 2008 or Windows Server 2008 R2 with Hyper-V. For example, if you need to have different SharePoint 2010 developing environment configurations on the same machine, you will need to use 64 bits virtual machines.
In that post I shown how to configure an hypervisor server operating system –specifically Windows Server 2008 R2 with Hyper-V– to behave almost the same as desktop operating system –let us say Windows 7–, by enabling the features that ship disabled by default: wireless networking, audio, Aero, hibernation, and so on. Even better, since you probably want to switch between the hypervisor server scenario back and forth to the desktop scenario, I included some scripts files to enable required services and disable non-needed ones in each one case.
Even if you can successfully run both 32 bits and 64 bits virtual machines on your laptop when Hyper-V is properly configured, provided you have the appropriate hardware resources, you will realize sooner or later that Hyper-V is designed to run on a physical server, not on a laptop. Let me give you an example: Why do you use a laptop, after all? For mobile computing, don’t you? Well, if you do mobile computing with your laptop, you will be connected wirelessly, at least occasionally. Then you will realize you cannot connect your virtual machines to the Internet by using a wireless connection: Hyper-V only shows Ethernet network adapters when creating external virtual connections.
The two workarounds I found in the Internet –configuring Internet Connection Sharing or using Routing and Remote Access Service– were useless for me because ICS is disabled by my administrator and RRAS is too much complicated to setup.
I have two network interface cards in my laptop, an Intel® 82567LM-3 Gigabit Network Connection, and an Intel® Centrino® Ultimate-N 6300 AGN:
But only the first one is available in the list of network cards to be used when creating an external virtual connection:
There is an easy way to workaround this, and get an external virtual network connected with a wireless connection:
- Configure an external virtual connection using your wired local area connection as usual. Your virtual machines use this connection when you are connected by wire to access the Internet.
- When you are not connected by wire, bridge your wireless connection with the external virtual connection, by selecting both connections in the Network Connections window, right clicking, and choosing Bridge Connections from the context menu.
Your will see an additional network connection named Network Bridge and you will be able to access the Internet from your virtual machine guests through the wireless connection. Delete the bridged connection when you get connected by wire again.
Since you probably do not need to be permanently connected to the Internet, but want to access your host’s files and folders, I usually configure an internal virtual connection in addition to the external one, and all my virtual machines have two virtual network adapters connected to each of them.
If you are in the same scenario than me, I hope this tip simplifies your life. Cheers.