Net-SNMP


Net-SNMP is a suite of software for using and deploying the SNMP protocol. It supports IPv4, IPv6, IPX, AAL5, Unix domain sockets and other transports. It contains a generic client library, a suite of command line applications, a highly extensible SNMP agent, perl modules and python modules.

Distribution

Net-SNMP is housed on SourceForge and is usually in the top 100 projects in the sourceforge ranking system. It was the March 2005 SourceForge Project of the Month.
It is very widely distributed and comes included with many operating systems including most distributions of Linux, FreeBSD, OpenBSD, Solaris, and OS X. It is also available from the Net-SNMP web site.

History

Steve Waldbusser of CMU started a freely available SNMP tool kit in 1992. The package was later abandoned by CMU and Wes Hardaker at UC Davis renamed it to UCD-SNMP and extended it to meet the network management needs of the Electrical Engineering department there. Eventually Mr. Hardaker left the university and realized that the project was now network wide and thus renamed it to Net-SNMP to reflect its distributed development.
The roots of the Net-SNMP project are long and a full description can be found on the page.

SNMP Applications Included With Net-SNMP

ApplicationDescription
encode_keychangeproduce the KeyChange string for SNMPv3.
snmptranslatetranslate MIB OID names between numeric and textual forms.
snmpgetcommunicates with a network entity using SNMP GET requests.
snmpgetnextCommunicates with a network entity using SNMP GETNEXT requests.
snmpbulkgetCommunicates with a network entity using SNMP GETBULK requests.
snmpwalkretrieve a subtree of management values using SNMP GETNEXT requests.
snmpbulkwalkretrieve a subtree of management values using SNMP GETBULK requests.
snmpsetcommunicates with a network entity using SNMP SET requests.
snmptrapSends SNMP TRAP or INFORM notification messages.
snmpdA SNMP agent that responds to SNMP requests for a given host.
snmptrapdA SNMP daemon that listens for SNMP TRAPs or INFORMs and logs or acts upon them.
snmptestcommunicates with a network entity using SNMP requests.
mib2cA MIB conversion utility that can translate MIB structures into other forms, such as C-code
tkmiba perl/Tk interactive graphical MIB browser for SNMP.

Snmpget

The command snmpget uses the snmpget application to retrieve information associated with a specific object identifier from a target device.

Example

An example of snmpget usage 67 days, 21:48:39.77

Snmpwalk

The command snmpwalk uses the SNMP GETNEXT request to query a network for a tree of information.
An object identifier may be given on the command line. This OID specifies which portion of the object identifier space will be searched using GETNEXT requests. All variables in the subtree below the given OID are queried and their values presented to the user. If no OID argument is present, snmpwalk will search the subtree rooted at SNMPv2-SMI::mib-2.

Example

An example of snmpwalk usage :
$ snmpwalk -t 5 -Os -c demopublic -v 2c test.net-snmp.org system
sysDescr.0 = STRING: Linux test.net-snmp.org 2.6.18-164.el5 #1 SMP Thu Sep 3 03:28:30 EDT 2009 x86_64
sysObjectID.0 = OID: netSnmpAgentOIDs.10
sysUpTimeInstance = Timeticks: 3 days, 22:59:45.03
sysContact.0 = STRING: Net-SNMP Coders
sysName.0 = STRING: test.net-snmp.org
sysLocation.0 = STRING: Undisclosed