| 
 snmpwalk as a Tool to Develop Checks The tool snmpwalk is installed when you install the snmp-utils.  This is a program you can use to find the OIDs that you may want to evaluate with SNMP. Here is a command that will use SNMP version 1 (-v1) to locate available OIDs on the router.  Note the password for the community is “public” in this case, your may be different.  This list may be long but it gives you a place to start. 
  
Lesson 4 | Lesson 6 
  
  
 snmpwalk 192.168.5.79 -v1 -c public  SNMPv2-MIB::sysDescr.0 = STRING: Prestige 643  SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.113921.2  DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (42600) 0:07:06.00  SNMPv2-MIB::sysContact.0 = STRING: Fred Flintstone  SNMPv2-MIB::sysName.0 = STRING: MyRouter  SNMPv2-MIB::sysLocation.0 = STRING: MyBusiness  SNMPv2-MIB::sysServices.0 = INTEGER: 14  IF-MIB::ifNumber.0 = INTEGER: 17  IF-MIB::ifIndex.1 = INTEGER: 1  IF-MIB::ifIndex.2 = INTEGER: 2  IF-MIB::ifDescr.1 = STRING: enet0  IF-MIB::ifDescr.2 = STRING: enet-encap  IF-MIB::ifType.1 = INTEGER: ethernetCsmacd(6)  IF-MIB::ifType.2 = INTEGER: other(1)  IF-MIB::ifMtu.1 = INTEGER: 1500  IF-MIB::ifMtu.2 = INTEGER: 1528  IF-MIB::ifSpeed.1 = Gauge32: 100000000  IF-MIB::ifSpeed.2 = Gauge32: 0  IF-MIB::ifPhysAddress.1 = STRING: 0:a0:c5:40:38:c1  IF-MIB::ifPhysAddress.2 = STRING: 0 
  Once you have information to start developing checks you would like to use you can then use the default check_snmp from the Nagios plugins.  This command will check to see if the first network interface of a Cisco router is available.  Note the location of the check_snmp plugin as it is installed by default when you install Nagios.
 
   /usr/lib/nagios/plugins/./check_snmp -H 192.168.5.79  -C public -o ifOperStatus.1 -w 1:1 -l 'SNMP: Port Status for port 1 is: '  SNMP: Port Status for port 1 is:  OK - 1 | IF-MIB::ifOperStatus.1=1  
  This command will achieve the same thing but with a small difference in the output.  Both commands show the router is capable of communication.
   /usr/lib/nagios/plugins/./check_snmp -H 192.168.5.79  -C public -o ifOperStatus.1 -r 1  SNMP OK - up(1) |  
  Here snmpwalk is used just to locate specific interfaces.
  snmpwalk -v1 -c public 192.168.5.79 mib-2.interfaces  IF-MIB::ifNumber.0 = INTEGER: 17  IF-MIB::ifIndex.1 = INTEGER: 1  IF-MIB::ifIndex.2 = INTEGER: 2  IF-MIB::ifDescr.1 = STRING: enet0  IF-MIB::ifDescr.2 = STRING: enet-encap  IF-MIB::ifType.1 = INTEGER: ethernetCsmacd(6)  IF-MIB::ifType.2 = INTEGER: other(1)  IF-MIB::ifMtu.1 = INTEGER: 1500  IF-MIB::ifMtu.2 = INTEGER: 1528  IF-MIB::ifSpeed.1 = Gauge32: 100000000  IF-MIB::ifSpeed.2 = Gauge32: 0  IF-MIB::ifPhysAddress.1 = STRING: 0:a0:c5:40:38:c1  IF-MIB::ifPhysAddress.2 = STRING: 0  IF-MIB::ifAdminStatus.1 = INTEGER: up(1)  IF-MIB::ifAdminStatus.2 = INTEGER: up(1) 
  Now using snmpwalk you can find out information about the system on the router.
   snmpwalk -v1 -c public 192.168.5.79 system  This command with snmpwalk will provide you with information about the system.  Here you find information about the router (Prestige 643), snmp version (SNMPv2), the uptime (2:23:36.00), system contact (Fred Flintstone), system name (MyRouter), location (MyBusiness) and system services (14).
  SNMPv2-MIB::sysDescr.0 = STRING: Prestige 643  SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.113921.2  DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (861600) 2:23:36.00  SNMPv2-MIB::sysContact.0 = STRING: Fred Flintstone  SNMPv2-MIB::sysName.0 = STRING: MyRouter  SNMPv2-MIB::sysLocation.0 = STRING: MyBusiness  SNMPv2-MIB::sysServices.0 = INTEGER: 14 
  You can use snmpwalk to determine the interfaces on the router.
  snmpwalk -v1 -c public 192.168.5.79 ifType  IF-MIB::ifType.1 = INTEGER: ethernetCsmacd(6)  IF-MIB::ifType.2 = INTEGER: other(1) 
  Once you know that the information you want is related to the Ethernet you can eliminate the other(1) by using this command.
   /usr/lib/nagios/plugins/./check_ifstatus -C public  -H 192.168.5.79 -x1  OK: host '192.168.5.79', interfaces up: 1, down: 0, dormant: 0, excluded: 1, unused: 0 |up=1,down=0,dormant=0,excluded=1,unused=0 
  If you do not eliminate the other(1) with -x1 you will see a critical warning as other is down.
   /usr/lib/nagios/plugins/./check_ifstatus -C public  -H 192.168.5.79  CRITICAL: host '192.168.5.79', interfaces up: 1, down: 1, dormant: 0, excluded: 0, unused: 0<BR>enet-encap: down <BR>   |up=1,down=1,dormant=0,excluded=0,unused=0 
  Once you have run these commands from the Nagios server command line you can start putting up automatic checks. 
 |