I have two Windows Server 2016 with Hyper-V installed. Each server has two ethernet adapters. And each Hyper-V has several VMs. My goal is VMs can communicate with each other if they fall into the same VLAN.

In order to make the network connection redundancy, I created the network teaming on the physical machine. The teaming is using "Switch Independent" with "Address Hash" options. On the Virtual Switch Manager, I created an external adapter by selecting the teamed adapter (Microsoft Network Adapter Multiplexor Driver).

Under each VM, I create a virtual adapter with VLAN tagged.

However, the VMs in the same VLAN cannot communicate with each other.

On the switch side, I have already configured trunk mode for all the ports connected with the physical machines.

If I remove the teaming, the VMs can communicate with VLAN tags. How to address this issue?


It's not entirely clear where your problem lies from your description. I'm uncertain about the "removing team" bit especially. If the VMs can communicate with each other when your virtual switch is Internal or Private, then the problem is not with Hyper-V.

If they can communicate with each other when you attach the virtual switch to only one unteamed adapter, then test using the other adapter instead. If one works but not the other, then it is likely a physical adapter or switch problem. If either works, but not both in a team, then it is likely a physical switch problem.

Check these points, even if you've already checked them. Problems like this are typically sourced back to something extremely minor and easy to overlook:

Physical Switch

  • Ports are in trunk mode
  • Ports are not in a port channel or LAG
  • The desired VLAN is specifically allowed and/or marked as "Tagged"
  • The ports do not use a numbered default VLAN, PVID, or have any numbered VLAN set as "Untagged"

Physical NICs

  • NICs do not have any VLAN settings applied, check both firmware and drivers

Physical NIC Team

  • You are using exactly one team interface and it is not assigned a numbered VLAN

Virtual adapters (Hyper-V Side)

  • Virtual adapters have been assigned to the correct VLAN
  • Virtual adapters are connected to the correct virtual switch

Virtual adapters (inside guest)

  • Adapter has appropriate TCP/IP settings
  • Firewall is not blocking the expected traffic


If you've done all of the above and it still doesn't work, then you likely have a physical problem somewhere.

  1. Disconnect the wire from one physical adapter and test
  2. Reconnect the initial wire and wait for stable connectivity (viewable in LBFOAdmin.exe or Get-NetLbfoTeamMember).
  3. Disconnect the second wire and test
| improve this answer | |
  • Hi Eric, I tried several times but no luck. The switch ports are trunk and no aggregation is configured. I configured VLAN under virtual adapter(hyper-v). How can I get logs from the Cisco and Windows regards to the network traffic? – NeilWang Sep 12 '18 at 22:25
  • You did specifically set the switches to use 802.1q tagging and added the VLAN(s) to the trunk VLAN allowed list? Windows doesn't really log network traffic like you're looking for; Wireshark is probably a better tool. But this really sounds like you have a switch configuration problem. You can look at Cisco logs with "show log" but I'm not going to be much help on that topic. – Eric Siron Sep 13 '18 at 16:48
  • Yeah, I allowed all the VLANs through the ports and enabled the trunk by simply using the "switchport mode trunk" command. It gonna really hard for troubleshooting since I can't get the log from Windows and I have no idea about the Wireshark. I will try to find something might useful on Cisco logs. Thanks anyway. – NeilWang Sep 14 '18 at 22:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.