As a means to help study for some Microsoft exams that involve Hyper-V, I decided to try the immersion route: ditch my VMware software for a while and use Hyper-V as my only means for virtualization in my home lab.
My “home lab” is actually an HP Zbook 15u laptop with two 256 GB SSD’s and 16 GB of memory, running Windows 10. I enabled Hyper-V and dove in.
First thing I had to learn was the virtual switch environment and how to configure a custom routing process. I chose to use the DD-WRT VM approach, whereby you create a 32 MB memory allocation to run the Linux-based DD-WRT software as a virtual router.
I created two custom virtual switch interfaces: one “internal” and one “external” I named “public”. Then I attached two interfaces to the VM guest, one for each network. Create the VHD disk for DD-WRT, prep and load the firmware and create the VM with 32 MB of memory allocated. Then fire it up and log into DD-WRT to setup the network options.
After that I built my other VM guests, for a domain controller, servers, and some guest client machines running Windows 7, 8.1 and so on.
Here’s where I ran into a problem. I thought my home ASUS router had no available RJ-45 ports left. So I chose to attach the “external” switch to my Wi-Fi connection on the laptop. That creates a bridged connection, and even with interface ordering (interface options / advanced / ordering) it doesn’t work very well. For starters, the laptop grabbed the virtual “vEthernet” bridged interface for outbound connections. That meant if I shut down the DD-WRT VM guest, my laptop couldn’t get out to the Internet unless I forced a renewal of the DHCP assignment from the ASUS router. I could’ve configured static entries, but that would be a problem when I go on travel.
Getting off my lazy ass, I realized I still had a port available on the ASUS router, so I ran a cable, enabled the Ethernet adapter in Windows 10 and reset the Hyper-V “external” interface I created (e.g. “public”) to use the Wi-Fi, leaving the physical laptop environment (host operating environment) to use the wired connection. Works fantastic and I’m off and running.
Keep in mind that in my lab setup, the ASUS router provides DHCP for physical devices (computers, tablets, phones, etc.), but the DD-WRT virtual router has DHCP turned off. I use an AD Domain Controller inside the private network to provide DHCP, which to me is a more realistic approach for lab work.
For a better, easier-to-understand, version of setting this up, I strongly recommend reading this: http://blogs.blackmarble.co.uk/blogs/rfennell/post/2014/10/07/Experiences-using-a-DD-WRT-router-with-Hyper-V.aspx
All I did differently was add the wired connection and keep the two environments separate.
So, in short, the following images show what I’m talking about. The “vEthernet” item is the “Public” external virtual switch interface. The virtual guests inside Hyper-V are all on the “Internal” network.