Net-SNMP

Net-SNMP is a suite of software for using and deploying the SNMP protocol (v1, v2c and v3 and the AgentX subagent 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 Net-SNMP history page.

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

Example
An example of snmpget usage (this will retrieve a specific OID 'sysUpTime' under the community string 'demopublic', with 'test.net-snmp.org' as the host name of the agent to query:

Snmpwalk
The command snmpwalk uses the SNMP GETNEXT request to query a network for a tree of information.

An object identifier (OID) 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 (including any MIB object values from other MIB modules, that are defined as lying within this subtree).

Example
An example of snmpwalk usage (this will retrieve all of the variables under the system OID):