Network management protocol:
- discover device configuration, health, network connections
- modify some configuration
- agents (managed devices, server program) can send traps (notification messages) to management stations (client program)
SNMP defines a hierarchical namespace of variables. The naming hierarchy is made up of *MIB*s - structured text files that describe the data accessible through SNMP. *OID*s - names for a specific managed piece of data. For example the OID that refers to the uptime of the system is 220.127.116.11.18.104.22.168.
The current basic MIB for TCP/IP is MIB-II (defined by RFC1213). In addition to basic MIB, there are MIBs for * various hardware interfaces * various protocols * individual vendors
A MIB is just a schema for naming management data. To be useful, there must be an agent-side program that maps between the SNMP namespace and the device’s actual state. SNMP agents (like NET-SNMP) come with built-in support for MIB-II and can be extended to support supplemental MIBs.
- get – read data
- get-next – step through MIB hierarchy or read table
- set – write data
- trap – unsolicited, asynchronous notification from server (agent)
Since SNMP messages could modify data some security is needed. The simplest version is based on community strings (for reading and writing) which is another name for passwords. SNMP v3 brings access control with higher security.
Authoritative free implementation of SNMP for UNIX and Linux. Includes:
* agent (deb:
* command line tools (deb:
* server (for receiving traps)
* library for developing SNMP-aware applications (deb:
* MIBs for network interfaces, memory, disk, processes and CPU (deb:
The agent is easily extensible - it can execute any command and return its output as an SNMP response (you can monitor almost anything).
snmpget - query for a specific OID value
snmpget -v1 -c commnunity-string my-device .22.214.171.124.126.96.36.199.0
-v1– use simple authentication
.188.8.131.52.184.108.40.206.0– OID for system description
snmpwalk - list available OIDs
snmpwalk -v1 -c community-string my-device