====== ipdevpoll plugins ====== FIXME This page really needs a standard way to write about plugins. The following plugins exists for ipdevpoll: ===== ARP ===== * Collects ARP and NDP records for IPv4 and IPv6 respectivly. * Uses IP-MIB for ARP and IPV6-MIB for NDP * Tries CISCO-IETF-IP-MIB for Cisco ARP/NDP if either IP-MIB or IPV6-MIB returned 0 rows. * Creates shadow objects from all found ARP/NDP records. * Stores all shadow objects that does not exist in the database already. Ie: If there's a row with the same netboxid, ip, mac and end_time = 'infinity' the new record will not be stored. * All existing records with end_time = 'infinity' that are not found on this run will be timed out, ie: end_time will be set to the current time. ===== CAM ===== * Collects dynamic CAM records for level 2 and level 3 devices. * Uses community string indexing if it's needed for the netbox. Will also try community string indexing if we're not certain and there exists vlans on the box. * Stores all new records in the database. * If a record is not found, we set an end_time to the existing record and start counting misses (miss count). * If the miss count exceeds the maximum (default 3) we consider the record closed. * Closed records have end time != infinity and miss count == null. * If however the record is found before the maximum miss count is exceeded, we reset miss count to 0 and end time to infinity. ===== DNS name ===== * Performs reverse DNS lookups on netbox IP addresses * Generates events if there's a missmatch between the reverse DNS lookup and the stored sysname. ===== Interfaces ===== * Polls all interfaces from a given netbox. * Compares collected list of interfaces to what's stored in the database. * New interfaces are stored. * If a interface in the database was not found on the netbox during this run, it is marked as missing (timestamped to the current time). ===== Prefix ===== * Collects IPv4 and IPv6 with prefixes using ipAddressTable from IP-MIB * Fallback to ipAddrTable if no reply on ipAddressTable * Tries CISCO-IETF-MIB (cIpAddressTable) if no reply on 'ipAddressTable' ===== TypeOID ===== * Retrieves sysObjectID from the netbox and compares it to what's stored in the database. * The database table "type" is used to map sysObjectId to vendor and the netbox type. * FIXME Not implemeted: Posts an event if there's a missmatch between stored type and the retrieved type and updates the database. ===== Vlan ===== * Retrieves vlan from switches and stuff.