Currently, arping from a vtep-gw physical-switch port to a VIF IP address does not work.
When a physical-switch-port arps for an IP address of a VIF, that arp packet comes into the VIF hypervisor via a vxlan tunnel. That arp packet must not be responded-to by the arp responder table because, potentially, multiple hypervisors could independently respond. Signed-off-by: Ramu Ramamurthy <ramu.ramamur...@us.ibm.com> --- ovn/northd/ovn-northd.8.xml | 4 ++-- ovn/northd/ovn-northd.c | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/ovn/northd/ovn-northd.8.xml b/ovn/northd/ovn-northd.8.xml index 1da633a..3b885f9 100644 --- a/ovn/northd/ovn-northd.8.xml +++ b/ovn/northd/ovn-northd.8.xml @@ -421,8 +421,8 @@ <ul> <li> - Priority-100 flows to skip ARP responder if inport is of type - <code>localnet</code>, and advances directly to the next table. + Priority-100 flows to skip ARP responder if inport is not associated + with a local VIF, and advances directly to the next table. </li> <li> diff --git a/ovn/northd/ovn-northd.c b/ovn/northd/ovn-northd.c index 2cbbb47..d752589 100644 --- a/ovn/northd/ovn-northd.c +++ b/ovn/northd/ovn-northd.c @@ -2683,7 +2683,9 @@ build_lswitch_flows(struct hmap *datapaths, struct hmap *ports, continue; } - if (!strcmp(op->nbsp->type, "localnet")) { + /* Skip installing arp responder if the logical switch inport + * is not associated with a local VIF. */ + if (strcmp(op->nbsp->type, "")) { ds_clear(&match); ds_put_format(&match, "inport == %s", op->json_key); ovn_lflow_add(lflows, op->od, S_SWITCH_IN_ARP_ND_RSP, 100, -- 1.9.1 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev