A category covering Microsoft's enterprise and professional Windows solutions
Hello Minh Tuan Nguyen,
The packet capture behavior you are observing is entirely normal and expected by design. When a Hyper-V virtual switch utilizes the Dynamic teaming algorithm, it distributes outbound traffic flowlets across multiple active physical network adapters to maximize aggregate bandwidth. To prevent upstream physical switches from registering the same virtual machine MAC address on multiple switch ports simultaneously, which triggers MAC flapping and topology instability, the Hyper-V networking stack automatically overwrites the source MAC address of packets traversing non-affinitized physical adapters with the physical MAC address of that specific transmitting host NIC. Traffic traversing the virtual machine's primary affinitized adapter retains the original virtual MAC address.
While this routing logic optimizes throughput, strict upstream network security policies such as Dynamic ARP Inspection (DAI), IP Source Guard, or MAC limiting often flag this expected substitution as ARP spoofing and silently drop the packets, causing intermittent application timeouts. To resolve this without modifying upstream switch security configurations, you must change the vSwitch load balancing algorithm to Hyper-V Port. This setting pins the virtual network adapter to a single physical host adapter, thereby completely disabling flowlet distribution and MAC address rewriting. Could you please specify your Windows Server version and whether this vSwitch is backed by SET or LBFO so that the appropriate Set-VMSwitch or Set-NetLbfoTeam cmdlets can be verified for your environment?
Hope you found something useful in the answer. If it helped you get more insight into the issue, please consider accepting it. Thank you and have a nice day!
VP