$ifIndex, 'ip' => $entry['agentNetworkIPAddress'], 'mask' => $entry['agentNetworkSubnetMask'] ]; discover_add_ip_address($device, $mib, $data); // DNOS-SWITCHING-MIB::agentNetworkIpv6AdminMode.0 = INTEGER: enabled(1) // DNOS-SWITCHING-MIB::agentNetworkIpv6AddrPrefixLength."........jOd....." = INTEGER: 64 // DNOS-SWITCHING-MIB::agentNetworkIpv6AddrEuiFlag."........jOd....." = INTEGER: enabled(1) // DNOS-SWITCHING-MIB::agentNetworkIpv6AddrStatus."........jOd....." = INTEGER: active(1) // DNOS-SWITCHING-MIB::agentNetworkIpv6AddressAutoConfig.0 = INTEGER: disable(2) // DNOS-SWITCHING-MIB::agentNetworkIpv6ConfigProtocol.0 = INTEGER: none(1) if (snmp_get_oid($device, 'agentNetworkIpv6AdminMode.0', $mib) === 'enabled') { // IPv6 $oids = snmpwalk_cache_oid($device, 'agentNetworkIpv6AddrPrefixLength', [], $mib, NULL, OBS_SNMP_ALL_TABLE); $oids = snmpwalk_cache_oid($device, 'agentNetworkIpv6AddrStatus', $oids, $mib, NULL, OBS_SNMP_ALL_TABLE); print_debug_vars($oids); foreach ($oids as $ip_address => $entry) { if ($entry['agentNetworkIpv6AddrStatus'] !== 'active') { continue; } $data = [ 'ifIndex' => $ifIndex, 'ip' => $ip_address, 'prefix' => $entry['agentNetworkIpv6AddrPrefixLength'] ]; discover_add_ip_address($device, $mib, $data); } } // EOF