discover_new_neighbors( )

Given a Device database object, and a working SNMP connection, discover and store the device's port neighbors information.

Entries in the Topology database table will override any discovered device port relationships.

The Device database object can be a fresh DBIx::Class::Row object which is not yet stored to the database.

Any discovered neighbor unknown to Netdisco will have a discover job immediately queued (subject to the filtering by the discover_* settings).

store_neighbors( $device, \@incomplete? )

returns: @to_discover

Given a Device database object, and a working SNMP connection, discover and store the device's port neighbors information.

Entries in the Topology database table will override any discovered device port relationships.

The Device database object can be a fresh DBIx::Class::Row object which is not yet stored to the database.

A list of discovered neighbors will be returned as [$ip, $type] tuples.

Neighbor columns are cleared on the device's other ports, unless a neighbor walk was incomplete. Those walk outcomes are pushed onto @incomplete when it is given.

clear_neighbor_columns( $device, \@keep_ports, %opt )

Clears remote_* and is_uplink on the device's ports not named in @keep_ports, in one statement that writes only rows not already clear. Ports with manual_topo are left alone, unless include_manual is set, when they are cleared too and manual_topo is set false.