Management Information Base for Network Management of TCP/IP-based internets: MIB-II
obsoletes
- rfc-1158 — Management Information Base for network management of TCP/IP-based internets: MIB-II
updated by
- rfc-2011 — SNMPv2 Management Information Base for the Internet Protocol using SMIv2
- rfc-2012 — SNMPv2 Management Information Base for the Transmission Control Protocol using SMIv2
- rfc-2013 — SNMPv2 Management Information Base for the User Datagram Protocol using SMIv2
also
- std-17
Extracted elements (27)
MIB-II contains only essential elements with no optional individual objects within groups; criteria for inclusion required evidence of current use, essentiality for fault or configuration management, no derivability from other objects, and no implementation-specific objects.
Only weak control objects were permitted in MIB-II because the current SNMP management protocols are not sufficiently secure to do more powerful control operations; tampering with included objects can do only limited damage.
The atTable was deprecated because efficient implementations assumed a single network protocol environment and unidirectional (network-to-physical) mappings; the need to support multi-protocol nodes and inverse mappings (e.g., ES-IS) invalidated both assumptions.
The Transmission group (mib-2 10) provides an OID namespace prefix for media-specific MIB extensions; objects reside in the experimental subtree until proven, then are elevated to standard status and assigned under { transmission <ifType-integer> }.
MIB-II uses the same OID prefix as MIB-I (mib-2 OBJECT IDENTIFIER ::= { mgmt 1 }), ensuring upward compatibility with existing SNMP management infrastructure and MIB-I implementations.
The Address Translation group (atTable) is deprecated in MIB-II but must still be supported for compatibility with MIB-I nodes; it will most likely be excluded from MIB-III. From MIB-II onward, each network protocol group contains its own address translation tables.
If the semantics of a group is applicable to an implementation, then it must implement all objects in that group. For example, an implementation must implement the EGP group if and only if it implements EGP.
Management stations must be prepared to receive tabular information from agents that corresponds to entries not currently in use (invalidated routes or ARP entries); proper interpretation requires examining ipRouteType or ipNetToMediaType.
tcpConnState ACCESS is read-write to support deletion of the TCB associated with a TCP connection by setting the value to deleteTCB(12); all other state transitions are managed by the TCP protocol itself.
The value of ifIndex must remain constant at least from one re-initialization of the entity's network management system to the next re-initialization.
EGP group provides aggregate counters (egpInMsgs, egpInErrors, egpOutMsgs, egpOutErrors), egpAs (this entity's autonomous system number), and egpNeighTable with per-neighbor statistics including message counts, state transitions, hello/poll intervals, mode, and egpNeighEventTrigger.
ICMP group (mandatory) provides 26 counters for all received and transmitted ICMP message types including icmpInDestUnreachs, icmpInRedirects, icmpInEchos, icmpInTimestamps, icmpOutMsgs, and icmpOutErrors.
Interfaces group (ifTable, mandatory) defines 22 per-interface objects: ifIndex, ifDescr, ifType (enumerated: 32 media types including ethernet-csmacd, ppp, frame-relay), ifMtu, ifSpeed, ifPhysAddress, ifAdminStatus, ifOperStatus, traffic counters, ifOutQLen, and ifSpecific.
IP group (mandatory) includes ipForwarding (read-write gateway/host indicator), ipDefaultTTL (read-write), 18 IP datagram and fragmentation counters, ipAddrTable, ipRouteTable, ipNetToMediaTable, and ipRoutingDiscards.
ipAddrTable provides per-address information: ipAdEntAddr, ipAdEntIfIndex, ipAdEntNetMask, ipAdEntBcastAddr (least-significant bit of broadcast address), and ipAdEntReasmMaxSize (largest reassemblable datagram on that interface, INTEGER 0..65535).
ipNetToMediaTable replaces the deprecated atTable in the IP group, providing IP-to-physical address mappings per interface with type: other(1), invalid(2), dynamic(3), static(4).
ipRouteTable provides the entity's IP routing table with per-route entries: ipRouteDest, ipRouteIfIndex, five metrics (unused set to -1), ipRouteNextHop, ipRouteType (other/invalid/direct/indirect), ipRouteProto (14 routing protocols), ipRouteAge, ipRouteMask, and ipRouteInfo.
SNMP group (mib-2 11) provides statistical counters for agent operations (snmpInPkts, snmpOutPkts, per-PDU-type error counts, snmpInReadOnlys, snmpProxyDrops) and snmpEnableAuthenTraps (read-write) controlling authentication-failure trap generation.
System group (mandatory for all systems) provides sysDescr, sysObjectID, sysUpTime, sysContact (read-write), sysName (read-write; FQDN by convention), sysLocation (read-write), and sysServices describing the managed entity.
TCP group includes tcpRtoAlgorithm (4 values: other/constant/rsre/vanj), tcpRtoMin, tcpRtoMax, tcpMaxConn (-1 if dynamic), connection counters, tcpInErrs, tcpOutRsts, and tcpConnTable indexed by local and remote IP address and port.
Textual convention DisplayString (OCTET STRING, SIZE 0..255) is restricted to the NVT ASCII character set for human-displayable text; used in sysDescr and ifDescr. Any OCTET STRING not declared as DisplayString may contain arbitrary binary data (0–255).
Textual convention PhysAddress (OCTET STRING) represents media- or physical-level addresses in binary form; used in ifPhysAddress, atPhysAddress, and ipNetToMediaPhysAddress.
UDP group provides four counters (udpInDatagrams, udpNoPorts, udpInErrors, udpOutDatagrams) and udpTable listing active UDP listeners with udpLocalAddress and udpLocalPort.
MIB-II defines the mib-2 OID subtree ({ mgmt 1 }) with group OIDs: system(1), interfaces(2), at(3), ip(4), icmp(5), tcp(6), udp(7), egp(8), transmission(10), snmp(11); OID 9 (cmot) is reserved/historical.
MIB-II exposes several read-write objects (ipForwarding, ipDefaultTTL, routing table entries, tcpConnState) that can alter network behavior; the SNMP community-string security model provides only weak authentication, and implementors must recognize the risk of unauthorized manipulation of these control objects.
Interface state is modeled with two objects: ifAdminStatus (desired state, read-write) and ifOperStatus (current state, read-only), each taking values up(1), down(2), or testing(3); testing indicates no operational packets can be passed.
sysServices is an INTEGER (0..127) encoding OSI service layers as a bitfield sum: 2^(L-1) for each layer L served, where 1=physical, 2=datalink, 3=internet, 4=end-to-end, 7=applications. A host offering IP and application services would have value 72.