]> git.proxmox.com Git - mirror_frr.git/blob - doc/user/pim.rst
bacf8637ae9629c43d5fbd1410a6181b88116101
[mirror_frr.git] / doc / user / pim.rst
1 .. _pim:
2
3 ***
4 PIM
5 ***
6
7 PIM -- Protocol Independent Multicast
8
9 *pimd* supports pim-sm as well as igmp v2 and v3. pim is
10 vrf aware and can work within the context of vrf's in order to
11 do S,G mrouting. Additionally PIM can be used in the EVPN underlay
12 network for optimizing forwarding of overlay BUM traffic.
13
14 .. note::
15
16 On Linux for PIM-SM operation you *must* have kernel version 4.18 or greater.
17 To use PIM for EVPN BUM forwarding, kernels 5.0 or greater are required.
18 OpenBSD has no multicast support and FreeBSD, and NetBSD only
19 have support for SSM.
20
21 .. _starting-and-stopping-pimd:
22
23 Starting and Stopping pimd
24 ==========================
25
26 The default configuration file name of *pimd*'s is :file:`pimd.conf`. When
27 invoked *pimd* searches directory |INSTALL_PREFIX_ETC|. If
28 :file:`pimd.conf` is not there then next search current directory.
29
30 *pimd* requires zebra for proper operation. Additionally *pimd* depends on
31 routing properly setup and working in the network that it is working on.
32
33 ::
34
35 # zebra -d
36 # pimd -d
37
38
39 Please note that *zebra* must be invoked before *pimd*.
40
41 To stop *pimd* please use::
42
43 kill `cat /var/run/pimd.pid`
44
45 Certain signals have special meanings to *pimd*.
46
47 +---------+---------------------------------------------------------------------+
48 | Signal | Meaning |
49 +=========+=====================================================================+
50 | SIGUSR1 | Rotate the *pimd* logfile |
51 +---------+---------------------------------------------------------------------+
52 | SIGINT | *pimd* sweeps all installed PIM mroutes then terminates gracefully. |
53 | SIGTERM | |
54 +---------+---------------------------------------------------------------------+
55
56 *pimd* invocation options. Common options that can be specified
57 (:ref:`common-invocation-options`).
58
59 .. index:: ip pim rp A.B.C.D A.B.C.D/M
60 .. clicmd:: ip pim rp A.B.C.D A.B.C.D/M
61
62 In order to use pim, it is necessary to configure a RP for join messages to
63 be sent to. Currently the only methodology to do this is via static rp
64 commands. All routers in the pim network must agree on these values. The
65 first ip address is the RP's address and the second value is the matching
66 prefix of group ranges covered. This command is vrf aware, to configure for
67 a vrf, enter the vrf submode.
68
69 .. index:: ip pim register-accept-list PLIST
70 .. clicmd:: ip pim register-accept-list PLIST
71
72 When pim receives a register packet the source of the packet will be compared
73 to the prefix-list specified, PLIST, and if a permit is received normal
74 processing continues. If a deny is returned for the source address of the
75 register packet a register stop message is sent to the source.
76
77 .. index:: ip pim spt-switchover infinity-and-beyond
78 .. clicmd:: ip pim spt-switchover infinity-and-beyond
79
80 On the last hop router if it is desired to not switch over to the SPT tree.
81 Configure this command. This command is vrf aware, to configure for a vrf,
82 enter the vrf submode.
83
84 .. index:: ip pim ecmp
85 .. clicmd:: ip pim ecmp
86
87 If pim has the a choice of ECMP nexthops for a particular RPF, pim will
88 cause S,G flows to be spread out amongst the nexthops. If this command is
89 not specified then the first nexthop found will be used. This command is vrf
90 aware, to configure for a vrf, enter the vrf submode.
91
92 .. index:: ip pim ecmp rebalance
93 .. clicmd:: ip pim ecmp rebalance
94
95 If pim is using ECMP and an interface goes down, cause pim to rebalance all
96 S,G flows across the remaining nexthops. If this command is not configured
97 pim only modifies those S,G flows that were using the interface that went
98 down. This command is vrf aware, to configure for a vrf, enter the vrf
99 submode.
100
101 .. index:: ip pim join-prune-interval (60-600)
102 .. clicmd:: ip pim join-prune-interval (60-600)
103
104 Modify the join/prune interval that pim uses to the new value. Time is
105 specified in seconds. This command is vrf aware, to configure for a vrf,
106 enter the vrf submode.
107
108 .. index:: ip pim keep-alive-timer (31-60000)
109 .. clicmd:: ip pim keep-alive-timer (31-60000)
110
111 Modify the time out value for a S,G flow from 31-60000 seconds. 31 seconds
112 is chosen for a lower bound because some hardware platforms cannot see data
113 flowing in better than 30 second chunks. This command is vrf aware, to
114 configure for a vrf, enter the vrf submode.
115
116 .. index:: ip pim packets (1-100)
117 .. clicmd:: ip pim packets (1-100)
118
119 When processing packets from a neighbor process the number of packets
120 incoming at one time before moving on to the next task. The default value is
121 3 packets. This command is only useful at scale when you can possibly have
122 a large number of pim control packets flowing. This command is vrf aware, to
123 configure for a vrf, enter the vrf submode.
124
125 .. index:: ip pim register-suppress-time (5-60000)
126 .. clicmd:: ip pim register-suppress-time (5-60000)
127
128 Modify the time that pim will register suppress a FHR will send register
129 notifications to the kernel. This command is vrf aware, to configure for a
130 vrf, enter the vrf submode.
131
132 .. index:: ip pim send-v6-secondary
133 .. clicmd:: ip pim send-v6-secondary
134
135 When sending pim hello packets tell pim to send any v6 secondary addresses
136 on the interface. This information is used to allow pim to use v6 nexthops
137 in it's decision for RPF lookup. This command is vrf aware, to configure for
138 a vrf, enter the vrf submode.
139
140 .. index:: ip pim ssm prefix-list WORD
141 .. clicmd:: ip pim ssm prefix-list WORD
142
143 Specify a range of group addresses via a prefix-list that forces pim to
144 never do SM over. This command is vrf aware, to configure for a vrf, enter
145 the vrf submode.
146
147 .. index:: ip multicast rpf-lookup-mode WORD
148 .. clicmd:: ip multicast rpf-lookup-mode WORD
149
150 Modify how PIM does RPF lookups in the zebra routing table. You can use
151 these choices:
152
153 longer-prefix
154 Lookup the RPF in both tables using the longer prefix as a match
155
156 lower-distance
157 Lookup the RPF in both tables using the lower distance as a match
158
159 mrib-only
160 Lookup in the Multicast RIB only
161
162 mrib-then-urib
163 Lookup in the Multicast RIB then the Unicast Rib, returning first found.
164 This is the default value for lookup if this command is not entered
165
166 urib-only
167 Lookup in the Unicast Rib only.
168
169 .. index:: ip msdp mesh-group [WORD]
170 .. clicmd:: [no] ip msdp mesh-group [WORD]
171
172 Create or Delete a multicast source discovery protocol mesh-group using
173 [WORD] as the group name.
174
175 .. index:: ip msdp mesh-group WORD member A.B.C.D
176 .. clicmd:: [no] ip msdp mesh-group WORD member A.B.C.D
177
178 Attach or Delete A.B.C.D to the MSDP mesh group WORD specified.
179
180 .. index:: ip msdp mesh-group WORD source A.B.C.D
181 .. clicmd:: [no] ip msdp mesh-group WORD source A.B.C.D
182
183 For the address specified A.B.C.D use that as the source address for
184 mesh group packets being sent.
185
186 .. index:: ip igmp generate-query-once [version (2-3)]
187 .. clicmd:: ip igmp generate-query-once [version (2-3)]
188
189 Generate IGMP query (v2/v3) on user requirement. This will not depend on
190 the existing IGMP general query timer.If no version is provided in the cli,
191 it will be considered as default v2 query.This is a hidden command.
192
193 .. index:: ip igmp watermark-warn (10-60000)
194 .. clicmd:: [no] ip igmp watermark-warn (10-60000)
195
196 Configure watermark warning generation for an igmp group limit. Generates
197 warning once the configured group limit is reached while adding new groups.
198 'no' form of the command disables the warning generation. This command is
199 vrf aware. To configure per vrf, enter vrf submode.
200
201 .. _pim-interface-configuration:
202
203 PIM Interface Configuration
204 ===========================
205
206 PIM interface commands allow you to configure an interface as either a Receiver
207 or a interface that you would like to form pim neighbors on. If the interface
208 is in a vrf, enter the interface command with the vrf keyword at the end.
209
210 .. index:: ip pim active-active
211 .. clicmd:: ip pim active-active
212
213 Turn on pim active-active configuration for a Vxlan interface. This
214 command will not do anything if you do not have the underlying ability
215 of a mlag implementation.
216
217 .. index:: ip pim bfd
218 .. clicmd:: ip pim bfd
219
220 Turns on BFD support for PIM for this interface.
221
222 .. index:: ip pim bsm
223 .. clicmd:: ip pim bsm
224
225 Tell pim that we would like to use this interface to process bootstrap
226 messages. This is enabled by default. 'no' form of this command is used to
227 restrict bsm messages on this interface.
228
229 .. index:: ip pim unicast-bsm
230 .. clicmd:: ip pim unicast-bsm
231
232 Tell pim that we would like to allow interface to process unicast bootstrap
233 messages. This is enabled by default. 'no' form of this command is used to
234 restrict processing of unicast bsm messages on this interface.
235
236 .. index:: ip pim drpriority (1-4294967295)
237 .. clicmd:: ip pim drpriority (1-4294967295)
238
239 Set the DR Priority for the interface. This command is useful to allow the
240 user to influence what node becomes the DR for a lan segment.
241
242 .. index:: ip pim hello (1-180) (1-180)
243 .. clicmd:: ip pim hello (1-180) (1-180)
244
245 Set the pim hello and hold interval for a interface.
246
247 .. index:: ip pim
248 .. clicmd:: ip pim
249
250 Tell pim that we would like to use this interface to form pim neighbors
251 over. Please note that this command does not enable the reception of IGMP
252 reports on the interface. Refer to the next `ip igmp` command for IGMP
253 management.
254
255 .. index:: ip pim use-source A.B.C.D
256 .. clicmd:: [no] ip pim use-source A.B.C.D
257
258 If you have multiple addresses configured on a particular interface
259 and would like pim to use a specific source address associated with
260 that interface.
261
262 .. index:: ip igmp
263 .. clicmd:: ip igmp
264
265 Tell pim to receive IGMP reports and Query on this interface. The default
266 version is v3. This command is useful on a LHR.
267
268 .. index:: ip igmp join A.B.C.D [A.B.C.D]
269 .. clicmd:: ip igmp join A.B.C.D [A.B.C.D]
270
271 Join multicast group or source-group on an interface.
272
273 .. index:: ip igmp query-interval (1-1800)
274 .. clicmd:: ip igmp query-interval (1-1800)
275
276 Set the IGMP query interval that PIM will use.
277
278 .. index:: ip igmp query-max-response-time (10-250)
279 .. clicmd:: ip igmp query-max-response-time (10-250)
280
281 Set the IGMP query response timeout value. If an report is not returned in
282 the specified time we will assume the S,G or \*,G has timed out.
283
284 .. index:: ip igmp version (2-3)
285 .. clicmd:: ip igmp version (2-3)
286
287 Set the IGMP version used on this interface. The default value is 3.
288
289 .. index:: ip multicast boundary oil WORD
290 .. clicmd:: ip multicast boundary oil WORD
291
292 Set a pim multicast boundary, based upon the WORD prefix-list. If a pim join
293 or IGMP report is received on this interface and the Group is denied by the
294 prefix-list, PIM will ignore the join or report.
295
296 .. index:: ip igmp last-member-query-count (1-7)
297 .. clicmd:: ip igmp last-member-query-count (1-7)
298
299 Set the IGMP last member query count. The default value is 2. 'no' form of
300 this command is used to to configure back to the default value.
301
302 .. index:: ip igmp last-member-query-interval (1-255)
303 .. clicmd:: ip igmp last-member-query-interval (1-255)
304
305 Set the IGMP last member query interval in deciseconds. The default value is
306 10 deciseconds. 'no' form of this command is used to to configure back to the
307 default value.
308
309 .. index:: ip mroute INTERFACE A.B.C.D [A.B.C.D]
310 .. clicmd:: ip mroute INTERFACE A.B.C.D [A.B.C.D]
311
312 Set a static multicast route for a traffic coming on the current interface to
313 be forwarded on the given interface if the traffic matches the group address
314 and optionally the source address.
315
316 .. _pim-multicast-rib-insertion:
317
318 PIM Multicast RIB insertion:
319 ============================
320
321 In order to influence Multicast RPF lookup, it is possible to insert
322 into zebra routes for the Multicast RIB. These routes are only
323 used for RPF lookup and will not be used by zebra for insertion
324 into the kernel *or* for normal rib processing. As such it is
325 possible to create weird states with these commands. Use with
326 caution. Most of the time this will not be necessary.
327
328 .. index:: ip mroute A.B.C.D/M A.B.C.D (1-255)
329 .. clicmd:: ip mroute A.B.C.D/M A.B.C.D (1-255)
330
331 Insert into the Multicast Rib Route A.B.C.D/M with specified nexthop. The
332 distance can be specified as well if desired.
333
334 .. index:: ip mroute A.B.C.D/M INTERFACE (1-255)
335 .. clicmd:: ip mroute A.B.C.D/M INTERFACE (1-255)
336
337 Insert into the Multicast Rib Route A.B.C.D/M using the specified INTERFACE.
338 The distance can be specified as well if desired.
339
340 .. _msdp-configuration:
341
342 Multicast Source Discovery Protocol (MSDP) Configuration
343 ========================================================
344
345 .. index:: ip msdp mesh-group [WORD] member A.B.C.D
346 .. clicmd:: ip msdp mesh-group [WORD] member A.B.C.D
347
348 Include a MSDP peer as a member of a MSDP mesh-group.
349
350 .. index:: ip msdp mesh-group [WORD] source A.B.C.D
351 .. clicmd:: ip msdp mesh-group [WORD] source A.B.C.D
352
353 Create a MSDP mesh-group, defining a name for it and an associated local source
354 address.
355
356 .. index:: ip msdp peer A.B.C.D source A.B.C.D
357 .. clicmd:: ip msdp peer A.B.C.D source A.B.C.D
358
359 Establish a MSDP connection with a peer.
360
361 .. index:: ip msdp mesh-group [WORD] member A.B.C.D
362 .. clicmd:: no ip msdp mesh-group [WORD] member A.B.C.D
363
364 Remove a MSDP peer member from a MSDP mesh-group.
365
366 .. index:: ip msdp mesh-group [WORD] source A.B.C.D
367 .. clicmd:: no ip msdp mesh-group [WORD] source A.B.C.D
368
369 Delete a MSDP mesh-group.
370
371 .. index:: ip msdp peer A.B.C.D
372 .. clicmd:: no ip msdp peer A.B.C.D
373
374 Delete a MSDP peer connection.
375
376 .. _show-pim-information:
377
378 Show PIM Information
379 ====================
380
381 All PIM show commands are vrf aware and typically allow you to insert a
382 specified vrf command if information is desired about a specific vrf. If no
383 vrf is specified then the default vrf is assumed. Finally the special keyword
384 'all' allows you to look at all vrfs for the command. Naming a vrf 'all' will
385 cause great confusion.
386
387 .. index:: show ip igmp interface
388 .. clicmd:: show ip igmp interface
389
390 Display IGMP interface information.
391
392 .. index:: show ip igmp join
393 .. clicmd:: show ip igmp join
394
395 Display IGMP static join information.
396
397 .. index:: show ip igmp groups
398 .. clicmd:: show ip igmp groups
399
400 Display IGMP groups information.
401
402 .. index:: show ip igmp groups retransmissions
403 .. clicmd:: show ip igmp groups retransmissions
404
405 Display IGMP group retransmission information.
406
407 .. index:: show ip igmp sources
408 .. clicmd:: show ip igmp sources
409
410 Display IGMP sources information.
411
412 .. index:: show ip igmp sources retransmissions
413 .. clicmd:: show ip igmp sources retransmissions
414
415 Display IGMP source retransmission information.
416
417 .. index:: show ip igmp statistics
418 .. clicmd:: show ip igmp statistics
419
420 Display IGMP statistics information.
421
422 .. index:: show ip multicast
423 .. clicmd:: show ip multicast
424
425 Display various information about the interfaces used in this pim instance.
426
427 .. index:: show ip mroute [vrf NAME] [A.B.C.D [A.B.C.D]] [fill] [json]
428 .. clicmd:: show ip mroute [vrf NAME] [A.B.C.D [A.B.C.D]] [fill] [json]
429
430 Display information about installed into the kernel S,G mroutes. If
431 one address is specified we assume it is the Group we are interested
432 in displaying data on. If the second address is specified then it is
433 Source Group. The keyword `fill` says to fill in all assumed data
434 for test/data gathering purposes.
435
436 .. index:: show ip mroute [vrf NAME] count [json]
437 .. clicmd:: show ip mroute [vrf NAME] count [json]
438
439 Display information about installed into the kernel S,G mroutes and in
440 addition display data about packet flow for the mroutes for a specific
441 vrf.
442
443 .. index:: show ip mroute vrf all count [json]
444 .. clicmd:: show ip mroute vrf all count [json]
445
446 Display information about installed into the kernel S,G mroutes and in
447 addition display data about packet flow for the mroutes for all vrfs.
448
449 .. index:: show ip mroute [vrf NAME] summary [json]
450 .. clicmd:: show ip mroute [vrf NAME] summary [json]
451
452 Display total number of S,G mroutes and number of S,G mroutes installed
453 into the kernel for a specific vrf.
454
455 .. index:: show ip mroute vrf all summary [json]
456 .. clicmd:: show ip mroute vrf all summary [json]
457
458 Display total number of S,G mroutes and number of S,G mroutes
459 installed into the kernel for all vrfs.
460
461 .. index:: show ip msdp mesh-group
462 .. clicmd:: show ip msdp mesh-group
463
464 Display the configured mesh-groups, the local address associated with each
465 mesh-group, the peer members included in each mesh-group, and their status.
466
467 .. index:: show ip msdp peer
468 .. clicmd:: show ip msdp peer
469
470 Display information about the MSDP peers. That includes the peer address,
471 the local address used to establish the connection to the peer, the
472 connection status, and the number of active sources.
473
474 .. index:: show ip pim assert
475 .. clicmd:: show ip pim assert
476
477 Display information about asserts in the PIM system for S,G mroutes.
478
479 .. index:: show ip pim assert-internal
480 .. clicmd:: show ip pim assert-internal
481
482 Display internal assert state for S,G mroutes
483
484 .. index:: show ip pim assert-metric
485 .. clicmd:: show ip pim assert-metric
486
487 Display metric information about assert state for S,G mroutes
488
489 .. index:: show ip pim assert-winner-metric
490 .. clicmd:: show ip pim assert-winner-metric
491
492 Display winner metric for assert state for S,G mroutes
493
494 .. index:: show ip pim group-type
495 .. clicmd:: show ip pim group-type
496
497 Display SSM group ranges.
498
499 .. index:: show ip pim interface
500 .. clicmd:: show ip pim interface
501
502 Display information about interfaces PIM is using.
503
504 .. index:: show ip pim mlag [vrf NAME] interface [detail|WORD] [json]
505 .. clicmd:: show ip pim mlag [vrf NAME|all] interface [detail|WORD] [json]
506
507 Display mlag interface information.
508
509 .. index:: show ip pim [vrf NAME] join [A.B.C.D [A.B.C.D]] [json]
510 .. clicmd:: show ip pim join
511
512 Display information about PIM joins received. If one address is specified
513 then we assume it is the Group we are interested in displaying data on.
514 If the second address is specified then it is Source Group.
515
516 .. index:: show ip pim local-membership
517 .. clicmd:: show ip pim local-membership
518
519 Display information about PIM interface local-membership.
520
521 .. index:: show ip pim mlag summary [json]
522 .. clicmd:: show ip pim mlag summary [json]
523
524 Display mlag information state that PIM is keeping track of.
525
526 .. index:: show ip pim neighbor
527 .. clicmd:: show ip pim neighbor
528
529 Display information about PIM neighbors.
530
531 .. index:: show ip pim nexthop
532 .. clicmd:: show ip pim nexthop
533
534 Display information about pim nexthops that are being used.
535
536 .. index:: show ip pim nexthop-lookup
537 .. clicmd:: show ip pim nexthop-lookup
538
539 Display information about a S,G pair and how the RPF would be chosen. This
540 is especially useful if there are ECMP's available from the RPF lookup.
541
542 .. index:: show ip pim rp-info
543 .. clicmd:: show ip pim rp-info
544
545 Display information about RP's that are configured on this router.
546
547 .. index:: show ip pim rpf
548 .. clicmd:: show ip pim rpf
549
550 Display information about currently being used S,G's and their RPF lookup
551 information. Additionally display some statistics about what has been
552 happening on the router.
553
554 .. index:: show ip pim secondary
555 .. clicmd:: show ip pim secondary
556
557 Display information about an interface and all the secondary addresses
558 associated with it.
559
560 .. index:: show ip pim state
561 .. clicmd:: show ip pim state
562
563 Display information about known S,G's and incoming interface as well as the
564 OIL and how they were chosen.
565
566 .. index:: show ip pim [vrf NAME] upstream [A.B.C.D [A.B.C.D]] [json]
567 .. clicmd:: show ip pim upstream
568
569 Display upstream information about a S,G mroute. Allow the user to
570 specify sub Source and Groups that we are only interested in.
571
572 .. index:: show ip pim upstream-join-desired
573 .. clicmd:: show ip pim upstream-join-desired
574
575 Display upstream information for S,G's and if we desire to
576 join the multicast tree
577
578 .. index:: show ip pim upstream-rpf
579 .. clicmd:: show ip pim upstream-rpf
580
581 Display upstream information for S,G's and the RPF data associated with them.
582
583 .. index:: show ip pim [vrf NAME] mlag upstream [A.B.C.D [A.B.C.D]] [json]
584 .. clicmd:: show ip pim mlag upstream
585
586 Display upstream entries that are synced across MLAG switches.
587 Allow the user to specify sub Source and Groups address filters.
588
589 .. index:: show ip pim mlag summary
590 .. clicmd:: show ip pim mlag summary
591
592 Display PIM MLAG (multi-chassis link aggregation) session status and
593 control message statistics.
594
595 .. index:: show ip pim bsr
596 .. clicmd:: show ip pim bsr
597
598 Display current bsr, its uptime and last received bsm age.
599
600 .. index:: show ip pim bsrp-info
601 .. clicmd:: show ip pim bsrp-info
602
603 Display group-to-rp mappings received from E-BSR.
604
605 .. index:: show ip pim bsm-database
606 .. clicmd:: show ip pim bsm-database
607
608 Display all fragments ofstored bootstrap message in user readable format.
609
610 .. index:: show ip rpf
611 .. clicmd:: show ip rpf
612
613 Display the multicast RIB created in zebra.
614
615 .. index:: mtrace A.B.C.D [A.B.C.D]
616 .. clicmd:: mtrace A.B.C.D [A.B.C.D]
617
618 Display multicast traceroute towards source, optionally for particular group.
619
620 .. index:: show ip multicast count [vrf NAME] [json]
621 .. clicmd:: show ip multicast count [vrf NAME] [json]
622
623 Display multicast data packets count per interface for a vrf.
624
625 .. index:: show ip multicast count vrf all [json]
626 .. clicmd:: show ip multicast count vrf all [json]
627
628 Display multicast data packets count per interface for all vrf.
629
630 PIM Debug Commands
631 ==================
632
633 The debugging subsystem for PIM behaves in accordance with how FRR handles
634 debugging. You can specify debugging at the enable CLI mode as well as the
635 configure CLI mode. If you specify debug commands in the configuration cli
636 mode, the debug commands can be persistent across restarts of the FRR pimd if
637 the config was written out.
638
639 .. index:: debug igmp
640 .. clicmd:: debug igmp
641
642 This turns on debugging for IGMP protocol activity.
643
644 .. index:: debug mtrace
645 .. clicmd:: debug mtrace
646
647 This turns on debugging for mtrace protocol activity.
648
649 .. index:: debug mroute
650 .. clicmd:: debug mroute
651
652 This turns on debugging for PIM interaction with kernel MFC cache.
653
654 .. index:: debug pim events
655 .. clicmd:: debug pim events
656
657 This turns on debugging for PIM system events. Especially timers.
658
659 .. index:: debug pim nht
660 .. clicmd:: debug pim nht
661
662 This turns on debugging for PIM nexthop tracking. It will display
663 information about RPF lookups and information about when a nexthop changes.
664
665 .. index:: debug pim packet-dump
666 .. clicmd:: debug pim packet-dump
667
668 This turns on an extraordinary amount of data. Each pim packet sent and
669 received is dumped for debugging purposes. This should be considered a
670 developer only command.
671
672 .. index:: debug pim packets
673 .. clicmd:: debug pim packets
674
675 This turns on information about packet generation for sending and about
676 packet handling from a received packet.
677
678 .. index:: debug pim trace
679 .. clicmd:: debug pim trace
680
681 This traces pim code and how it is running.
682
683 .. index:: debug pim bsm
684 .. clicmd:: debug pim bsm
685
686 This turns on debugging for BSR message processing.
687
688 .. index:: debug pim zebra
689 .. clicmd:: debug pim zebra
690
691 This gathers data about events from zebra that come up through the ZAPI.
692
693 PIM Clear Commands
694 ==================
695 Clear commands reset various variables.
696
697 .. index:: clear ip interfaces
698 .. clicmd:: clear ip interfaces
699
700 Reset interfaces.
701
702 .. index:: clear ip igmp interfaces
703 .. clicmd:: clear ip igmp interfaces
704
705 Reset IGMP interfaces.
706
707 .. index:: clear ip mroute
708 .. clicmd:: clear ip mroute
709
710 Reset multicast routes.
711
712 .. index:: clear ip mroute [vrf NAME] count
713 .. clicmd:: clear ip mroute [vrf NAME] count
714
715 When this command is issued, reset the counts of data shown for
716 packet count, byte count and wrong interface to 0 and start count
717 up from this spot.
718
719 .. index:: clear ip pim interfaces
720 .. clicmd:: clear ip pim interfaces
721
722 Reset PIM interfaces.
723
724 .. index:: clear ip pim oil
725 .. clicmd:: clear ip pim oil
726
727 Rescan PIM OIL (output interface list).
728
729 PIM EVPN configuration
730 ======================
731 To use PIM in the underlay for overlay BUM forwarding associate a multicast
732 group with the L2 VNI. The actual configuration is based on your distribution.
733 Here is an ifupdown2 example::
734
735 auto vx-10100
736 iface vx-10100
737 vxlan-id 10100
738 bridge-access 100
739 vxlan-local-tunnelip 27.0.0.11
740 vxlan-mcastgrp 239.1.1.100
741
742 .. note::
743
744 PIM will see the ``vxlan-mcastgrp`` configuration and auto configure state
745 to properly forward BUM traffic.
746
747 PIM also needs to be configured in the underlay to allow the BUM MDT to be
748 setup. This is existing PIM configuration:
749
750 - Enable pim on the underlay L3 interface via the "ip pim" command.
751 - Configure RPs for the BUM multicast group range.
752 - Ensure the PIM is enabled on the lo of the VTEPs and the RP.