Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
controller: Restore MAC and vlan for DVR scenario
When traffic originated from router port the MAC, in DVR setup, the router MAC was replaced by one specified in "ovn-chassis-mac-mappings" option. Along with that the vlan tag of the localnet port was pushed. When the traffic unicast it didn't cause any issue, however during l2 flooding, which happens mainly during ARP/ND, the MAC and vlan tag was also present during output to other ports present in the _MC_flood_l2 e.g. set(eth(src=ee:00:00:00:00:10,dst=ff:ff:ff:ff:ff:ff)),push_vlan(vid=100,pcp=0),3,4,5 This caused that all flooded traffic had the vlan tag and src MAC replaced, which should not happen for regular VIFs. To prevent that restore MAC address and strip the vlan as part of the replacement flow in table 65 generated by put_replace_router_port_mac_flows. So when we flood the final flow looks like: set(eth(src=ee:00:00:00:00:10,dst=ff:ff:ff:ff:ff:ff)),push_vlan(vid=100,pcp=0),3,4,set(eth(src=00:00:00:00:20:00)),pop_vlan,5 Reported-at: https://bugzilla.redhat.com/2123837 Signed-off-by: Ales Musil <amusil@redhat.com> Acked-by: Mark Michelson <mmichels@redhat.com> Signed-off-by: Dumitru Ceara <dceara@redhat.com> (cherry picked from commit 36a7073)
- Loading branch information