DeviceSNMPDiscovery

Overview

The Unified Assurance Core Device SNMP Discovery application utilizes SNMP and SNMP Access Profiles to obtain additional information about devices marked as New or Verified in the Device Catalog. The application will also periodically re-test SNMP Access Profiles for devices that had been previously discovered. Unified Assurance uses this information to apply a Device Type to the device in the Device Catalog. Rules files can also be utilized with this application to further customize the Device Catalog record for the device based upon the returned data. If discovery was successfully completed via this application, the device State appears as Discovered in the Device Catalog.

Device SNMP Discovery Setup

  1. Add an SNMP Access Profile(s) or modify existing SNMP Access Profiles:

    Configuration -> Device Discovery -> SNMP Access

  2. Enable the default Job, unless a specific configuration option is needed.

    Configuration -> Broker Control -> Jobs

Default Scheduled Job

Field Value
Package Name coreCollection-app
Job Name Device SNMP Discovery
Job Program bin/core/collection/DeviceSNMPDiscovery
Job Arguments
Job Description Runs SNMP Discovery Profiles for Device Catalog
Failover Type Standalone (Supported: Standalone, Primary/Backup)
Status Disabled
Privileged (Checked)
Minutes 59
Hours 23
Days *
Months *
WeekDays 6

Default Configuration

Name Value Possible Values Notes
BaseRules collection/discovery/snmp/base.rules Text, 255 characters Relative path to Base Rules.
BranchDir core/default Text, 255 characters Relative path to Rules dir.
ExpireTime 1209600 Integer How long to wait (in seconds) before rediscovery of a device is tried.
IncludeRules collection/discovery/snmp/base.includes Text, 255 characters Relative path to Include Rules.
LoadRules collection/discovery/snmp/base.load Text, 255 characters Relative path to Load Rules.
LogFile logs/DeviceSNMPDiscovery.log Text, 255 characters Relative path to Log File.
LogLevel ERROR OFF, FATAL, ERROR, WARN, INFO, DEBUG Logging level used by application.
PreferIPv4 Enabled Enabled/Disabled Controls whether or not to prefer IPv4 transport to communicate with Devices. This option is only considered if both IPv4 and IPv6 are available for a device. If this configuration is missing, IPv6 will be preferred.
Threads 3 Integer The number of process threads created.
TimeOut 5 Integer The time out for the SNMP connection.
DeviceZoneID Default First Zone Integer Optional - If specified, only the devices in the given zone are discovered. If not specified or set to '[All Zones]', discovers devices in all zones.

Best Practice

Rules

This application uses the Unified Assurance standard rules architecture. The rules are written in Perl syntax. Refer to the following guides for details on rules creation:

Tokens

The application exposes the following tokens for rules processing.

Token Description
$DeviceID Device's internal DeviceID.
$DNS DNS Address of Device.
$IPv4 IPv4 Address of Device.
$IPv6 IPv6 Address of the Device.
$SysOID Device System Object Identifier (preferred method, same as using $SNMPInfo->{'SysObjectID'}).
$SNMPInfo->{'Version'} SNMP version used.
$SNMPInfo->{'AccessProfileID'} SNMP Access profile ID used for this device in Unified Assurance.
$SNMPInfo->{'AccessProfileName'} SNMP Access profile name used for this device in Unified Assurance.
$SNMPInfo->{'SysObjectID'} System Object ID (same as using $SysOID).
$SNMPInfo->{'SysName'} System Name.
$SNMPInfo->{'SysContact'} System Contact.
$SNMPInfo->{'SysLocation'} System Location.
$SNMPInfo->{'SysServices'} System Services.
$SNMPInfo->{'SysDescr'} System Description.
$SNMPInfo->{'Serial'} Serial.
$SNMPInfo->{'IPForward'} IP Forward.
$AppConfig Hash reference to the application configuration name-value pairs that were configured. (i.e. use $AppConfig->{'Host'} to retrieve the set value for 'Host'.)
$Session Net::SNMP session object connected to the device. For advanced discovery of device information only.

Administration Details

The following list shows the technical details you will need for advanced administration of the application: