ESXi VMs randomly lose network on reboot; only resolution to pull NICs and reassign new NIC driver with static MAC

mac addressnetworkingnicvmware-esxivswitch

We have one ESXi server (HP-ESXi-6.0.0 build-2492585) that has multiple VMs on it that have exhibited the following behavior:

When the VM is rebooted it will occasionally just lose all network connectivity. Access the command line of the VM from the host console in vSphere you can see the machines keep their network cards, network settings, etc. Cannot ping anything on the network or the gateway. No errors indicated in VM or host side logs that I can find. Once the error occurs subsequent reboots don't seem to change the behavior, though, that aspect has only been tested lightly.

The most direct way we've found to address the problem is to kill the current vNIC and add a new one. Sometimes simply changing the vNIC driver from VMXNET3 to E1000 works but I've recently found that the more likely 'fix' is when I change the MAC address from Automatic to Manual. We've definitely had occurrences where deleting the vNIC and adding it back with just a new adapter type alone does not do the trick, but changing the MAC does.

We have 3 other ESXi hosts on the same hardware and ESXi version where the VMs don't exhibit this behavior.

This occurs on VMs with both Linux-based and Windows OSes.

This issue can occur when the entire VM Host is rebooted. Actually the original manifestation of the issue occurred after a VM Host reboot. Only more recently have we found this can also occur when a single VM is rebooted or otherwise power-cycled.

Any insight about where or what to look for in the log files or thoughts on how to combat this issue would be greatly appreciated!

Best Answer

As changing the MAC make the network to work again I would check the uplink port from the host, where it connect to.

To make sure the spanning tree and all the ports settings are the same for all your hosts ports. As it seem to me a switch problem, a bit tied to MAC poisoning. If a cisco switch I would do a show mac address-table to list your mac per port if I remember right the command.