-
Hello everyone, we are still in the process of setting up our cloud environment and could use some advice. We are using BGP+EVPN+VXLAN in our setup, quite similar to how it's described here https://vincent.bernat.ch/en/blog/2017-vxlan-bgp-evpn. We've configured our Juniper routers to advertise a /64 in the same VNI that our VMs are in. We have debugged this problem using tcpdump on the KVM host and found the following:
Our conclusion was that the kernel must be dropping multicast packets somehow, but we're at a loss at figuring out why. quick tcpdump excerpt:
Is anyone running a similar setup and has any advice, tips or ideas for us? Please let us know. Maybe we are just missing a kernel tweak or something. We are using CS 4.19 on AlmaLinux 9. |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 2 replies
-
We are running such setups :-) So just to check: IPv4 works just fine in the same VNI? Can you check if you could ping the Link-Local address from any of the routers from any of the VMs? And could you maybe post your Juniper configuration for the IRB on how you have set up the virtual gateway? There are multiple solutions to this under JunOS. And please also post the configuration for your Router Advertisement being sent. |
Beta Was this translation helpful? Give feedback.
-
I know you do ;) First some background information. We are using an EVPN+MPLS setup in our Juniper backbone which is providing connectivity. We have two gateways (MX204) which in this case terminate on two spines which do EVPN-MH. This is our cloud infrastructure based on EdgeCore devices running SONiC. Here we do EVPN+VXLAN. We have checked several things and made some observations:
The main configuration parts from the Juniper gear you requested:
and
The configuration is the same on both gateways. To sum it up. The multicast IPv6 packets (for NDP, RAs, etc) are arriving on our physical interfaces (on the KVM nodes) with correct VNIs, payload, etc. But they never ever arrive on the vxlan nor the bridge interface. |
Beta Was this translation helpful? Give feedback.
Finally, we found the problem which is related to VXLAN flags. When IPv6 multicast packets enter our fabric the VXLAN packet somehow gets the flags
0x0a00
instead of0x0800
, which is being ignored by the kernel and the packet is dropped. See the corresponding code fragment here: https://elixir.bootlin.com/linux/v5.14.21/source/drivers/net/vxlan.c#L1905This seems to be a problem with SONiC itself and we will check here further.
The temporary fix is: