Loading

×Sorry to interrupt
Uncaught ReferenceError: addCTracking is not defined
throws at https://kb.vmware.com/resource/KM_TealiumTrackingJS?v=0.5:100:1

Refresh

Cookie Preference Center

General Information on cookies

When you visit our website, we use cookies to ensure that we give you the best experience. This information does not usually directly identify you, but it can give you a more personalized web experience. Because we respect your right to privacy, you can choose not to allow some types of cookies by clicking on the different category headings to find out more and change your settings. However, blocking some types of cookies may impact your experience on the site and the services we are able to offer. Further information can be found in our

Cookie Policy.

Strictly Necessary

Strictly Necessary

Always Active

Strictly Necessary

Strictly necessary cookies are always enabled since they are essential for our website to function. They enable core functionality such as security, network management, and website accessibility. You can set your browser to block or alert you about these cookies, but this may affect how the website functions. For more information please visit www.aboutcookies.org or www.allaboutcookies.org.

Cookie Details‎

Performance

Performance

Performance

Performance cookies are used to analyze the user experience to improve our website by collecting and reporting information on how you use it. They allow us to know which pages are the most and least popular, see how visitors move around the site, optimize our website and make it easier to navigate.

Cookie Details‎

Please confirm your settings by refreshing the page.

Functional

Functional

Functional

Functional cookies help us keep track of your past browsing choices so we can improve usability and customize your experience. These cookies enable the website to remember your preferred settings, language preferences, location and other customizable elements such as font or text size. If you do not allow these cookies, then some or all of these services may not function properly.

Cookie Details‎

Advertising

Advertising

Advertising

Advertising cookies are used to send you relevant advertising and promotional information. They may be set through our site by third parties to build a profile of your interests and show you relevant advertisements on other sites. These cookies do not directly store personal information, but their function is based on uniquely identifying your browser and internet device.

Cookie Details‎

Advertising Cookies

Consent Leg.Interest

Select All Vendors

Select All Vendors

Select All Hosts

Select All

Clear Filters

Information storage and access

Apply

Confirm My Choices Reject All Allow All

My Subscriptions

Loading

Knowledge Base

Duplicate Multicast or Broadcast Packets are Received by a Virtual Machine When the Interface is Operating in Promiscuous Mode (59235)

Last Updated: 12/19/2018Categories: TroubleshootingTotal Views: 74974Language:
Chinese (Simplified)JapaneseEnglish

36 like this article

Subscribe to get an email
newsletter with new updates

36 people found this helpful Please provide article feedback:

Symptoms

The following symptoms are observed:

Promiscuous mode is set to accept on the virtual switch portgroup and the virtual machine guest OS places its vNIC in promiscuous mode

When running a packet capture within the VM, multicast and broadcast packets are received multiple times

The vSwitch is configured with NIC teaming and the load balancing policy is Route Based on Originating Port ID, Route based on Source MAC Hash, Use explicit failover order or Route Based on Physical NIC Load

Multicast applications and protocols (such as CARP) running in virtual machines in promiscuous mode experience problems due to duplicated receive packets

Cause

In a NIC teamed environment where multiple uplinks are configured for a virtual switch and a port channel or LACP is not configured on the physical switch, the vSwitch will receive a multicast or broadcast packet from the physical network on each vSwitch uplink in the NIC team.  All traffic received by the vSwitch will be forwarded to the virtual portgroup in promiscuous mode so the virtual machine guest OS will receive multiple multicast or broadcast packets.

For more information on promiscuous mode, see How promiscuous mode works at the virtual switch and portgroup levels.

Resolution

To prevent this issue, you must enable the /Net/ReversePathFwdCheckPromisc setting:

esxcli system settings advanced set -o /Net/ReversePathFwdCheckPromisc -i 1

To check that the setting is enabled, run the following command:

esxcli system settings advanced list -o /Net/ReversePathFwdCheckPromisc
Path: /Net/ReversePathFwdCheckPromisc
Type: integer
Int Value: 1
Default Int Value: 0
Min Value: 0
Max Value: 1
String Value:
Default String Value:
Valid Characters:
Description: Block duplicate packet in a teamed environment when the virtual switch is set to Promiscuous mode.

This setting will discard packets coming from uplinks that are not associated with the particular client when promiscuous mode is enabled and will prevent duplicate packets from being received by the guest operating system.  This will affect all promiscuous mode virtual machine and vmkernel interfaces on the ESXi host.

In order for the setting to take effect, promiscuous mode must be toggled off and on by the guest operating system.  An operation such as a guest OS reboot or a vMotion to another ESXi host with the /Net/ReversePathFwdCheckPromisc setting enabled is sufficient.  The setting does not require a reboot of the ESXi host to take affect.

You can verify if /Net/ReversePathFwdCheckPromisc is enabled with the following steps:

1. Verify the port number for the virtual machine interface.

net-stats -l | grep <VM name>
67108871 5 7 DvsPortset-1 00:0c:29:82:24:cf <VM name>.eth2

2. Check the stats of the portgroup using the port number from the output of command #1 (bolded section indicates the filter is applied):

vsish -e get /net/portsets/DvsPortset-1/ports/67108871/outputStats
io chain stats {
starts:8749231
resumes:0
inserts:0
removes:0
errors:0
pktsStarted:9011842
pktsPassed:4508858
pktsDropped:0
pktsCloned:9011785
pktsFiltered:4502984
pktsFaulted:0
pktsQueued:0
pktErrors:0
pktsInjected:0
functions:
PRE_FILTER <VLAN_OutputProcessor@(etherswitch)#<None>:0x43014f8b6e10>
pktsStarted:9011842
pktsPassed:9011842
pktsDropped:0
pktsFiltered:0
pktsQueued:0
pktsFaulted:0
pktsInjected:0
pktErrors:0

FILTER <Team_ReverseFilterPerList@(etherswitch)#<None>:0x43014f8b6b90>
pktsStarted:9011842
pktsPassed:4508858
pktsDropped:0
pktsFiltered:4502984
pktsQueued:0
pktsFaulted:0
pktsInjected:0
pktErrors:0

TERMINAL <<VM Name>.eth2:0x0>
pktsStarted:4508858
pktsPassed:0
pktsDropped:4508858
no client stats maintained

}

The above output shows that Team_ReverseFilter is attached to the vSwitch port and it is filtering packets.

Detectable by VMware SkylineTM

Actions

Copy

link to clipboard
copied!

Print

Language:
Chinese (Simplified)JapaneseEnglish

Attachments

Additional Resources

KB
•
End Of General Availability of the Free vSphere Hypervisor (ESXi 7.x and 8.x) (2107518)

KB
•
Download and Install VMware Fusion (2014097)

Results 1-2 of 2

Ask The Community

Get answers quickly from VMware experts in the community

Post Subject

CONTINUE IN COMMUNITIES

Related Products:

VMware ESXi

Related Versions:

Take Our Survey

Support Assistant