From 9eace84342bc879abf371a84f8af3bd697e1c0a2 Mon Sep 17 00:00:00 2001 From: "Ondrej Zajicek (work)" Date: Thu, 10 Oct 2019 15:06:32 +0200 Subject: Nest: Handle PtP links in recursive route update Underlying (IGP) route may lead to PtP link, in this case it does not need gateway. Which is different than direct route without gateway. When recursive (BGP) route uses PtP route, it should not use recursive next hop as immediate next hop, while for direct routes it should. --- nest/rt-table.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nest/rt-table.c b/nest/rt-table.c index 97a5d1bc..d99953e5 100644 --- a/nest/rt-table.c +++ b/nest/rt-table.c @@ -2137,6 +2137,8 @@ no_nexthop: nhp->gw = nh->gw; /* Router nexthop */ nhp->flags |= (nh->flags & RNF_ONLINK); } + else if (!(nh->iface->flags & IF_MULTIACCESS) || (nh->iface->flags & IF_LOOPBACK)) + nhp->gw = IPA_NONE; /* PtP link - no need for nexthop */ else if (ipa_nonzero(he->link)) nhp->gw = he->link; /* Device nexthop with link-local address known */ else -- cgit v1.2.3