IPv4 Multicast Routing MIB
obsoleted by
- rfc-5132 — IP Multicast MIB
Extracted elements (27)
Routing protocol values (IANAipMRouteProtocol, IANAipRouteProtocol) are defined in a separate IANA-RTPROTO-MIB module so that new protocol identifiers can be assigned by IANA without issuing a new version of this document.
The LanguageTag textual convention normalizes all alphabetic characters to lowercase to make the lexical ordering imposed by SNMP meaningful for language tags, at the cost that theoretically valid tags longer than 100 octets cannot be represented.
The MIB is deliberately protocol-independent: it covers IP Multicast Routing state common across DVMRP, PIM-SM, PIM-DM, MOSPF, and CBT. Protocol-specific managed objects are left to separate MIBs, avoiding a monolithic document that must be revised whenever a new multicast routing protocol is standardized.
For NBMA interfaces, ipMRouteNextHopAddress may differ from ipMRouteNextHopGroup because a single outgoing interface can have multiple next-hop unicast addresses for the same multicast group, requiring separate table entries per next-hop address.
ipMRouteUpstreamNeighbor returns 0.0.0.0 and ipMRouteInIfIndex returns 0 when the upstream neighbor is unknown or when datagrams are not subject to an incoming-interface check (e.g., in CBT), allowing the MIB to represent protocol semantics that lack a single upstream neighbor or incoming interface.
This MIB is specified in SMIv2 but can be mechanically translated to a SMIv1-conformant MIB; Counter64 objects (ipMRouteHCOctets, HCInMcastOctets, HCOutMcastOctets) must be omitted in the translation since there is no SMIv1 equivalent, and some machine-readable SMIv2 annotations are converted to text.
Implementations claiming compliance to ipMRouteMIBCompliance MUST implement ipMRouteMIBBasicGroup and ipMRouteMIBRouteGroup as mandatory groups.
ipMRouteMIBBoundaryGroup is mandatory if and only if the router supports administratively-scoped multicast address boundaries; otherwise it is optional.
ipMRouteMIBHCInterfaceGroup (64-bit counters: ipMRouteInterfaceHCInMcastOctets, ipMRouteInterfaceHCOutMcastOctets, ipMRouteHCOctets) is mandatory only for network interfaces whose corresponding ifSpeed exceeds 20,000,000 bits/second.
Write access to ipMRouteBoundaryStatus and ipMRouteScopeNameStatus is not required for compliance; read-only access is the minimum compliance level for these objects.
ipMRouteBoundaryTable is indexed by (ipMRouteBoundaryIfIndex, ipMRouteBoundaryAddress, ipMRouteBoundaryAddressMask) and lists administratively scoped multicast address boundaries per interface; scoped addresses must come from the range 239.x.x.x per RFC 2365. Entries are managed via RowStatus (ipMRouteBoundaryStatus).
ipMRouteDifferentInIfPackets (Counter32) counts packets received from the (S,G) sources that were dropped because they arrived on an interface other than ipMRouteInIfIndex (RPF failures). Packets not subject to an incoming interface check (e.g., CBT) are not counted.
ipMRouteEnable is a read-write scalar INTEGER with values enabled(1) or disabled(2) that controls the enabled status of IP Multicast routing on the router.
ipMRouteHCOctets (Counter64) and ipMRouteInterfaceHCInMcastOctets/HCOutMcastOctets (Counter64) are 64-bit versions of their Counter32 counterparts, providing high-capacity octet counters for high-speed interfaces.
ipMRouteInterfaceTable is indexed by ipMRouteInterfaceIfIndex and provides per-interface multicast management objects: TTL threshold (read-write), running protocol, rate limit in kbps (read-write, default 0), and 32-bit and 64-bit in/out multicast octet counters.
ipMRouteInterfaceTtl is a read-write Integer32 (0..255) TTL threshold; any IP multicast datagram with a TTL less than this value will not be forwarded out the interface. A default value of 0 means all multicast packets are forwarded.
ipMRouteNextHopClosestMemberHops (Integer32) records the minimum number of hops between this router and any member of the multicast group reachable via this next-hop; datagrams with a TTL less than this value will not be forwarded to this next-hop.
ipMRouteNextHopTable is indexed by (ipMRouteNextHopGroup, ipMRouteNextHopSource, ipMRouteNextHopSourceMask, ipMRouteNextHopIfIndex, ipMRouteNextHopAddress) and represents one outgoing interface/next-hop pair per multicast forwarding entry, tracking state (pruned/forwarding), timers, TTL threshold hops, and per-outgoing-interface packet counts.
ipMRouteRtType is an INTEGER with values unicast(1) or multicast(2) indicating whether the route placed in the multicast RIB originated from the unicast RIB (due to local configuration, e.g., PIM over RIP) or was explicitly added by a multicast routing protocol (e.g., DVMRP, Multiprotocol BGP).
ipMRouteScopeNameTable is indexed by (ipMRouteScopeNameAddress, ipMRouteScopeNameAddressMask, IMPLIED ipMRouteScopeNameLanguage) providing human-readable, language-tagged names for multicast scopes; scoped addresses must come from 239.x.x.x. ipMRouteScopeNameDefault (TruthValue, default false) indicates a preferred fallback language.
ipMRouteTable is a conceptual table indexed by (ipMRouteGroup, ipMRouteSource, ipMRouteSourceMask) containing per-(S,G) multicast forwarding state including upstream neighbor, incoming interface, uptime, expiry time, packet/octet counters, routing protocol, and the unicast route used for RPF.
LanguageTag is a TEXTUAL-CONVENTION (OCTET STRING, SIZE 1..100) representing an RFC 1766-style language tag with all alphabetic characters normalized to lowercase to make SNMP lexical ordering useful for language-tag comparison.
The IPMROUTE-STD-MIB module is registered at mib-2 83 and contains one scalar (ipMRouteEnable), five tables (ipMRouteTable, ipMRouteNextHopTable, ipMRouteInterfaceTable, ipMRouteBoundaryTable, ipMRouteScopeNameTable), and associated conformance objects for managing IPv4 multicast routing independent of the specific routing protocol.
The IANAipMRouteProtocol and IANAipRouteProtocol textual conventions used by ipMRouteProtocol, ipMRouteNextHopProtocol, ipMRouteInterfaceProtocol, and ipMRouteRtProto are defined in and managed by the IANA-RTPROTO-MIB. IANA administers assignments; new values can be added without revising this document.
Implementers are recommended to use the SNMPv3 User-based Security Model (RFC 2574) and View-based Access Control Model (RFC 2575) to restrict SET access to authorized principals only. Read access to multicast routing state (e.g., which sources send to which groups) may itself be sensitive.
Unauthorized SET access to the write-able objects in this MIB (such as multicast boundary configuration) could cause denial of service or enable wider distribution of packets intended only for local delivery. SNMPv1 alone provides no access control, making it an insecure environment for managing these objects.
ipMRouteNextHopState models two states for each outgoing next-hop: forwarding(2) indicates the interface is actively forwarding datagrams; pruned(1) indicates it is not. When in pruned(1), ipMRouteNextHopExpiryTime reflects the remaining time until the prune expires and state reverts to forwarding(2).