From 4801fe9ec485acc2d6760eed6903921c949d8e1d Mon Sep 17 00:00:00 2001 From: Sarita Patra Date: Sat, 25 Feb 2023 00:33:13 -0800 Subject: [PATCH] pimd, pim6d: Don't track nexthop for RP 0.0.0.0 & 0::0 Topology: ======== FHR----Source Problem: ======= When FHR receives multicast traffic, there is no RP configured, PIMD does NHT register for RP address 0.0.0.0 and group 224.0.0.0/4 PIM6D does NHT register for RP address 0::0 and group FF00::0/8 frr# show ip pim nexthop Number of registered addresses: 1 Address Interface Nexthop --------------------------------------------- frr# show ipv6 pim nexthop Number of registered addresses: 1 Address Interface Nexthop --------------------------------------------- Fix: ==== Dont track nexthop for RP 0.0.0.0 & 0::0. frr# show ip pim nexthop Number of registered addresses: 0 frr# show ipv6 pim nexthop Number of registered addresses: 0 Issue: #12104 Signed-off-by: Sarita Patra (cherry picked from commit 201a31b9773f1c7b091a07b38dd5cbb55e7bdeab) --- pimd/pim_rp.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pimd/pim_rp.c b/pimd/pim_rp.c index c3e6a303fc..d104295dc1 100644 --- a/pimd/pim_rp.c +++ b/pimd/pim_rp.c @@ -1079,6 +1079,14 @@ struct pim_rpf *pim_rp_g(struct pim_instance *pim, pim_addr group) if (rp_info) { pim_addr nht_p; + if (pim_addr_is_any(rp_info->rp.rpf_addr)) { + if (PIM_DEBUG_PIM_NHT_RP) + zlog_debug( + "%s: Skipping NHT Register since RP is not configured for the group %pPA", + __func__, &group); + return &rp_info->rp; + } + /* Register addr with Zebra NHT */ nht_p = rp_info->rp.rpf_addr; if (PIM_DEBUG_PIM_NHT_RP)