diff --git a/nhrpd/netlink_arp.c b/nhrpd/netlink_arp.c index be909c862ae0..3585927837e6 100644 --- a/nhrpd/netlink_arp.c +++ b/nhrpd/netlink_arp.c @@ -203,8 +203,10 @@ int nhrp_neighbor_operation(ZAPI_CALLBACK_ARGS) } } else { state = (cmd == ZEBRA_NEIGH_ADDED) ? ndm_state - : ZEBRA_NEIGH_STATE_FAILED; - nhrp_cache_set_used(c, state == ZEBRA_NEIGH_STATE_REACHABLE); + : ZEBRA_NEIGH_STATE_FAILED; + if (ndm_state != ZEBRA_NEIGH_STATE_STALE) + nhrp_cache_set_used(c, + state == ZEBRA_NEIGH_STATE_REACHABLE); } return 0; }