Skip to main content

vmware, misslyckad IPv6 neighbor discovery inom samma nät, MLD snooping

Jag var med om ett scenario där två hostar i samma IPv6-nät, på samma fysiska server i en vmware virtualiserad plattform, inte kunde slå upp varandra över IPv6. Via tcpdump (tcpdump -i any -nn -vv icmp6 and '(ip6[40] == 135 or ip6[40] == 136)') kunde jag se att Neighbor Solicitaton frågorna kom fram till respektive maskin, och att ett Neighbor Advertisement svar skickades, men svaret kom aldrig fram till ursprungsmaskinen.

Jag sprang på den här reddit-tråden med liknande problem.

MLD snooping (the default multicast filtering mode as of ESXi 7.0) requires the target node to respond to MLD messages. I've seen before that some nodes filter these messages which causes the DVS to be unable to determine which ports are part of a multicast group (required for IPv6 neighbor discovery). You can confirm this by setting the multicast filtering mode on the DVS back to "Basic Mode"

Efter att vi ändrade MLD snooping to basic så fungerade neighbor discovery-processen på nytt. Det är en global inställning för hela vswitchen. Nu ett par-tre månader senare har vi inte märkt av att något annat problem uppstått av att vi gick till basic mode.