PIM-MIB

MIB Reference — IPNetwork Monitor

All MIBsPIM-MIB

Organization: IETF IDMR Working Group.

Last Updated: 2000-09-28

Category: Routing Protocols

Description:

Defines managed objects for managing the Protocol Independent Multicast (PIM) routing protocol for IPv4 multicast traffic.

Imported Objects

From IF-MIB

InterfaceIndex

From IPMROUTE-STD-MIB

ipMRouteGroupOBJECT-TYPE
ipMRouteNextHopAddressOBJECT-TYPE
ipMRouteNextHopGroupOBJECT-TYPE
ipMRouteNextHopIfIndexOBJECT-TYPE
ipMRouteNextHopSourceOBJECT-TYPE
ipMRouteNextHopSourceMaskOBJECT-TYPE
ipMRouteSourceOBJECT-TYPE
ipMRouteSourceMaskOBJECT-TYPE

From SNMPv2-CONF

MODULE-COMPLIANCE
NOTIFICATION-GROUP
OBJECT-GROUP

From SNMPv2-SMI

Integer32
IpAddress
MODULE-IDENTITY
NOTIFICATION-TYPE
OBJECT-TYPE
TimeTicks
experimental

From SNMPv2-TC

RowStatus
TruthValue

What Is PIM-MIB?

PIM-MIB is an IETF standards-based MIB module for managing routers running Protocol Independent Multicast (PIM), the multicast routing protocol used to build distribution trees for IPv4 multicast traffic. It exposes configuration and operational data for PIM-enabled interfaces, such as join/prune timers, hello intervals, designated router election, and candidate bootstrap router preferences. Administrators use it primarily to monitor the operational health of multicast routing on a device — verifying which interfaces are actively running PIM, tracking designated-router state, and confirming interface status is up rather than administratively down or failed. The PIM-MIB MIB depends on general IP and interface conventions (via ifIndex references) and is typically used alongside other multicast MIBs such as IGMP-STD-MIB. It is commonly deployed in enterprise and service-provider routers/switches that participate in IP multicast distribution, such as those carrying IPTV or financial market data feeds.

IPNetwork Monitor allows you to monitor SNMP objects defined in PIM-MIB. Use the built-in SNMP Monitoring Browser to explore available variables, view their current values and descriptions, and select the objects you want to monitor. You can then create SNMP monitors, configure thresholds, and receive alerts when monitored values change.

What Can Be Monitored

  • PIM interface operational status
  • designated router (DR) identity
  • hello interval timers
  • join/prune interval timers
  • bootstrap router preference
  • PIM interface mode (sparse/dense)

Supported Devices

  • Multicast-capable routers
  • Layer 3 switches
  • vendor-neutral, standards-based MIB, not tied to a specific manufacturer

Monitoring Examples

An admin would poll pimInterfaceTable/pimInterfaceEntry indexed by pimInterfaceIfIndex to see per-interface PIM mode, address, netmask, and pimInterfaceStatus. If pimInterfaceStatus shows an interface unexpectedly down or pimInterfaceDR changes unexpectedly, it indicates a multicast routing adjacency problem. Monitoring pimInterfaceHelloInterval and pimInterfaceJoinPruneInterval against configured baselines helps confirm timer consistency across neighboring routers, and pimInterfaceCBSRPreference reveals bootstrap router priority for RP-election troubleshooting.

OIDs
OID symbolicOID numericTypeAccessDescription
pimMIB1.3.6.1.3.61The MIB module for management of PIM routers.
pimMIBObjects1.3.6.1.3.61.1
pimTraps1.3.6.1.3.61.1.0
NTF pimNeighborLoss1.3.6.1.3.61.1.0.1A pimNeighborLoss trap signifies the loss of an adjacency with a neighbor. This trap should be generated when the neighbor timer expires, and the router has no other neighbors on the same interface with a lower IP address than itself.
pim1.3.6.1.3.61.1.1
I32 pimJoinPruneInterval1.3.6.1.3.61.1.1.1Integer32read-writeThe default interval at which periodic PIM-SM Join/Prune messages are to be sent.
pimInterfaceTable1.3.6.1.3.61.1.1.2not-accessibleThe (conceptual) table listing the router's PIM interfaces. IGMP and PIM are enabled on all interfaces listed in this table.
pimInterfaceEntry1.3.6.1.3.61.1.1.2.1not-accessibleAn entry (conceptual row) in the pimInterfaceTable.
NUM pimInterfaceIfIndex1.3.6.1.3.61.1.1.2.1.1InterfaceIndexnot-accessibleThe ifIndex value of this PIM interface.
IP pimInterfaceAddress1.3.6.1.3.61.1.1.2.1.2IpAddressread-onlyThe IP address of the PIM interface.
IP pimInterfaceNetMask1.3.6.1.3.61.1.1.2.1.3IpAddressread-onlyThe network mask for the IP address of the PIM interface.
INT pimInterfaceMode1.3.6.1.3.61.1.1.2.1.4INTEGERread-createThe configured mode of this PIM interface. A value of sparseDense is only valid for PIMv1.
IP pimInterfaceDR1.3.6.1.3.61.1.1.2.1.5IpAddressread-onlyThe Designated Router on this PIM interface. For point-to- point interfaces, this object has the value 0.0.0.0.
I32 pimInterfaceHelloInterval1.3.6.1.3.61.1.1.2.1.6Integer32read-createThe frequency at which PIM Hello messages are transmitted on this interface.
ROW pimInterfaceStatus1.3.6.1.3.61.1.1.2.1.7RowStatusread-createThe status of this entry. Creating the entry enables PIM on the interface; destroying the entry disables PIM on the interface.
I32 pimInterfaceJoinPruneInterval1.3.6.1.3.61.1.1.2.1.8Integer32read-createThe frequency at which PIM Join/Prune messages are transmitted on this PIM interface. The default value of this object is the pimJoinPruneInterval.
I32 pimInterfaceCBSRPreference1.3.6.1.3.61.1.1.2.1.9Integer32read-createThe preference value for the local interface as a candidate bootstrap router. The value of -1 is used to indicate that the local interface is not a candidate BSR interface.
pimNeighborTable1.3.6.1.3.61.1.1.3not-accessibleThe (conceptual) table listing the router's PIM neighbors.
pimNeighborEntry1.3.6.1.3.61.1.1.3.1not-accessibleAn entry (conceptual row) in the pimNeighborTable.
IP pimNeighborAddress1.3.6.1.3.61.1.1.3.1.1IpAddressnot-accessibleThe IP address of the PIM neighbor for which this entry contains information.
NUM pimNeighborIfIndex1.3.6.1.3.61.1.1.3.1.2InterfaceIndexread-onlyThe value of ifIndex for the interface used to reach this PIM neighbor.
TIK pimNeighborUpTime1.3.6.1.3.61.1.1.3.1.3TimeTicksread-onlyThe time since this PIM neighbor (last) became a neighbor of the local router.
TIK pimNeighborExpiryTime1.3.6.1.3.61.1.1.3.1.4TimeTicksread-onlyThe minimum time remaining before this PIM neighbor will be aged out.
INT pimNeighborMode1.3.6.1.3.61.1.1.3.1.5INTEGERread-onlyThe active PIM mode of this neighbor. This object is deprecated for PIMv2 routers since all neighbors on the interface must be either dense or sparse as determined by the protocol running on the interface.
pimIpMRouteTable1.3.6.1.3.61.1.1.4not-accessibleThe (conceptual) table listing PIM-specific information on a subset of the rows of the ipMRouteTable defined in the IP Multicast MIB.
pimIpMRouteEntry1.3.6.1.3.61.1.1.4.1not-accessibleAn entry (conceptual row) in the pimIpMRouteTable. There is one entry per entry in the ipMRouteTable whose incoming interface is running PIM.
TIK pimIpMRouteUpstreamAssertTimer1.3.6.1.3.61.1.1.4.1.1TimeTicksread-onlyThe time remaining before the router changes its upstream neighbor back to its RPF neighbor. This timer is called the Assert timer in the PIM Sparse and Dense mode specification. A value of 0 indicates that no Assert has changed the upstream neighbor away from the RPF neighbor.
I32 pimIpMRouteAssertMetric1.3.6.1.3.61.1.1.4.1.2Integer32read-onlyThe metric advertised by the assert winner on the upstream interface, or 0 if no such assert is in received.
I32 pimIpMRouteAssertMetricPref1.3.6.1.3.61.1.1.4.1.3Integer32read-onlyThe preference advertised by the assert winner on the upstream interface, or 0 if no such assert is in effect.
T/F pimIpMRouteAssertRPTBit1.3.6.1.3.61.1.1.4.1.4TruthValueread-onlyThe value of the RPT-bit advertised by the assert winner on the upstream interface, or false if no such assert is in effect.
BIT pimIpMRouteFlags1.3.6.1.3.61.1.1.4.1.5Bitsread-onlyThis object describes PIM-specific flags related to a multicast state entry. See the PIM Sparse Mode specification for the meaning of the RPT and SPT bits.
pimRPTable1.3.6.1.3.61.1.1.5not-accessibleThe (conceptual) table listing PIM version 1 information for the Rendezvous Points (RPs) for IP multicast groups. This table is deprecated since its function is replaced by the pimRPSetTable for PIM version 2.
pimRPEntry1.3.6.1.3.61.1.1.5.1not-accessibleAn entry (conceptual row) in the pimRPTable. There is one entry per RP address for each IP multicast group.
IP pimRPGroupAddress1.3.6.1.3.61.1.1.5.1.1IpAddressnot-accessibleThe IP multicast group address for which this entry contains information about an RP.
IP pimRPAddress1.3.6.1.3.61.1.1.5.1.2IpAddressnot-accessibleThe unicast address of the RP.
INT pimRPState1.3.6.1.3.61.1.1.5.1.3INTEGERread-onlyThe state of the RP.
TIK pimRPStateTimer1.3.6.1.3.61.1.1.5.1.4TimeTicksread-onlyThe minimum time remaining before the next state change. When pimRPState is up, this is the minimum time which must expire until it can be declared down. When pimRPState is down, this is the time until it will be declared up (in order to retry).
TIK pimRPLastChange1.3.6.1.3.61.1.1.5.1.5TimeTicksread-onlyThe value of sysUpTime at the time when the corresponding instance of pimRPState last changed its value.
ROW pimRPRowStatus1.3.6.1.3.61.1.1.5.1.6RowStatusread-createThe status of this row, by which new entries may be created, or old entries deleted from this table.
pimRPSetTable1.3.6.1.3.61.1.1.6not-accessibleThe (conceptual) table listing PIM information for candidate Rendezvous Points (RPs) for IP multicast groups. When the local router is the BSR, this information is obtained from received Candidate-RP-Advertisements. When the local router is not the BSR, this information is obtained from received RP-Set messages.
pimRPSetEntry1.3.6.1.3.61.1.1.6.1not-accessibleAn entry (conceptual row) in the pimRPSetTable.
IP pimRPSetGroupAddress1.3.6.1.3.61.1.1.6.1.1IpAddressnot-accessibleThe IP multicast group address which, when combined with pimRPSetGroupMask, gives the group prefix for which this entry contains information about the Candidate-RP.
IP pimRPSetGroupMask1.3.6.1.3.61.1.1.6.1.2IpAddressnot-accessibleThe multicast group address mask which, when combined with pimRPSetGroupAddress, gives the group prefix for which this entry contains information about the Candidate-RP.
IP pimRPSetAddress1.3.6.1.3.61.1.1.6.1.3IpAddressnot-accessibleThe IP address of the Candidate-RP.
I32 pimRPSetHoldTime1.3.6.1.3.61.1.1.6.1.4Integer32read-onlyThe holdtime of a Candidate-RP. If the local router is not the BSR, this value is 0.
TIK pimRPSetExpiryTime1.3.6.1.3.61.1.1.6.1.5TimeTicksread-onlyThe minimum time remaining before the Candidate-RP will be declared down. If the local router is not the BSR, this value is 0.
I32 pimRPSetComponent1.3.6.1.3.61.1.1.6.1.6Integer32not-accessibleA number uniquely identifying the component. Each protocol instance connected to a separate domain should have a different index value.
pimIpMRouteNextHopTable1.3.6.1.3.61.1.1.7not-accessibleThe (conceptual) table listing PIM-specific information on a subset of the rows of the ipMRouteNextHopTable defined in the IP Multicast MIB.
pimIpMRouteNextHopEntry1.3.6.1.3.61.1.1.7.1not-accessibleAn entry (conceptual row) in the pimIpMRouteNextHopTable. There is one entry per entry in the ipMRouteNextHopTable whose interface is running PIM and whose ipMRouteNextHopState is pruned(1).
INT pimIpMRouteNextHopPruneReason1.3.6.1.3.61.1.1.7.1.2INTEGERread-onlyThis object indicates why the downstream interface was pruned, whether in response to a PIM prune message or due to PIM Assert processing.
pimCandidateRPTable1.3.6.1.3.61.1.1.11not-accessibleThe (conceptual) table listing the IP multicast groups for which the local router is to advertise itself as a Candidate-RP when the value of pimComponentCRPHoldTime is non-zero. If this table is empty, then the local router will advertise itself as a Candidate-RP for all groups (providing the value of pimComponentCRPHoldTime is non- zero).
pimCandidateRPEntry1.3.6.1.3.61.1.1.11.1not-accessibleAn entry (conceptual row) in the pimCandidateRPTable.
IP pimCandidateRPGroupAddress1.3.6.1.3.61.1.1.11.1.1IpAddressnot-accessibleThe IP multicast group address which, when combined with pimCandidateRPGroupMask, identifies a group prefix for which the local router will advertise itself as a Candidate-RP.
IP pimCandidateRPGroupMask1.3.6.1.3.61.1.1.11.1.2IpAddressnot-accessibleThe multicast group address mask which, when combined with pimCandidateRPGroupMask, identifies a group prefix for which the local router will advertise itself as a Candidate-RP.
IP pimCandidateRPAddress1.3.6.1.3.61.1.1.11.1.3IpAddressread-createThe (unicast) address of the interface which will be advertised as a Candidate-RP.
ROW pimCandidateRPRowStatus1.3.6.1.3.61.1.1.11.1.4RowStatusread-createThe status of this row, by which new entries may be created, or old entries deleted from this table.
pimComponentTable1.3.6.1.3.61.1.1.12not-accessibleThe (conceptual) table containing objects specific to a PIM domain. One row exists for each domain to which the router is connected. A PIM-SM domain is defined as an area of the network over which Bootstrap messages are forwarded. Typically, a PIM-SM router will be a member of exactly one domain. This table also supports, however, routers which may form a border between two PIM-SM domains and do not forward Bootstrap messages between them.
pimComponentEntry1.3.6.1.3.61.1.1.12.1not-accessibleAn entry (conceptual row) in the pimComponentTable.
I32 pimComponentIndex1.3.6.1.3.61.1.1.12.1.1Integer32not-accessibleA number uniquely identifying the component. Each protocol instance connected to a separate domain should have a different index value. Routers that only support membership in a single PIM-SM domain should use a pimComponentIndex value of 1.
IP pimComponentBSRAddress1.3.6.1.3.61.1.1.12.1.2IpAddressread-onlyThe IP address of the bootstrap router (BSR) for the local PIM region.
TIK pimComponentBSRExpiryTime1.3.6.1.3.61.1.1.12.1.3TimeTicksread-onlyThe minimum time remaining before the bootstrap router in the local domain will be declared down. For candidate BSRs, this is the time until the component sends an RP-Set message. For other routers, this is the time until it may accept an RP-Set message from a lower candidate BSR.
I32 pimComponentCRPHoldTime1.3.6.1.3.61.1.1.12.1.4Integer32read-createThe holdtime of the component when it is a candidate RP in the local domain. The value of 0 is used to indicate that the local system is not a Candidate-RP.
ROW pimComponentStatus1.3.6.1.3.61.1.1.12.1.5RowStatusread-createThe status of this entry. Creating the entry creates another protocol instance; destroying the entry disables a protocol instance.
pimMIBConformance1.3.6.1.3.61.2
pimMIBCompliances1.3.6.1.3.61.2.1
pimV1MIBCompliance1.3.6.1.3.61.2.1.1The compliance statement for routers running PIMv1 and implementing the PIM MIB.
pimSparseV2MIBCompliance1.3.6.1.3.61.2.1.2The compliance statement for routers running PIM Sparse Mode and implementing the PIM MIB.
pimDenseV2MIBCompliance1.3.6.1.3.61.2.1.3The compliance statement for routers running PIM Dense Mode and implementing the PIM MIB.
pimMIBGroups1.3.6.1.3.61.2.2
pimNotificationGroup1.3.6.1.3.61.2.2.1A collection of notifications for signaling important PIM events.
pimV2MIBGroup1.3.6.1.3.61.2.2.2A collection of objects to support management of PIM Sparse Mode (version 2) routers.
pimV2CandidateRPMIBGroup1.3.6.1.3.61.2.2.3A collection of objects to support configuration of which groups a router is to advertise itself as a Candidate-RP.
pimV1MIBGroup1.3.6.1.3.61.2.2.4A collection of objects to support management of PIM (version 1) routers.
pimDenseV2MIBGroup1.3.6.1.3.61.2.2.5A collection of objects to support management of PIM Dense Mode (version 2) routers.
pimNextHopGroup1.3.6.1.3.61.2.2.6A collection of optional objects to provide per-next hop information for diagnostic purposes. Supporting this group may add a large number of instances to a tree walk, but the information in this group can be extremely useful in tracking down multicast connectivity problems.
pimAssertGroup1.3.6.1.3.61.2.2.7A collection of optional objects to provide extra information about the assert election process. There is no protocol reason to keep such information, but some implementations may already keep this information and make it available. These objects can also be very useful in debugging connectivity or duplicate packet problems, especially if the assert winner does not support the PIM and IP Multicast MIBs.

FAQ

What does PIM-MIB let me check on a multicast routing setup?
It exposes PIM-enabled interface configuration and operational data such as join/prune timers, hello intervals, designated router election, and candidate bootstrap router preferences.

How would this MIB help diagnose a multicast distribution problem, e.g. for IPTV?
An administrator would poll PIM interface operational status and designated-router (DR) identity to verify which interfaces are actively running PIM and confirm they're up rather than administratively down or failed, using ifIndex references to tie PIM state to the underlying interfaces, typically alongside IGMP-STD-MIB in enterprise or service-provider networks carrying IPTV or market-data multicast feeds.

RFC description

Protocol Independent Multicast MIB (RFC 5060) for managing PIM-SM, PIM-DM, and BIDIR-PIM multicast routing protocols in IPv4 and IPv6 networks.

Start monitoring Multicast-capable routers/Layer 3 switches, vendor-neutral standards MIB (PIM routing) with a free 30-day trial of IPNetwork Monitor. Import MIBs, browse SNMP OIDs, create custom SNMP monitors, configure alerts, and monitor any SNMP-enabled network device from a single console.

Download PIM-MIB