networktocode/ntc-netbox-plugin-onboarding

Detect unknown devices

misch42 opened this issue · 1 comments

Environment

  • Python version: any
  • NetBox version: any
  • ntc-netbox-plugin-onboarding version: any

Onboarding plugin could detect yet unknown devices

Proposed Functionality

Based on known devices the onboarding plugin could detect its neighbors by various means. On known devices it could request

  • LLDP, CDP, ... discovery protocols
  • ARP table
  • Routing table

to gather information about existing devices per site. The plugin could check, which devices are already known to netbox and
start an onboarding process for yet unknown devices.

Since only devices that do exist in the network, to time consuming scannning would happen. Variables could limit the scope of the detection (by IP address, by system name, or others).

For a proof-of-concept see:
https://groups.google.com/g/netbox-discuss/c/AjUXGZAQ81Q

Use Case

This feature would automatically onboard all devices in a site without previous knowledge. Or it would show devices that exist but cannot be accessed because the credentials do not fit.

Thanks @misch42, I understand the use case but for now I think it is out of scope for this plugin.
As we are seeing it, the goal of this plugin is not necessarily to import everything but rather to simplify the onboarding of "known" devices.
It's easy to discover everything in a network but we'll get a lot of junk by default. Most-likely each organization will need to apply its own custom logic to filter the devices that should or shouldn't be imported. For this reason, for now I think it would be easier to implement that outside of this plugin and onboard each device individually via the API.