Currently, for non-LB NATs, northd generates ARP/ND response flows on every router port even when the NAT's "gateway_port" field is set.
When "gateway_port" field is specified on NAT record on NB, it could be considered as reachable only through that LRP, so generating response flows for other router ports is unnecessary. This patch skips flow generation for router ports that do not match the NAT's "gateway_port". Signed-off-by: Amir Aslan Aslani <[email protected]> --- northd/northd.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/northd/northd.c b/northd/northd.c index aecfb2ec6..432eeb97b 100644 --- a/northd/northd.c +++ b/northd/northd.c @@ -9830,6 +9830,10 @@ build_lswitch_rport_arp_req_flows_for_lbnats( continue; } + if (nat->gateway_port && nat->gateway_port != op->nbrp) { + continue; + } + /* Check if the ovn port has a network configured on which we could * expect ARP requests/NS for the DNAT external_ip. */ @@ -9870,6 +9874,10 @@ build_lswitch_rport_arp_req_flows_for_lbnats( const struct nbrec_nat *nat = nat_entry->nb; + if (nat->gateway_port && nat->gateway_port != op->nbrp) { + continue; + } + /* Check if the ovn port has a network configured on which we could * expect ARP requests/NS for the SNAT external_ip. */ -- 2.50.1 (Apple Git-155) _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
