Back

What is an OID?

An OID (Object Identifier) is a standardized identifier mechanism defined by ITU-T and ISO/IEC for naming any object, concept, or "thing" with a globally unambiguous persistent name. It is represented as a dot-separated sequence of numbers — for example 1.3.6.1.2.1.1.1.0 — forming a path from the OID tree root to the target node. The tree has three top-level arcs: 0 (ITU-T), 1 (ISO), and 2 (joint ISO-ITU-T). Under 1.3.6.1 (iso.identified-organization.dod.internet) lie most OIDs used in networking, including SNMP management, X.509 certificates, LDAP, and IANA enterprise numbers.

In SNMP, each OID uniquely identifies a managed variable inside a MIB (Management Information Base). For instance, 1.3.6.1.2.1.1.1.0 points to sysDescr, the system description of a device. Without OIDs, network devices could not report metrics in a standardized way, and tools like Nagios, Zabbix, or PRTG could not interpret the data. Translating numeric OIDs to human-readable names is essential for monitoring infrastructure without relying on memory.

Most Common OIDs

  • 1.3.6.1.2.1.1.1.0 (sysDescr): Full description of the device's OS and hardware (vendor, model, firmware version).
  • 1.3.6.1.2.1.1.3.0 (sysUpTime): Time elapsed in hundredths of a second since the device was last rebooted.
  • 1.3.6.1.2.1.2.2.1.10 (ifInOctets): Total bytes received by a network interface; essential for bandwidth and inbound traffic measurement.
  • 1.3.6.1.2.1.25.2.3.1.6 (hrStorageUsed): Storage space used on a disk or partition, expressed in allocation units.

Tips for Using OIDs in SNMP

  • Use MIBs for automatic translation: Numeric OIDs alone are hard to remember. Load the vendor's MIB files into your SNMP manager so OIDs display as descriptive names (e.g. sysDescr instead of 1.3.6.1.2.1.1.1.0).
  • SNMP Walk vs SNMP Get: snmpget queries a single OID, while snmpwalk traverses an entire subtree from a base OID. Use snmpwalk to discover which OIDs a device supports without knowing them in advance.
  • Verify the OID ends with .0: Many scalar OIDs (single values) require a trailing .0 to access the actual instance (e.g. sysDescr.0). Without it, the device may return "No such instance" or incomplete data.

Frequently Asked Questions

What is an OID in SNMP?

An OID (Object Identifier) is a dot-separated sequence of numbers that uniquely identifies a managed variable in SNMP. For example, 1.3.6.1.2.1.1.1.0 is the OID for sysDescr, which contains the device system description. OIDs form a hierarchical tree standardized by ISO and ITU-T where each node represents an organization, device, or metric.

How are OIDs used in SNMP to monitor devices?

Use snmpget to query a specific OID: snmpget -v2c -c public 192.168.1.1 1.3.6.1.2.1.1.1.0. Use snmpwalk to traverse an entire subtree: snmpwalk -v2c -c public 192.168.1.1 1.3.6.1.2.1. OIDs enable tools like Zabbix, Nagios, or PRTG to collect CPU, memory, network traffic, and interface metrics regardless of the device vendor.

What are MIBs and what are they used for?

A MIB (Management Information Base) is a file that defines the structure and names of a device's OIDs. It acts as a dictionary, translating numbers like 1.3.6.1.2.1.1.1.0 to the human-readable name sysDescr. Common MIBs include RFC1213-MIB (SNMPv1), IF-MIB (interfaces), HOST-RESOURCES-MIB (CPU/memory/disk), and vendor-specific private MIBs.

Which SNMP OIDs are most commonly used for monitoring?

Essential OIDs include: sysDescr (1.3.6.1.2.1.1.1.0) for system description, sysUpTime (1.3.6.1.2.1.1.3.0) for uptime, ifInOctets (1.3.6.1.2.1.2.2.1.10) for inbound interface traffic, ifOutOctets (1.3.6.1.2.1.2.2.1.16) for outbound traffic, hrStorageUsed (1.3.6.1.2.1.25.2.3.1.6) for disk usage, and hrProcessorLoad (1.3.6.1.2.1.25.3.3.1.2) for CPU load.