From b445d237e48917ad3069d9cb865970dba8de754b Mon Sep 17 00:00:00 2001 From: Oliver Gorwits Date: Fri, 28 Dec 2018 17:32:40 +0000 Subject: [PATCH] #471 OSPF Neighbor Discovery by router ID --- .../Worker/Plugin/Discover/Neighbors/Routed.pm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/App/Netdisco/Worker/Plugin/Discover/Neighbors/Routed.pm b/lib/App/Netdisco/Worker/Plugin/Discover/Neighbors/Routed.pm index 4e2f8760..a12d6b3d 100644 --- a/lib/App/Netdisco/Worker/Plugin/Discover/Neighbors/Routed.pm +++ b/lib/App/Netdisco/Worker/Plugin/Discover/Neighbors/Routed.pm @@ -16,17 +16,18 @@ register_worker({ phase => 'main', driver => 'snmp' }, sub { my $snmp = App::Netdisco::Transport::SNMP->reader_for($device) or return Status->defer("discover failed: could not SNMP connect to $device"); - my $ospf_peers = $snmp->ospf_peers || {}; - my $bgp_peers = $snmp->bgp_peer_addr || {}; - my $eigrp_peers = $snmp->eigrp_peers || {}; + my $ospf_peers = $snmp->ospf_peers || {}; + my $ospf_routers = $snmp->ospf_peer_id || {}; + my $bgp_peers = $snmp->bgp_peer_addr || {}; + my $eigrp_peers = $snmp->eigrp_peers || {}; return Status->info(" [$device] neigh - no BGP, OSPF, or EIGRP peers") unless ((scalar values %$ospf_peers) or (scalar values %$bgp_peers) or (scalar values %$eigrp_peers)); my $count = 0; - foreach my $ip ((values %$ospf_peers), (values %$bgp_peers), - (values %$eigrp_peers)) { + foreach my $ip ((values %$ospf_peers), (values %$ospf_routers), + (values %$bgp_peers), (values %$eigrp_peers)) { my $peer = get_device($ip); next if $peer->in_storage or not is_discoverable($peer); next if vars->{'queued'}->{$ip};