SNMP Service

Document revision 1.4 (22-Oct-2003)
This document applies to the MikroTik RouterOS V2.7

Table of Contents

Summary

SNMP is a network protocol that allows managing many network devices from one location.

The MikroTik RouterOS supports:

Specifications

Packages required : system, ppp (optional)
License required : Any
Home menu level : /snmp
Protocols utilized : SNMP (RFC1157)
Hardware usage: not significant

Related Documents

Software Package Installation and Upgrading
IP Addresses and Address Resolution Protocol (ARP)

Description

Mikrotik implemetation of Simple Network Management Protocol (SNMP) provides a possibility to access the configuration and statistics from the remote location. Installation of the SNMP package makes the router an SNMP agent.

SNMP Setup

Submenu level : /snmp
[admin@MikroTik] snmp> print
     enabled: no
     contact: ""
    location: ""
[admin@MikroTik] snmp>

Property Description

enabled (yes | no, default: no) - whether the SNMP service is enabled
contact (string, default: "") - contact information for the NMS
location (string, default: "") - location information for the NMS
Example To enable the service, specifying some inforation:
[admin@MikroTik] snmp> set contact=Sysadmin-555-1212 location=MikroTik enabled=yes
[admin@MikroTik] snmp> print
     enabled: yes
     contact: Sysadmin-555-1212
    location: MikroTik
[admin@MikroTik] snmp>

SNMP Communities

Submenu level : /snmp community

Description

The community is like a 'username' for connecting to the SNMP agent. The default community for SNMP is public:

Property Description

name (name) - community name
address (IP address/mask, default: 0.0.0.0/0) - allow only requests from these addresses
read-access (yes | no, default: yes) - whether the read access is enabled for the community

Example

To view the existing communities:
[admin@MikroTik] snmp community> print
  # NAME                                         ADDRESS            READ-ACCESS
  0 public                                       0.0.0.0/0          yes
[admin@MikroTik] snmp community>
To disable read access to the public community:
[admin@MikroTik] snmp community> print
  # NAME                                         ADDRESS            READ-ACCESS
  0 public                                       0.0.0.0/0          yes
[admin@MikroTik] snmp community> set public read-access=no
[admin@MikroTik] snmp community> print
  # NAME                                         ADDRESS            READ-ACCESS
  0 public                                       0.0.0.0/0          no
To add the community called communa, that is only accessible from the 159.148.116.0/24 network:
[admin@MikroTik] snmp community> add name=communa address=159.148.116.0/24
[admin@MikroTik] snmp community> print
  # NAME                                         ADDRESS            READ-ACCESS
  0 public                                       0.0.0.0/0          no
  1 communa                                      159.148.116.0/24   no
[admin@MikroTik] snmp community>

Available MIBs

Mikrotik RouterOS OID: enterprises.14988.1

MIB objects supported

RFC1493

dot1dBridge.dot1dBase.dot1dBaseBridgeAddress
dot1dBridge.dot1dStp.dot1dStpProtocolSpecification
dot1dBridge.dot1dStp.dot1dStpPriority
dot1dBridge.dot1dTp.dot1dTpFdbTable.dot1dTpFdbEntry.dot1dTpFdbAddress
dot1dBridge.dot1dTp.dot1dTpFdbTable.dot1dTpFdbEntry.dot1dTpFdbPort
dot1dBridge.dot1dTp.dot1dTpFdbTable.dot1dTpFdbEntry.dot1dTpFdbStatus

RFC2863

ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifHCInOctets
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifHCInUcastPkts
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifHCOutOctets
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifHCOutUcastPkts

RFC1213

interfaces.ifNumber
interfaces.ifTable.ifEntry.ifIndex
interfaces.ifTable.ifEntry.ifDescr
interfaces.ifTable.ifEntry.ifType
interfaces.ifTable.ifEntry.ifMtu
interfaces.ifTable.ifEntry.ifSpeed
interfaces.ifTable.ifEntry.ifPhysAddress
interfaces.ifTable.ifEntry.ifAdminStatus
interfaces.ifTable.ifEntry.ifOperStatus
interfaces.ifTable.ifEntry.ifLastChange
interfaces.ifTable.ifEntry.ifInOctets
interfaces.ifTable.ifEntry.ifInUcastPkts
interfaces.ifTable.ifEntry.ifInNUcastPkts
interfaces.ifTable.ifEntry.ifInDiscards
interfaces.ifTable.ifEntry.ifInErrors
interfaces.ifTable.ifEntry.ifInUnknownProtos
interfaces.ifTable.ifEntry.ifOutOctets
interfaces.ifTable.ifEntry.ifOutUcastPkts
interfaces.ifTable.ifEntry.ifOutNUcastPkts
interfaces.ifTable.ifEntry.ifOutDiscards
interfaces.ifTable.ifEntry.ifOutErrors
interfaces.ifTable.ifEntry.ifOutQLen

RFC2011

ip.ipForwarding
ip.ipDefaultTTL
ip.ipAddrTable.ipAddrEntry.ipAdEntAddr
ip.ipAddrTable.ipAddrEntry.ipAdEntIfIndex
ip.ipAddrTable.ipAddrEntry.ipAdEntNetMask
ip.ipAddrTable.ipAddrEntry.ipAdEntBcastAddr
ip.ipAddrTable.ipAddrEntry.ipAdEntReasmMaxSize
ip.ipNetToMediaTable.ipNetToMediaEntry.ipNetToMediaIfIndex
ip.ipNetToMediaTable.ipNetToMediaEntry.ipNetToMediaPhysAddress
ip.ipNetToMediaTable.ipNetToMediaEntry.ipNetToMediaNetAddress
ip.ipNetToMediaTable.ipNetToMediaEntry.ipNetToMediaType

RFC2096

ip.ipForward.ipCidrRouteNumber
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteDest
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteMask
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteTos
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteNextHop
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteIfIndex
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteType
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteProto
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteAge
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteInfo
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteNextHopAS
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteMetric1
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteMetric2
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteMetric3
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteMetric4
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteMetric5
ip.ipForward.ipCidrRouteTable.ipCidrRouteEntry.ipCidrRouteStatus

Note thet obsolete ip.ipRouteTable is also supported.

RFC1213

system.sysDescr
system.sysObjectID
system.sysUpTime
system.sysContact
system.sysName
system.sysLocation
system.sysServices

RFC2790

host.hrSystem.hrSystemUptime
host.hrSystem.hrSystemDate
host.hrStorage.hrMemorySize
host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageIndex
host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageType
host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageDescr
host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageAllocationUnits
host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageSize
host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageUsed

CISCO-AAA-SESSION-MIB

Note that this MIB is supported only when ppp package is installed. It reports both ppp and hotspot active users. enterprises.cisco.ciscoMgmt.ciscoAAASessionMIB.casnMIBObjects.casnActive.casnActiveTableEntries
enterprises.cisco.ciscoMgmt.ciscoAAASessionMIB.casnMIBObjects.casnActive.casnActiveTable.casnActiveEntry.casnSessionId
enterprises.cisco.ciscoMgmt.ciscoAAASessionMIB.casnMIBObjects.casnActive.casnActiveTable.casnActiveEntry.casnUserId
enterprises.cisco.ciscoMgmt.ciscoAAASessionMIB.casnMIBObjects.casnActive.casnActiveTable.casnActiveEntry.casnIpAddr

MIB objects reported as '0'

RFC2863

ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifInMulticastPkts
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifInBroadcastPkts
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifOutMulticastPkts
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifOutBroadcastPkts
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifHCInMulticastPkts
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifHCInBroadcastPkts
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifHCOutMulticastPkts
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifHCOutBroadcastPkts
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifHighSpeed

RFC2790

host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageAllocationFailures

Tools for SNMP Data Collection and Analysis

MRTG (Multi Router Traffic Grapher) is the most commonly used SNMP monitor.

http://ee-staff.ethz.ch/~oetiker/webtools/mrtg/

Example of using MRTG with Mikrotik SNMP

Here is a example configuration file for MRTG to monitor network card traffic on Mikrotik RouterOS This file was created with MRTG v2.9.17 cfgmaker on a linux computer. This is a only an example file.

MRTG Sample Configuration

For more information read the MRTG documentation: Configuration Reference

Additional Resources

http://www.ietf.org/rfc/rfc1157.txt
http://www.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/snmp.htm


© Copyright 1999-2003, MikroTik