Consider the following scenario:
You’ve deployed your Virtual Machines on Hyper-V hosts that are running Windows Server 2012 or 2012 R2. Everything appears to be running swimmingly. However, you soon start to experience the following symptoms:
- Virtual machines randomly lose network connectivity. The network adapter appears to be working in the virtual machine. However, you cannot ping or access network resources from the virtual machine. Restarting the virtual machine does not resolve the issue
- You cannot ping or connect to a virtual machine from a remote computer, you are only able to connect via the Hyper-V console
When this occurs, the only fix is to restart the Hyper-V host. Restarting the VM does not resolve the issue. This also does not address the underlying issue as to why this is occurring in the first place.
VMQ
This issue has been around for sometime, with Microsoft acknowledging and discussing it here. However, this only refers to the “NetXtreme 1-gigabit network adapters”, which in my case were not being used. Looking a little deeper, the issue affected a broader number of network adapters, all of which used common components manufactured by a company called Emulex. If you were using an affected adapter on a Windows Server 2012 or 2012 R2 Hyper-V host, and you had Virtual Machine Queue (VMQ) enabled, you could potentially see this issue.
VMQ is only relevant if the network adapters used on your Hyper-V hosts are 10-gigabit or faster. In my case, all adapters were 1-gigabit, meaning I could simply disable VMQ and see if that resolved my problem. To check whether or not VMQ is enabled, run the following:
Get-NetAdapterVmq
To disable:
Set-NetAdaptervmq -Name “Embedded LOM 1 Port 2” -Enabled $false
Alternatively, you can also disable from Device Manager:
Once you have disabled VMQ on the adapter, make sure you also disable it from the Hardware Acceleration menu from Setting on all Virtual Machines
This resolved the issue for me.
Damien Margaritis
Thank you! I have been struggling with this for quite some time and just rebooted the host, but now finally I have resolved the issue 🙂
I also have the same problem, but only a VM cannot ping another hosts, other VMs still can ping.
I followed the instructions but still did not resolve the issue. Please give me advice.
I wish I could. Not a hypervisor expert, was just something I stumbled upon some years ago – happy hunting!
Did you get this sorted. I had the same issue, changed the IP Address and it worked?
Think it ended up being a duplicate IP in the Core Switch ARP Table.
Dell server with 4 Broadcom nics – Just made the changes on my NICs on the host and the VM in question, didnt need a reboot. only very temporarily cut access to the VMs, came back within a few seconds. Ive had this issue for years honestly, and the VM host has only ran background tasks for me. I was able to curtail the issue with limiting data sync times, VM replication times, and with a programmed daily reboot; i rarely had issues. I recently moved my companies PBX to that same VM host, and now twice this week have had it drop out mid day. Same failure as described above, the VM host and the other VMs can see it, but outside the host itself that target is dead. I will keep updated how this works for me. THANKS SO MUCH FOR SHARING!
It’s funny: this is one of my shortest and oldest posts yet still gets some of the most hits – glad I could help!
figured I come back with a follow up and confirm that it has cleared up my issue! I have since found MS article on it and a few others, and its all making sense. This is what I get for not using intel NICs. ha
http://support.microsoft.com/kb/2902166
thank you !it seems this also solved my issue