Exclusions

If you have added a network as above but a single device exists within it that you can't auto
add, then you can exclude this with the following:

$config['autodiscovery']['nets-exclude'][] = '192.168.0.1/32';

Additional Options

Discovering devices by IP

By default we don't add devices by IP address, we look for a reverse dns name to be found and add with that. If this fails
and you would like to still add devices automatically then you will need to set $config['discovery_by_ip'] = true;

Short hostnames

If your devices only return a short hostname such as lax-fa0-dc01 but the full name should be lax-fa0-dc01.example.com then you can
set $config['mydomain'] = 'example.com';

Allow Duplicate sysName

By default we require unique sysNames when adding devices (this is returned over snmp by your devices). If you would like to allow
devices to be added with duplicate sysNames then please set $config['allow_duplicate_sysName'] = true;.

Discovery Methods

Below are the methods for auto discovering devices. Each one can be enabled or disabled and may have additional configuration options.

ARP

Disabled by default.

Adds devices that are listed in another device's arp table. This module depends on the arp-table module being enabled and returning data.

To enable, switch on globally the $config['discovery_modules']['discovery-arp'] = 1; or per device within the Modules section.

BGP

SNMP Scan

Apart from the aforementioned Auto-Discovery options, LibreNMS is also able to proactively scan a network for SNMP-enabled devices using the configured version/credentials.

SNMP Scan will scan $config['nets'] by default and respects $config['autodiscovery']['nets-exclude'].

To run the SNMP-Scanner you need to execute the snmp-scan.py from within your LibreNMS installation directory.

Here the script's help-page for reference:

usage: snmp-scan.py [-h] [-r NETWORK] [-t THREADS] [-l] [-v]
Scan network for snmp hosts and add them to LibreNMS.
optional arguments:
-h, --help show this help message and exit
-r NETWORK CIDR noted IP-Range to scan. Can be specified multiple times
This argument is only required if $config['nets'] is not set
Example: 192.168.0.0/24 Example: 192.168.0.0/31 will be
treated as an RFC3021 p-t-p network with two addresses,
192.168.0.0 and 192.168.0.1 Example: 192.168.0.1/32 will be
treated as a single host address
-t THREADS How many IPs to scan at a time. More will increase the scan
speed, but could overload your system. Default: 32
-l, --legend Print the legend.
-v, --verbose Show debug output. Specifying multiple times increases the
verbosity.