Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I can't seem to get my head wrapped around the purpose of a MIB. I have a collection of ~20 MIB files that were supplied to me by the vendor, but what do I do with them?

I also have a few OID's that were supplied by the vendor that don't seem to be valid. When I issue an "snmpget -v1 -c public ." (assume that's a valid OID), I get an error indicating the variable is unknown. Does this sound like a hardware configuration problem? Do I need to "load" (for lack of better words) the MIB into the device?

Unfortunately, the vendor has been completely unresponsive with returning emails to my questions, so any help would be greatly appreciated.

share|improve this question
+1 for the question title :-) – Massimo Jan 3 '11 at 16:28
up vote 9 down vote accepted

MIB files are needed to tell you (or your monitoring system, or your SNMP query tool...) what OIDs actually mean; otherwise, all you get is a bunch of numbers. But this is only a client issue, the device you query already knows what OIDs it can accept queries for and what answers it should provide.

If you can't query a device for a given OID, even if the MIB states you should be able to query it, then there could be a MIB mismatch; double check the MIB you're using is actually the right one for that device and its firmware/OS version (SNMP support can change quite a while between firmware releases).

Otherwise, it could also be a configuration problem: maybe the OID you're querying is supported only in some specific configurations, and not in all ones; only the device documentation (or the vendor) can help you here.

share|improve this answer
add a .0 to the end of the OID, bet it will work. – SpacemanSpiff Jan 3 '11 at 19:02
@Tom, that's indeed the case for OIDs which represent indexable arrays of data (such as traffic counters for each interface on a router). – Massimo Jan 3 '11 at 22:52

instead of snmpget, try to walk it w/ snmpwalk or use snmpgetnext. that will tell you if you need the .0 on the end or not. you don't need mib files to talk to devices. mib files just translate numbers into more meaningful information for people to understand.

share|improve this answer

I had almost the same question today :

MIB files are needed to tell you (or your monitoring system, or your SNMP query tool...) what OIDs actually mean

Exactly, I wanted to know what . meant (and if there was some interesting OIDs around).

  • I contacted the vendor and he gave me a zip containing all the txt files with the mibs.
  • I wonder "Now what?" and searched obfuscated documentation and website ( seems to have problems)
  • I did not want to install the mibs in snmp client nor to modify anything configuration parts.

Here are the steps I followed, just in case someone else in interested :

  • unzip the provided file in /path/to/tmpdir/
  • temporarily change environnement variables :

    export MIBDIRS=/path/to/tmpdir/:/usr/share/snmp/mibs/   
    export MIBS=all
  • now you can use snmptranslate to get the mib name :

    snmptranslate .
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.