Information
Set the vSwitch Forged Transmits policy to reject for each vSwitch. Reject Forged Transmit can be set at the vSwitch and/or the Portgroup level. You can override switch-level settings at the Portgroup level.
Rationale:
If the virtual machine operating system changes the MAC address, the operating system can send frames with an impersonated source MAC address at any time. This allows an operating system to stage malicious attacks on the devices in a network by impersonating a network adaptor authorized by the receiving network. Setting forged transmissions to accept means the virtual switch does not compare the source and effective MAC addresses. To protect against MAC address impersonation, all virtual switches should have forged transmissions set to reject.
Solution
To set the policy to reject forged transmissions, perform the following:
In the vSphere Web Client, navigate to the host.
Go to 'Hosts and Clusters' -> 'vCenter' -> host.
On the Configure tab, click Networking, and select Virtual switches.
Select a standard switch from the list and click the pencil icon to edit settings.
Select Security.
Set Forged transmits to 'Reject'.
Click 'OK'.
Alternately, the following ESXi shell command may be used:
# esxcli network vswitch standard policy security set -v vSwitch2 -f false
References:
https://docs.vmware.com/en/VMware-vSphere/6.7/com.vmware.vsphere.networking.doc/GUID-891147DD-3E2E-45A1-9B50-7717C3443DD7.html
Notes:
This will prevent VMs from changing their effective MAC address. This will affect applications that require this functionality, such as Microsoft Clustering, which requires systems to effectively share a MAC address. This will affect how a layer 2 bridge will operate. This will also affect applications that require a specific MAC address for licensing. An exception should be made for the port groups that these applications are connected to.