Mikrotik monitoring using zabbix

Although Mikrotik has it’s own network monitor, namely the dude, they can be checked upon just as easily with Zabbix using SNMP. Zabbix is in my oppinion a pretty good solution (since it has native agents for both Windows and Linux as well) let’s use that instad.

Client setup

Log in to your router using winbox:

01

Go to IP -> SNMP:

02

The SNMP Settings panel will appear. Check Enabled, enter your email address into the Contact Info field and assign a descriptive Location. Enter public as Trap Community and set the Trap Version to 2.

03

XML template

Save the following code segment into an xml file:

Note: double click any part of the textarea to select the entire segment

<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
<version>2.0</version>
<date>2016-09-26T12:11:47Z</date>
<groups>
<group>
<name>Routers</name>
</group>
<group>
<name>Switches</name>
</group>
</groups>
<templates>
<template>
<template>Mikrotik Generic</template>
<name>Mikrotik Generic</name>
<description/>
<groups>
<group>
<name>Routers</name>
</group>
<group>
<name>Switches</name>
</group>
</groups>
<applications>
<application>
<name>Interfaces</name>
</application>
<application>
<name>Storage</name>
</application>
<application>
<name>System</name>
</application>
</applications>
<items>
<item>
<name>Host CPU Architecture</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>SNMPv2-SMI::mib-2.47.1.1.1.1.7.65536</snmp_oid>
<key>sysArchitecture.0</key>
<delay>3600</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>4</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>14</inventory_link>
<applications>
<application>
<name>System</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item>
<item>
<name>Host Date</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>HOST-RESOURCES-MIB::hrSystemDate.0</snmp_oid>
<key>hrSystemDate.0</key>
<delay>3600</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>4</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>System</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item>
<item>
<name>Host Description</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>SNMPv2-MIB::sysDescr.0</snmp_oid>
<key>sysDescr.0</key>
<delay>3600</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>4</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>1</inventory_link>
<applications>
<application>
<name>System</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item>
<item>
<name>Host Name</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>SNMPv2-MIB::sysName.0</snmp_oid>
<key>sysName.0</key>
<delay>3600</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>4</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>3</inventory_link>
<applications>
<application>
<name>System</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item>
<item>
<name>Host OS</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>SNMPv2-SMI::mib-2.47.1.1.1.1.2.65536</snmp_oid>
<key>sysOS.0</key>
<delay>3600</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>4</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>5</inventory_link>
<applications>
<application>
<name>System</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item>
<item>
<name>Host Uptime</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>1</multiplier>
<snmp_oid>HOST-RESOURCES-MIB::hrSystemUptime.0</snmp_oid>
<key>hrSystemUptime.0</key>
<delay>3600</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>0</value_type>
<allowed_hosts/>
<units>uptime</units>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>0.01</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>System</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item>
<item>
<name>Number of network interfaces</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>IF-MIB::ifNumber.0</snmp_oid>
<key>ifNumber</key>
<delay>3600</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>3</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Interfaces</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item>
</items>
<discovery_rules>
<discovery_rule>
<name>Network interfaces</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<snmp_oid>IF-MIB::ifDescr</snmp_oid>
<key>ifDescr</key>
<delay>3600</delay>
<status>0</status>
<allowed_hosts/>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<delay_flex/>
<params/>
<ipmi_sensor/>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<filter>
<evaltype>0</evaltype>
<formula/>
<conditions/>
</filter>
<lifetime>30</lifetime>
<description/>
<item_prototypes>
<item_prototype>
<name>Admin status of interface $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>IF-MIB::ifAdminStatus.{#SNMPINDEX}</snmp_oid>
<key>ifAdminStatus[{#SNMPVALUE}]</key>
<delay>60</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>3</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description>The desired state of the interface.</description>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Interfaces</name>
</application>
</applications>
<valuemap>
<name>SNMP interface status (ifAdminStatus)</name>
</valuemap>
<logtimefmt/>
</item_prototype>
<item_prototype>
<name>Alias of interface $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>IF-MIB::ifAlias.{#SNMPINDEX}</snmp_oid>
<key>ifAlias[{#SNMPVALUE}]</key>
<delay>3600</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>4</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Interfaces</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item_prototype>
<item_prototype>
<name>Description of interface $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>IF-MIB::ifDescr.{#SNMPINDEX}</snmp_oid>
<key>ifDescr[{#SNMPVALUE}]</key>
<delay>3600</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>4</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Interfaces</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item_prototype>
<item_prototype>
<name>Inbound errors on interface $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>IF-MIB::ifInErrors.{#SNMPINDEX}</snmp_oid>
<key>ifInErrors[{#SNMPVALUE}]</key>
<delay>60</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>3</value_type>
<allowed_hosts/>
<units/>
<delta>1</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description>For packet-oriented interfaces, the number of inbound packets that contained errors preventing them from being deliverable to a higher-layer protocol. For character-oriented or fixed-length interfaces, the number of inbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol.</description>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Interfaces</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item_prototype>
<item_prototype>
<name>Incoming traffic on interface $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>1</multiplier>
<snmp_oid>IF-MIB::ifInOctets.{#SNMPINDEX}</snmp_oid>
<key>ifInOctets[{#SNMPVALUE}]</key>
<delay>60</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>3</value_type>
<allowed_hosts/>
<units>bps</units>
<delta>1</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>8</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Interfaces</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item_prototype>
<item_prototype>
<name>MTU of interface $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>IF-MIB::ifMtu.{#SNMPINDEX}</snmp_oid>
<key>ifMtu[{#SNMPVALUE}]</key>
<delay>3600</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>3</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description>Maximum transmission unit.</description>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Interfaces</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item_prototype>
<item_prototype>
<name>Operational status of interface $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>IF-MIB::ifOperStatus.{#SNMPINDEX}</snmp_oid>
<key>ifOperStatus[{#SNMPVALUE}]</key>
<delay>60</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>3</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description>The current operational state of the interface.</description>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Interfaces</name>
</application>
</applications>
<valuemap>
<name>SNMP interface status (ifOperStatus)</name>
</valuemap>
<logtimefmt/>
</item_prototype>
<item_prototype>
<name>Outbound errors on interface $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>IF-MIB::ifOutErrors.{#SNMPINDEX}</snmp_oid>
<key>ifOutErrors[{#SNMPVALUE}]</key>
<delay>60</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>3</value_type>
<allowed_hosts/>
<units/>
<delta>1</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description>For packet-oriented interfaces, the number of outbound packets that could not be transmitted because of errors. For character-oriented or fixed-length interfaces, the number of outbound transmission units that could not be transmitted because of errors.</description>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Interfaces</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item_prototype>
<item_prototype>
<name>Outgoing traffic on interface $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>1</multiplier>
<snmp_oid>IF-MIB::ifOutOctets.{#SNMPINDEX}</snmp_oid>
<key>ifOutOctets[{#SNMPVALUE}]</key>
<delay>60</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>3</value_type>
<allowed_hosts/>
<units>bps</units>
<delta>1</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>8</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Interfaces</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item_prototype>
<item_prototype>
<name>Physical address of interface $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>IF-MIB::ifPhysAddress.{#SNMPINDEX}</snmp_oid>
<key>ifPhysAddress[{#SNMPVALUE}]</key>
<delay>3600</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>4</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description>Mac/Hardware/Physical address of interface</description>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Interfaces</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item_prototype>
<item_prototype>
<name>Speed of interface $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>IF-MIB::ifSpeed.{#SNMPINDEX}</snmp_oid>
<key>ifSpeed[{#SNMPVALUE}]</key>
<delay>60</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>3</value_type>
<allowed_hosts/>
<units>bps</units>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description>Interface Speed</description>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Interfaces</name>
</application>
</applications>
<valuemap>
<name>SNMP interface status (ifAdminStatus)</name>
</valuemap>
<logtimefmt/>
</item_prototype>
<item_prototype>
<name>Type of interface $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>IF-MIB::ifType.{#SNMPINDEX}</snmp_oid>
<key>ifType[{#SNMPVALUE}]</key>
<delay>60</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>1</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Interfaces</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item_prototype>
</item_prototypes>
<trigger_prototypes>
<trigger_prototype>
<expression>{Mikrotik Generic:ifAdminStatus[{#SNMPVALUE}].diff(0)}=1</expression>
<name>Admin status was changed on {HOST.NAME} interface {#SNMPVALUE}</name>
<url/>
<status>0</status>
<priority>1</priority>
<description/>
<type>0</type>
</trigger_prototype>
<trigger_prototype>
<expression>{Mikrotik Generic:ifSpeed[{#SNMPVALUE}].last(0)}=10000000</expression>
<name>Connection is only 10BASE on {HOST.NAME} interface {#SNMPVALUE}</name>
<url/>
<status>0</status>
<priority>2</priority>
<description/>
<type>0</type>
</trigger_prototype>
<trigger_prototype>
<expression>{Mikrotik Generic:ifSpeed[{#SNMPVALUE}].last(0)}=100000000</expression>
<name>Connection is only 100BASE on {HOST.NAME} interface {#SNMPVALUE}</name>
<url/>
<status>0</status>
<priority>1</priority>
<description/>
<type>0</type>
</trigger_prototype>
<trigger_prototype>
<expression>{Mikrotik Generic:ifOperStatus[{#SNMPVALUE}].diff(0)}=1</expression>
<name>Operational status was changed on {HOST.NAME} interface {#SNMPVALUE}</name>
<url/>
<status>0</status>
<priority>1</priority>
<description/>
<type>0</type>
</trigger_prototype>
<trigger_prototype>
<expression>{Mikrotik Generic:ifOperStatus[{#SNMPVALUE}].last()}=2 and {Mikrotik Generic:ifAdminStatus[{#SNMPVALUE}].last()}=1</expression>
<name>{HOST.NAME} Interface {#SNMPVALUE} Down</name>
<url/>
<status>0</status>
<priority>4</priority>
<description>Where the Admin Status -- Desired -- equals 1 (Up) and the Operational Status -- actual -- equals 2 (Down), an interface that is supposed to be operational is not.</description>
<type>0</type>
</trigger_prototype>
<trigger_prototype>
<expression>8*{Mikrotik Generic:ifInOctets[{#SNMPVALUE}].last()}/{Mikrotik Generic:ifSpeed[{#SNMPVALUE}].last()}&gt;0.9</expression>
<name>{HOST.NAME} Interface {#SNMPVALUE} Inbound Congestion</name>
<url/>
<status>0</status>
<priority>3</priority>
<description>Incoming Traffic is greater than 90% bandwidth.</description>
<type>0</type>
</trigger_prototype>
<trigger_prototype>
<expression>8*{Mikrotik Generic:ifInOctets[{#SNMPVALUE}].last()}/{Mikrotik Generic:ifSpeed[{#SNMPVALUE}].last()}&gt;0.8</expression>
<name>{HOST.NAME} Interface {#SNMPVALUE} Inbound Congestion</name>
<url/>
<status>0</status>
<priority>2</priority>
<description>Incoming traffic is greater than 80% bandwidth.</description>
<type>0</type>
</trigger_prototype>
<trigger_prototype>
<expression>8*{Mikrotik Generic:ifOutOctets[{#SNMPVALUE}].last()}/{Mikrotik Generic:ifSpeed[{#SNMPVALUE}].last()}&gt;0.8</expression>
<name>{HOST.NAME} Interface {#SNMPVALUE} Outbound Congestion</name>
<url/>
<status>0</status>
<priority>2</priority>
<description>Outgoing traffic is greater than 80% bandwidth.</description>
<type>0</type>
</trigger_prototype>
<trigger_prototype>
<expression>8*{Mikrotik Generic:ifOutOctets[{#SNMPVALUE}].last()}/{Mikrotik Generic:ifSpeed[{#SNMPVALUE}].last()}&gt;0.9</expression>
<name>{HOST.NAME} Interface {#SNMPVALUE} Outbound Congestion</name>
<url/>
<status>0</status>
<priority>3</priority>
<description>Outgoing Traffic is greater than 90% bandwidth.</description>
<type>0</type>
</trigger_prototype>
</trigger_prototypes>
<graph_prototypes>
<graph_prototype>
<name>Errors on Interface {#SNMPVALUE}</name>
<width>900</width>
<height>200</height>
<yaxismin>0.0000</yaxismin>
<yaxismax>100.0000</yaxismax>
<show_work_period>1</show_work_period>
<show_triggers>1</show_triggers>
<type>0</type>
<show_legend>1</show_legend>
<show_3d>0</show_3d>
<percent_left>0.0000</percent_left>
<percent_right>0.0000</percent_right>
<ymin_type_1>0</ymin_type_1>
<ymax_type_1>0</ymax_type_1>
<ymin_item_1>0</ymin_item_1>
<ymax_item_1>0</ymax_item_1>
<graph_items>
<graph_item>
<sortorder>0</sortorder>
<drawtype>5</drawtype>
<color>FFFF00</color>
<yaxisside>0</yaxisside>
<calc_fnc>2</calc_fnc>
<type>0</type>
<item>
<host>Mikrotik Generic</host>
<key>ifInErrors[{#SNMPVALUE}]</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<drawtype>5</drawtype>
<color>C80000</color>
<yaxisside>0</yaxisside>
<calc_fnc>2</calc_fnc>
<type>0</type>
<item>
<host>Mikrotik Generic</host>
<key>ifOutErrors[{#SNMPVALUE}]</key>
</item>
</graph_item>
</graph_items>
</graph_prototype>
<graph_prototype>
<name>Traffic on interface {#SNMPVALUE}</name>
<width>900</width>
<height>200</height>
<yaxismin>0.0000</yaxismin>
<yaxismax>100.0000</yaxismax>
<show_work_period>1</show_work_period>
<show_triggers>1</show_triggers>
<type>0</type>
<show_legend>1</show_legend>
<show_3d>0</show_3d>
<percent_left>0.0000</percent_left>
<percent_right>0.0000</percent_right>
<ymin_type_1>0</ymin_type_1>
<ymax_type_1>0</ymax_type_1>
<ymin_item_1>0</ymin_item_1>
<ymax_item_1>0</ymax_item_1>
<graph_items>
<graph_item>
<sortorder>0</sortorder>
<drawtype>5</drawtype>
<color>00C800</color>
<yaxisside>0</yaxisside>
<calc_fnc>2</calc_fnc>
<type>0</type>
<item>
<host>Mikrotik Generic</host>
<key>ifInOctets[{#SNMPVALUE}]</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<drawtype>5</drawtype>
<color>3333FF</color>
<yaxisside>0</yaxisside>
<calc_fnc>2</calc_fnc>
<type>0</type>
<item>
<host>Mikrotik Generic</host>
<key>ifOutOctets[{#SNMPVALUE}]</key>
</item>
</graph_item>
</graph_items>
</graph_prototype>
</graph_prototypes>
<host_prototypes/>
</discovery_rule>
<discovery_rule>
<name>Processors</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<snmp_oid>HOST-RESOURCES-MIB::hrDeviceIndex</snmp_oid>
<key>hrDeviceIndex</key>
<delay>3600</delay>
<status>0</status>
<allowed_hosts/>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<delay_flex/>
<params/>
<ipmi_sensor/>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<filter>
<evaltype>0</evaltype>
<formula/>
<conditions/>
</filter>
<lifetime>30</lifetime>
<description/>
<item_prototypes>
<item_prototype>
<name>Load of Processor $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>HOST-RESOURCES-MIB::hrProcessorLoad.{#SNMPINDEX}</snmp_oid>
<key>hrProcessorLoad[{#SNMPVALUE}]</key>
<delay>60</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>3</value_type>
<allowed_hosts/>
<units>%</units>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>System</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item_prototype>
</item_prototypes>
<trigger_prototypes>
<trigger_prototype>
<expression>{Mikrotik Generic:hrProcessorLoad[{#SNMPVALUE}].last()}&gt;90</expression>
<name>{HOST.NAME} Processor {#SNMPVALUE} Load Too High</name>
<url/>
<status>0</status>
<priority>3</priority>
<description/>
<type>0</type>
</trigger_prototype>
<trigger_prototype>
<expression>{Mikrotik Generic:hrProcessorLoad[{#SNMPVALUE}].last()}&gt;80</expression>
<name>{HOST.NAME} Processor {#SNMPVALUE} Load Too High</name>
<url/>
<status>0</status>
<priority>2</priority>
<description/>
<type>0</type>
</trigger_prototype>
</trigger_prototypes>
<graph_prototypes>
<graph_prototype>
<name>Processor {#SNMPVALUE} load</name>
<width>900</width>
<height>200</height>
<yaxismin>0.0000</yaxismin>
<yaxismax>100.0000</yaxismax>
<show_work_period>1</show_work_period>
<show_triggers>1</show_triggers>
<type>0</type>
<show_legend>1</show_legend>
<show_3d>0</show_3d>
<percent_left>0.0000</percent_left>
<percent_right>0.0000</percent_right>
<ymin_type_1>0</ymin_type_1>
<ymax_type_1>0</ymax_type_1>
<ymin_item_1>0</ymin_item_1>
<ymax_item_1>0</ymax_item_1>
<graph_items>
<graph_item>
<sortorder>0</sortorder>
<drawtype>5</drawtype>
<color>00C800</color>
<yaxisside>0</yaxisside>
<calc_fnc>2</calc_fnc>
<type>0</type>
<item>
<host>Mikrotik Generic</host>
<key>hrProcessorLoad[{#SNMPVALUE}]</key>
</item>
</graph_item>
</graph_items>
</graph_prototype>
</graph_prototypes>
<host_prototypes/>
</discovery_rule>
<discovery_rule>
<name>Storages</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<snmp_oid>HOST-RESOURCES-MIB::hrStorageDescr</snmp_oid>
<key>hrStorage</key>
<delay>3600</delay>
<status>0</status>
<allowed_hosts/>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<delay_flex/>
<params/>
<ipmi_sensor/>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<filter>
<evaltype>0</evaltype>
<formula/>
<conditions/>
</filter>
<lifetime>30</lifetime>
<description/>
<item_prototypes>
<item_prototype>
<name>Size of storage $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>1</multiplier>
<snmp_oid>HOST-RESOURCES-MIB::hrStorageSize.{#SNMPINDEX}</snmp_oid>
<key>hrStorageSize[{#SNMPVALUE}]</key>
<delay>3600</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>3</value_type>
<allowed_hosts/>
<units>b</units>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>0.001</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Storage</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item_prototype>
<item_prototype>
<name>Type of storage $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>0</multiplier>
<snmp_oid>HOST-RESOURCES-MIB::hrStorageType.{#SNMPINDEX}</snmp_oid>
<key>hrStorageType[{#SNMPVALUE}]</key>
<delay>3600</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>4</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Storage</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item_prototype>
<item_prototype>
<name>Used size of storage $1</name>
<type>4</type>
<snmp_community>{$SNMP_COMMUNITY}</snmp_community>
<multiplier>1</multiplier>
<snmp_oid>HOST-RESOURCES-MIB::hrStorageUsed.{#SNMPINDEX}</snmp_oid>
<key>hrStorageUsed[{#SNMPVALUE}]</key>
<delay>60</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>3</value_type>
<allowed_hosts/>
<units>b</units>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>0.001</formula>
<delay_flex/>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>Storage</name>
</application>
</applications>
<valuemap/>
<logtimefmt/>
</item_prototype>
</item_prototypes>
<trigger_prototypes>
<trigger_prototype>
<expression>{Mikrotik Generic:hrStorageUsed[{#SNMPVALUE}].last()}/{Mikrotik Generic:hrStorageSize[{#SNMPVALUE}].last()}&gt;0.8</expression>
<name>{HOST.NAME} Storage {#SNMPVALUE} Too High</name>
<url/>
<status>0</status>
<priority>2</priority>
<description>Storage usage greater than 80%.</description>
<type>0</type>
</trigger_prototype>
<trigger_prototype>
<expression>{Mikrotik Generic:hrStorageUsed[{#SNMPVALUE}].last()}/{Mikrotik Generic:hrStorageSize[{#SNMPVALUE}].last()}&gt;0.9</expression>
<name>{HOST.NAME} Storage {#SNMPVALUE} Too High</name>
<url/>
<status>0</status>
<priority>3</priority>
<description>Storage usage greater than 80%.</description>
<type>0</type>
</trigger_prototype>
</trigger_prototypes>
<graph_prototypes>
<graph_prototype>
<name>Storage Used on {#SNMPVALUE}</name>
<width>900</width>
<height>200</height>
<yaxismin>0.0000</yaxismin>
<yaxismax>100.0000</yaxismax>
<show_work_period>1</show_work_period>
<show_triggers>1</show_triggers>
<type>0</type>
<show_legend>1</show_legend>
<show_3d>0</show_3d>
<percent_left>0.0000</percent_left>
<percent_right>0.0000</percent_right>
<ymin_type_1>1</ymin_type_1>
<ymax_type_1>2</ymax_type_1>
<ymin_item_1>0</ymin_item_1>
<ymax_item_1>
<host>Mikrotik Generic</host>
<key>hrStorageSize[{#SNMPVALUE}]</key>
</ymax_item_1>
<graph_items>
<graph_item>
<sortorder>0</sortorder>
<drawtype>5</drawtype>
<color>00FF00</color>
<yaxisside>0</yaxisside>
<calc_fnc>2</calc_fnc>
<type>0</type>
<item>
<host>Mikrotik Generic</host>
<key>hrStorageUsed[{#SNMPVALUE}]</key>
</item>
</graph_item>
</graph_items>
</graph_prototype>
</graph_prototypes>
<host_prototypes/>
</discovery_rule>
</discovery_rules>
<macros/>
<templates/>
<screens/>
</template>
</templates>
</zabbix_export>

Server setup

Log in to your zabbix server:

04

Go to Configuration -> Templates and click the Import button to the top right of the screen:

05

Click Choose file and select the template file you just saved earlier and click Import:

06

Now go to Configuration -> Hosts and click Create host:

07

The following screen will appear:

08

Enter a Host name, a Visible name, remove Agent interfaces and add a new SNMP interface. Provide the IP address of the mikrotik device, optionally it’s hostname, leave everything as is and go to the Templates tab:

09

At the Link new templates section click the Add button:

10

Select the Template we just imported and click Select:

11

The template should be linked, you can press the Add button to add the host:

12

Leave a Reply

Your email address will not be published. Required fields are marked *