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.
sysDescrinstead of1.3.6.1.2.1.1.1.0). - SNMP Walk vs SNMP Get:
snmpgetqueries a single OID, whilesnmpwalktraverses an entire subtree from a base OID. Usesnmpwalkto 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
.0to access the actual instance (e.g.sysDescr.0). Without it, the device may return "No such instance" or incomplete data.