Good afternoon,
I hope the community could help me with my problem.
I have 3 VMs, each one with an OVS with bridge "br0". The VM1 and VM2 are connected via a GRE tunnel to the Server and via VXLAN tunnels between both.

Whenever I run:
from the server, an ARP loop takes place and the network become unusable, since all bridges become full with forwarded ARP requests and replies.
In the network environment I'm trying to create, I don't want the VM1 br0 and the VM2 br0 to send ARPs to each other, in order to prevent this loop.
So, In both VMs, I installed the following flow entry:
which I thought would drop the ARP packets that are being infinitely forwarded due to the connection between VM1 and VM2. But it did not.
Even if I drop the request packets coming from the tunnel GRE, with ARP destination different from the bridge receiving the ARP request, like the following:
the flow entry is ignored, and the ARP loop continues.
What is the correct way to formulate the flow entries so that ARP packets coming from the server, that are not destined to the bridge, are dropped? And how can I block ARP packets of the 10.0.1.0/24 network coming from the vxlan tunnel?
Note: I've already enabled STP in the VM1 and VM2 bridges, but the problem persists.
Thank you for reading
I hope the community could help me with my problem.
I have 3 VMs, each one with an OVS with bridge "br0". The VM1 and VM2 are connected via a GRE tunnel to the Server and via VXLAN tunnels between both.

Whenever I run:
arping -I br0 10.0.1.10 (or)
arping -I br0 10.0.1.20
from the server, an ARP loop takes place and the network become unusable, since all bridges become full with forwarded ARP requests and replies.
In the network environment I'm trying to create, I don't want the VM1 br0 and the VM2 br0 to send ARPs to each other, in order to prevent this loop.
So, In both VMs, I installed the following flow entry:
ovs-ofctl -O openflow13 add-flow br0 priority=65535,arp,in_port=<vxlan_tunnel>,arp_spa=10.0.1.0/24,action=drop
which I thought would drop the ARP packets that are being infinitely forwarded due to the connection between VM1 and VM2. But it did not.
Even if I drop the request packets coming from the tunnel GRE, with ARP destination different from the bridge receiving the ARP request, like the following:
ovs-ofctl -O openflow13 add-flow br0 priority=65535,arp,in_port=gre1,arp_spa=10.0.1.50,arp_tpa=10.0.1.20,action=drop
the flow entry is ignored, and the ARP loop continues.
What is the correct way to formulate the flow entries so that ARP packets coming from the server, that are not destined to the bridge, are dropped? And how can I block ARP packets of the 10.0.1.0/24 network coming from the vxlan tunnel?
Note: I've already enabled STP in the VM1 and VM2 bridges, but the problem persists.
Thank you for reading