From f784007d677ee20e4dbd20366928652be2a0b23c Mon Sep 17 00:00:00 2001 From: Ryoga Saito Date: Sun, 4 Dec 2022 23:51:45 +0900 Subject: [PATCH] bgpd: Stop overriding nexthop when BGP unnumberred When we use vrf-to-vrf export, the nexthop has already not been overridden when the peer is BGP unnumberred. However, when we use normal export, the nexthop will be oberridden. This behavior will make the VPN routes invalid in VPN RIB. This PR stops overriding nexthop even if we use normal export. Signed-off-by: Ryoga Saito --- bgpd/bgp_mplsvpn.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bgpd/bgp_mplsvpn.c b/bgpd/bgp_mplsvpn.c index 18cb90763c..ace75976a9 100644 --- a/bgpd/bgp_mplsvpn.c +++ b/bgpd/bgp_mplsvpn.c @@ -1505,7 +1505,8 @@ void vpn_leak_from_vrf_update(struct bgp *to_bgp, /* to */ } else { if (!CHECK_FLAG(from_bgp->af_flags[afi][SAFI_UNICAST], BGP_CONFIG_VRF_TO_VRF_EXPORT)) { - if (afi == AFI_IP) { + if (afi == AFI_IP && + !BGP_ATTR_NEXTHOP_AFI_IP6(path_vrf->attr)) { /* * For ipv4, copy to multiprotocol * nexthop field