$bgp4_entry) { $peer_vrf_index = explode('.', $index)[0]; if ($vrf_index != $peer_vrf_index) { continue; // Skip different vrf index } $peer_ip = ip_uncompress($bgp4_entry['bgpPeerRemoteAddr']); $peer_as = snmp_dewrap32bit($bgp4_entry['bgpPeerRemoteAs']); // Dewrap for 32bit ASN if ($peer_as > $bgp4_entry['bgpPeerRemoteAs']) { $bgp4_entry['bgpPeerRemoteAs'] = $peer_as; } $peer = [ 'index' => $index, 'ip' => $peer_ip === '0.0.0.0' ? '' : $peer_ip, 'as' => $peer_as, 'admin_status' => $bgp4_entry['bgpPeerAdminStatus'] ]; $vrf_index = explode('.', $index)[0]; if ($vrf_name && $vrf_name !== 'default') { $peer['virtual_name'] = $peers_vrf[$vrf_index]['bgpVrfName']; } if (is_bgp_peer_valid($peer, $device)) { $p_list[$peer_ip][$peer_as] = 1; $bgp_peers[$peer_ip] = $bgp4_entry; // Unification peer (do not use for bgp4-mib) /* $peerlist[$peer_ip][$peer_as] = []; foreach ($bgp_oids as $bgp_oid) { $def_oid = str_replace('bgp', '', $bgp_oid); // bgpPeerState -> PeerState $peerlist[$peer_ip][$peer_as][$bgp_oid] = $cisco_entry[$def['oids'][$def_oid]['oid']]; } if ($check_vrfs) { $peerlist[$peer_ip][$peer_as]['virtual_name'] = $vrf_name; } */ } } unset($bgp4_peers); // EOF