2

I have a Win2008 R2 server running Hyper-V with two VMs (Win2003 and Win2008R2).

I have two NICs on my server, one for the host, and one for the Virtual Machine Manager.

I have it configured as follows, but the VMS do not have access to the Internet. What am I doing wrong?

ONBOARD NIC for HOST
IP:      a.b.c.19  
Mask:    255.255.255.192  
Gateway: a.b.c.1  
DNS1:    a.b.c.130  
DNS1:    a.b.c.131

Additional NIC for Hyper-V
IP:      a.b.c.30
Mask:    255.255.255.192  
Gateway: a.b.c.1  
DNS1:    a.b.c.130  
DNS1:    a.b.c.131

VM1
IP:      a.b.c.9
Mask:    255.255.255.192  
Gateway: a.b.c.1  
DNS1:    a.b.c.130  
DNS1:    a.b.c.131

VM2
IP:      a.b.c.20
Mask:    255.255.255.192  
Gateway: a.b.c.1  
DNS1:    a.b.c.130  
DNS1:    a.b.c.131

Should my Gateways of the VMs be configured special to point to the NIC for Hyper-V?

1
  • Is a.b.c the same subnet for all those IP addresses?
    – Goyuix
    Jan 30, 2010 at 14:29

4 Answers 4

6

This might not fix your problem but...any Hyper-V box should have one NIC dedicated to administering the host (ONBOARD NIC for HOST) and one or more NICs dedicated to the VMs (Additional NIC for Hyper-V). I would do this:

  1. Delete your existing Hyper-V network in Hyper-V manager.

  2. On the host, you should now have only 2 NICs visible, ONBOARD NIC and Additional NIC. Leave ONBOARD NIC configured as above.

  3. Disable all services on Additional NIC (including IPv4 and IPv6). You don't need this NIC to be configured with an IP address - Hyper-V will just use this bit of hardware to access the network so as long as it is properly cabled to a configured switch port, they will be able to use it.

  4. Recreate your EXTERNAL network in Hyper-V Manager and make sure that you pick Additional NIC. After you do this, go back into the host's Network Control Panel and you should now see 3 NICs! When you created the Hyper-V EXTERNAL network, it then created an additional virtual NIC and added it to the list. Like the Additional NIC, it should have all services (including IPv4 and IPv6) disabled.

  5. Now turn off both VMs, reassign their NICs to the Hyper-V network, start them, and it should work.

Note: all of this applies assuming that everything is on the same subnet and there is no trunking going on for the switch port that Additional NIC is connected to. If there is trunking, you'll be assigning the VMs to a VLAN but if there is no trunking, DO NOT select the "Use VLAN" checkbox on the VM config page.

Good luck.

6
  • Okay, I followed this advice but it only partially worked. From the VMs, my pings were experiencing 50-75% packet loss. I could not RDP into either one successfully.
    – Jason
    Jan 30, 2010 at 17:44
  • Sounds like you have a problem on the physical network, if any traffic is getting through then the basic assignment of the NIC roles is probably right. Check that the uplink NIC for your VM's is set correctly and do the same on your switch for the port it's connected to.
    – Helvick
    Jan 30, 2010 at 18:30
  • Without the VMs, the machine works fine... it isn't until I configure the VMs that I have this network loss. I'm trying to work with my data center, but I can't simply say it is the networks fault - in fact, I'm sure it is something else I am doing wrong... I just don't know what it is yet.
    – Jason
    Jan 30, 2010 at 19:02
  • There's nothing about the Hyper-V config that I've ever seen that could result in packet loss. Hyper-V's networking config is simple. It works or it doesn't. You have Hyper-V set correctly now. You say though that you had no packet loss before VMs. But if you followed my steps above, before VMs you had one NIC with an IP (the ONBOARD NIC). Did you see packet loss on that NIC? I suspect not. After creating the 2 VMs and adding them to the virtual network, does the ONBOARD NIC show packet loss or just the VMs? My suspicion is you have a non-Hyper issue and it is something with the Additonal NIC.
    – icky3000
    Jan 31, 2010 at 6:46
  • This describes what I set up two weeks ago using the guidance on this question: serverfault.com/questions/38518/… . The setup is no different with Windows Server vs. SBS. Works like a champ. Jan 31, 2010 at 6:49
1

Turn off IPv4 Large Send Offloading under advanced setting for the adapter that hosts the HyperV network. Apparently the HyperV virtual switch does not handle this well. It fixed the packet drop issues for me. Hope this helps some people because it took me a while to figure it out.

0

Are you using the Legacy Network Adapters? It would take a lot to cause that much network loss but it's something to check for.

Also, any chance that you have a ton of traffic from either of the machines? To narrow it down, try creating an internal network and see if you can access the VMs from the host machine over RDP.

To answer your gateway question, if you're using an EXTERNAL NIC then the gateway should be the same as you're using for any of those IPs. (i.e., the same as the host machine is using).

Also, make sure that either of the machines are setup as routers that are causing a network traffic loop. That would cause the huge packet loss too.

0

In a nutshell, if the host can see the internet - then your guests should be able to as well.

Open the Virtual Network Manager and create a new virtual network. Make sure it is bridged (I think Hyper-V uses the term external or something like that) to one of your two adapters - in your case it probably doesn't really matter based on your IP addresses.

Then, in each of your virtual machine configurations, make sure the virtual network adapter is set to be part of the newly created virtual network.

If all that doesn't work, I would try two more things:

  • Try different network types, like NAT. Check the entire network stack - DNS, Ping, HTTP... see if any of them work.
  • Disable every firewall you can find. Host. Guest. 3rd Party. Those packets are getting honked up somewhere!
1
  • Thanks for the response, but yes, I have done all of that... many times over :(
    – Jason
    Jan 30, 2010 at 14:38

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .