Supported Platforms
Related Documentation
- J, M, MX, SRX, T Series
- Configuring PIM Filtering
- M, MX, T Series
- Configuring PIM Auto-RP
- Configuring PIM Bootstrap Router
- Configuring PIM Dense Mode
- Configuring a Designated Router for PIM
- Configuring PIM Sparse-Dense Mode
- Configuring PIM and the Bidirectional Forwarding Detection (BFD) Protocol
- Example: Configuring Nonstop Active Routing for PIM
- Examples: Configuring PIM RPT and SPT Cutover
- Examples: Configuring PIM Sparse Mode
Configuring Basic PIM Settings
PIM Configuration Statements
To configure Protocol Independent Multicast (PIM), include the pim statement:
You can include this statement at the following hierarchy levels:
- [edit protocols]
- [edit routing-instances routing-instance-name protocols]
- [edit logical-systems logical-system-name protocols]
- [edit logical-systems logical-system-name routing-instances routing-instance-name protocols]
By default, PIM is disabled.
![]() | Note: You cannot configure PIM within a nonforwarding instance. If you try to do so, the router displays a commit check error and does not complete the configuration commit process. |
Changing the PIM Version
All systems on a subnet must run the same version of PIM.
The default PIM version can be version 1 or version 2, depending on the mode you are configuring. PIMv1 is the default for rendezvous point (RP) mode (at the [edit protocols pim rp static address address] hierarchy level). However, PIMv2 is the default for interface mode (at the [edit protocols pim interface interface-name] hierarchy level). Explicitly configured versions override the defaults.
To configure the PIM version, include the version statement:
Modifying the PIM Hello Interval
Routing devices send hello messages at a fixed interval on all PIM-enabled interfaces. By using hello messages, routing devices advertise their existence as PIM routing devices on the subnet. With all PIM-enabled routing devices advertised, a single designated router for the subnet is established.
When a routing device is configured for PIM, it sends a hello message at a 30-second default interval. The interval range is from 0 through 255. When the interval counts down to 0, the routing device sends another hello message, and the timer is reset. A routing device that receives no response from a neighbor in 3.5 times the interval value drops the neighbor. In the case of a 30-second interval, the amount of time a routing device waits for a response is 105 seconds.
If a PIM hello message contains the hold-time option, the neighbor timeout is set to the hold-time sent in the message. If a PIM hello message does not contain the hold-time option, the neighbor timeout is set to the default hello hold time.
To modify how often the routing device sends hello messages out of an interface:
- This example shows the configuration for the routing instance.
Configure the interface globally or in the routing instance. [edit routing-instances PIM.master protocols pim interface fe-3/0/2.0]user@host# set hello-interval 255
- Verify the configuration by checking the Hello Option Holdtime field in the output of the show pim neighbors detail command.
user@host> show pim neighbors detail
Instance: PIM.master Interface: fe-3/0/2.0 Address: 192.168.195.37, IPv4, PIM v2, Mode: Sparse Hello Option Holdtime: 255 seconds Hello Option DR Priority: 1 Hello Option LAN Prune Delay: delay 500 ms override 2000 ms Join Suppression supported Rx Join: Group Source Timeout 225.1.1.1 192.168.195.78 0 225.1.1.1 0 Interface: lo0.0 Address: 10.255.245.91, IPv4, PIM v2, Mode: Sparse Hello Option Holdtime: 255 seconds Hello Option DR Priority: 1 Hello Option LAN Prune Delay: delay 500 ms override 2000 ms Join Suppression supported Interface: pd-6/0/0.32768 Address: 0.0.0.0, IPv4, PIM v2, Mode: Sparse Hello Option Holdtime: 255 seconds Hello Option DR Priority: 0 Hello Option LAN Prune Delay: delay 500 ms override 2000 ms Join Suppression supported
Preserving Multicast Performance by Disabling Response to the ping Utility
The ping utility uses ICMP Echo messages to verify connectivity to any device with an IP address. However, in the case of multicast applications, a single ping sent to a multicast address can degrade the performance of routers because the stream of packets is replicated multiple times.
You can disable the router's response to ping (ICMP Echo) packets sent to multicast addresses. The system responds normally to unicast ping packets.
To disable the router's response to ping packets sent to multicast addresses:
- Include the no-multicast-echo statement:[edit system]user@host# set no-multicast-echo
- Verify the configuration by checking the echo drops with broadcast or multicast destination address field in the
output of the show system statistics icmp command.user@host> show system statistics icmp
icmp: 0 drops due to rate limit 0 calls to icmp_error 0 errors not generated because old message was icmp Output histogram: echo reply: 21 0 messages with bad code fields 0 messages less than the minimum length 0 messages with bad checksum 0 messages with bad source address 0 messages with bad length 100 echo drops with broadcast or multicast destination address 0 timestamp drops with broadcast or multicast destination address Input histogram: echo: 21 21 message responses generated
PIM on Aggregated Interfaces
You can configure several Protocol Independent Multicast (PIM) features on an interface regardless of its PIM mode (bidirectional, sparse, dense, or sparse-dense mode).
If you configure PIM on an aggregated (ae- or as-) interface, each of the interfaces in the aggregate is included in the multicast output interface list and carries the single stream of replicated packets in a load-sharing fashion. The multicast aggregate interface is “expanded” into its constituent interfaces in the next-hop database.
Configuring PIM Trace Options
Tracing operations record detailed messages about the operation of routing protocols, such as the various types of routing protocol packets sent and received, and routing policy actions. You can specify which trace operations are logged by including specific tracing flags. The following table describes the flags that you can include.
Flag | Description |
---|---|
all | Trace all operations. |
assert | Trace assert messages, which are used to resolve which of the parallel routers connected to a multiaccess LAN is responsible for forwarding packets to the LAN. |
autorp | Trace bootstrap, RP, and auto-RP messages. |
bidirectional-df-election | Trace bidirectional PIM designated-forwarder (DF) election events. |
bootstrap | Trace bootstrap messages, which are sent periodically by the PIM domain's bootstrap router and are forwarded, hop by hop, to all routers in that domain. |
general | Trace general events. |
graft | Trace graft and graft acknowledgment messages. |
hello | Trace hello packets, which are sent so that neighboring routers can discover one another. |
join | Trace join messages, which are sent to join a branch onto the multicast distribution tree. |
mdt | Trace messages related to multicast data tunnels. |
normal | Trace normal events. |
nsr-synchronization | Trace nonstop routing synchronization events |
packets | Trace all PIM packets. |
policy | Trace poison-route-reverse packets. |
prune | Trace prune messages, which are sent to prune a branch off the multicast distribution tree. |
register | Trace register and register-stop messages. Register messages are sent to the RP when a multicast source first starts sending to a group. |
route | Trace routing information. |
rp | Trace candidate RP advertisements. |
state | Trace state transitions. |
task | Trace task processing. |
timer | Trace timer processing. |
In the following example, tracing is enabled for all routing protocol packets. Then tracing is narrowed to focus only on PIM packets of a particular type.
To configure tracing operations for PIM:
- (Optional) Configure tracing at the [routing-options hierarchy level to trace all protocol packets.
- Configure the filename for the PIM trace file.[edit protocols pim traceoptions]user@host# set file pim-trace
- (Optional) Configure the maximum number of trace files.[edit protocols pim traceoptions]user@host# set file files 5
- (Optional) Configure the maximum size of each trace file.[edit protocols pim traceoptions]user@host# set file size 1m
- (Optional) Enable unrestricted file access.[edit protocols pim traceoptions]user@host# set file world-readable
- Configure tracing flags.
Suppose you are troubleshooting issues with PIM version 1 control packets that are received on an interface configured for PIM version 2. The following example shows how to trace messages associated with this problem.[edit protocols pim traceoptions]user@host# set flag packets | match “Rx V1 Require V2” - View the trace file.user@host> file list /var/loguser@host> file show /var/log/pim-trace
Disabling PIM
By default, when configured, the PIM protocol is enabled on all interfaces for all families. If desired, you can disable PIM at the protocol, interface, or family hierarchy levels.
The hierarchy in which you configure PIM is critical. In general, the most specific configuration takes precedence. However, if PIM is disabled at the protocol level, then any disable statements with respect to an interface or family are ignored.
For example, the order of precedence for disabling PIM on a particular interface family is:
- If PIM is disabled at the [edit protocols pim interface interface-name family] hierarchy level, then PIM is disabled for that interface family.
- If PIM is not configured at the [edit protocols pim interface interface-name family] hierarchy level, but is disabled at the [edit protocols pim interface interface-name] hierarchy level, then PIM is disabled for all families on the specified interface.
- If PIM is not configured at either the [edit protocols pim interface interface-name family] hierarchy level or the [edit protocols pim interface interface-name] hierarchy level, but is disabled at the [edit protocols pim] hierarchy level, then the PIM protocol is disabled globally for all interfaces and all families.
The following sections describe how to disable PIM at the various hierarchy levels.
- Disabling the PIM Protocol
- Disabling PIM On an Interface
- Disabling PIM for a Family
- Disabling PIM for a Rendezvous Point
Disabling the PIM Protocol
You can explicitly disable the PIM protocol. Disabling the PIM protocol disables the protocol for all interfaces and all families. This is accomplished at the [edit protocols pim] hierarchy level:
To disable the PIM protocol:
- Include the disable statement.
user@host# set protocols pim disable
- (Optional) Verify your configuration settings before committing
them by using the show protocols pim command.
user@host# run show protocols pim
Disabling PIM On an Interface
You can disable the PIM protocol on a per-interface basis. This is accomplished at the [edit protocols pim interface interface-name] hierarchy level:
To disable PIM on an interface:
- Include the disable statement.
user@host# set protocols pim interface fe-0/1/0 disable
- (Optional) Verify your configuration settings before committing
them by using the show protocols pim command.
user@host# run show protocols pim
Disabling PIM for a Family
You can disable the PIM protocol on a per-family basis. This is accomplished at the [edit protocols pim family] hierarchy level:
To disable PIM for a family:
- Include the disable statement.
user@host# set protocols pim family inet disable
user@host# set protocols pim family inet6 disable
- (Optional) Verify your configuration settings before committing
them by using the show protocols pim command.
user@host# run show protocols pim
Disabling PIM for a Rendezvous Point
You can disable the PIM protocol for a rendezvous point (RP) on a per-family basis. This is accomplished at the [edit protocols pim rp local family] hierarchy level:
To disable PIM for an RP family:
- Use the disable statement.
user@host# set protocols pim rp local family inet disable
user@host# set protocols pim rp local family inet6 disable
- (Optional) Verify your configuration settings before committing
them by using the show protocols pim command.
user@host# run show protocols pim
Verifying a Multicast Configuration
To verify a multicast configuration, perform these tasks:
- Verifying SAP and SDP Addresses and Ports
- Verifying the IGMP Version
- Verifying the PIM Mode and Interface Configuration
- Verifying the PIM RP Configuration
- Verifying the RPF Routing Table Configuration
Verifying SAP and SDP Addresses and Ports
Purpose
Verify that SAP and SDP are configured to listen on the correct group addresses and ports.
Action
From the CLI, enter the show sap listen command.
Sample Output
user@host> show sap listen
Group Address Port 224.2.127.254 9875
Meaning
The output shows a list of the group addresses and ports that SAP and SDP listen on. Verify the following information:
- Each group address configured, especially the default 224.2.127.254, is listed.
- Each port configured, especially the default 9875, is listed.
Verifying the IGMP Version
Purpose
Verify that IGMP version 2 is configured on all applicable interfaces.
Action
From the CLI, enter the show igmp interface command.
Sample Output
user@host> show igmp interface
Interface: ge–0/0/0.0 Querier: 192.168.4.36 State: Up Timeout: 197 Version: 2 Groups: 0 Configured Parameters: IGMP Query Interval: 125.0 IGMP Query Response Interval: 10.0 IGMP Last Member Query Interval: 1.0 IGMP Robustness Count: 2 Derived Parameters: IGMP Membership Timeout: 260.0 IGMP Other Querier Present Timeout: 255.0
Meaning
The output shows a list of the interfaces that are configured for IGMP. Verify the following information:
- Each interface on which IGMP is enabled is listed.
- Next to Version, the number 2 appears.
Verifying the PIM Mode and Interface Configuration
Purpose
Verify that PIM sparse mode is configured on all applicable interfaces.
Action
From the CLI, enter the show pim interfaces command.
Sample Output
user@host> show pim interfaces
Instance: PIM.master Name Stat Mode IP V State Count DR address lo0.0 Up Sparse 4 2 DR 0 127.0.0.1 pime.32769 Up Sparse 4 2 P2P 0
Meaning
The output shows a list of the interfaces that are configured for PIM. Verify the following information:
- Each interface on which PIM is enabled is listed.
- The network management interface, either ge–0/0/0 or fe–0/0/0, is not listed.
- Under Mode, the word Sparse appears.
Verifying the PIM RP Configuration
Purpose
Verify that the PIM RP is statically configured with the correct IP address.
Action
From the CLI, enter the show pim rps command.
Sample Output
user@host> show pim rps
Instance: PIM.master Address family INET RP address Type Holdtime Timeout Active groups Group prefixes 192.168.14.27 static 0 None 2 224.0.0.0/4
Meaning
The output shows a list of the RP addresses that are configured for PIM. At least one RP must be configured. Verify the following information:
- The configured RP is listed with the proper IP address.
- Under Type, the word static appears.
Verifying the RPF Routing Table Configuration
Purpose
Verify that the PIM RPF routing table is configured correctly.
Action
From the CLI, enter the show multicast rpf command.
Sample Output
user@host> show multicast rpf
Multicast RPF table: inet.0 , 2 entries...
Meaning
The output shows the multicast RPF table that is configured for PIM. If no multicast RPF routing table is configured, RPF checks use inet.0. Verify the following information:
- The configured multicast RPF routing table is inet.0.
- The inet.0 table contains entries.
Related Documentation
- J, M, MX, SRX, T Series
- Configuring PIM Filtering
- M, MX, T Series
- Configuring PIM Auto-RP
- Configuring PIM Bootstrap Router
- Configuring PIM Dense Mode
- Configuring a Designated Router for PIM
- Configuring PIM Sparse-Dense Mode
- Configuring PIM and the Bidirectional Forwarding Detection (BFD) Protocol
- Example: Configuring Nonstop Active Routing for PIM
- Examples: Configuring PIM RPT and SPT Cutover
- Examples: Configuring PIM Sparse Mode
Published: 2013-02-12
Supported Platforms
Related Documentation
- J, M, MX, SRX, T Series
- Configuring PIM Filtering
- M, MX, T Series
- Configuring PIM Auto-RP
- Configuring PIM Bootstrap Router
- Configuring PIM Dense Mode
- Configuring a Designated Router for PIM
- Configuring PIM Sparse-Dense Mode
- Configuring PIM and the Bidirectional Forwarding Detection (BFD) Protocol
- Example: Configuring Nonstop Active Routing for PIM
- Examples: Configuring PIM RPT and SPT Cutover
- Examples: Configuring PIM Sparse Mode