Hi Ales,

My bad - I missed that matching on eth.src alone catches all
traffic from that MAC, including IGMP/MLD reports re-injected by
pinctrl. The revert makes sense.

Acked-by: JayGue Lee <[email protected]>

I'd still like to fix the original issue, this time without
touching table 0. Instead of the early inport rewrite, add the
localnet inport and backend MAC to the per-backend HM reply lflow
at ls_in_l2_lkup:

  inport == <localnet port> && eth.src == <backend MAC> &&
  ip4.src == <backend IP> && tcp.src == <port> &&
  eth.dst == <router MAC>
  actions: inport = <external LSP>; handle_svc_check(inport);

The rewrite only fires on unicast TCP replies to the router MAC,
so multicast and unknown unicast are unaffected and your new test
keeps passing.

Does this sound reasonable? If so I'll send a v2.

Regards,
JayGue Lee
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to