0

Perhaps you can help

I have quite a few mikrotik out in the field. They all connect to one 1 have in our data centre via l2pt or pptp.

Im using zabbix to monitor them, its discovery rule for the network interfaces work great. However it doesn't seem to work for the one at head office.

I get this message in the log:

SNMP agent item "ifDescr" on host "x.x.x.x" failed: first network error, wait for 15 seconds.

If i do a snmpwalk i get this result

snmpwalk -v 2c -c public x.x.x.x IF-MIB::ifDescr
IF-MIB::ifDescr.1 = STRING: 1 - Internet
IF-MIB::ifDescr.2 = STRING: 2 - DMZ
IF-MIB::ifDescr.39 = STRING: <l2tp-kepjbn>
IF-MIB::ifDescr.215 = STRING: <l2tp-km-1>
IF-MIB::ifDescr.299 = STRING: <l2tp-ct>
IF-MIB::ifDescr.378 = STRING: <pptp-ke>
IF-MIB::ifDescr.381 = STRING: <l2tp-in>

So it is getting result back from the router.

To setup the check for each interface will take a lifetime, i'd rather try correct the discovery rule.

Can anyone assist?

Rob
  • 93
  • 1
  • 2
  • 12
  • Does that host have any other SNMP items on it and do they work? Is the SNMP icon for that host gray, green or red? If it is red, what error message do you see? – asaveljevs Jun 04 '14 at 09:14
  • @asaveljevs Its green. Other snmp items work, like number of interfaces etc etc. – Rob Jun 04 '14 at 09:48
  • Which version of Zabbix are you using? If it is 2.2.3 or later, what happens when you use `snmpbulkwalk` instead of `snmpwalk`? – asaveljevs Jun 04 '14 at 10:05
  • @asavejevs Interesting... I get timeout. I assume the command is the same as the walk. IE `snmpbulkwalk -v 2c -c public x.x.x.x IF-MIB::ifDescr` – Rob Jun 04 '14 at 10:08
  • Yes, the rest of parameters should be the same. The difference between these two commands is that `snmpwalk` uses GetNextRequest-PDU, whereas `snmpbulkwalk` uses GetBulkRequest-PDU. Apparently, your device does not support it (or refuses to answer for some other reason). Since GetBulkRequest-PDU is a feature of SNMPv2 and later, you can try monitoring your device in Zabbix using SNMPv1. Please check whether setting your discovery rule to SNMPv1 helps. – asaveljevs Jun 04 '14 at 10:11
  • @asavejevs Yip turns out the version OS version on that router is 4.16 so it doesnt support snmpdumpwalk. 5 and upwards does. Guess i'll add the mibs i need manually. If you post this as a solution i'll accept it as you guided me to find the problem. Thanks for the help – Rob Jun 04 '14 at 11:57

2 Answers2

1

Up to version 2.2.2, Zabbix used GetNextRequest-PDU for low-level discovery.

Since version 2.2.3, Zabbix uses GetNextRequest-PDU for low-level discovery on SNMPv1 devices and GetBulkRequest-PDU for SNMPv2 and SNMPv3 devices, because GetBulkRequest-PDU was introduced in SNMPv2.

Your problem seems to be that the device does not support GetBulkRequest-PDU, even though it is monitored through SNMPv2.

As a workaround, you can try doing low-level discovery on that device using SNMPv1 (the rest of the items, except those with dynamic indexes, can remain SNMPv2).

Meanwhile, I shall also add you case to ZBXNEXT-2301, which speaks about being able to disable SNMP bulk for each interface.

asaveljevs
  • 1,143
  • 6
  • 8
-1

mib2zabbix

Perl script will generate a Zabbix v3 Template in XML format from an OID tree in a SNMP MIB file.

Read more here: https://github.com/cavaliercoder/mib2zabbix

Haim Cohen
  • 11
  • 2