In this lab, we will go over different multicast common deployment scenarios.
1st section will cover PIM dense mode and its behaviour and 2nd section covers PIM sparse mode. Both sections starts with configuration, and ends with debugging, validation commands and packet captures.

By the end of the lab, you will have acquired a solid knowledge and consolidated your understanding of BGP theory and configuration.

Pre-requisites are CCNA / CCNP level routing configuration.

NOTES:

  • IS-IS is the selected IGP with NET address extracted from loopback address, so R2 is 00.0002.0002.0002.0002.00.
  • Each router must have a loopback0 interface configured as n.n.n.n/32, where n is the router number (R2 loopback0 is 2.2.2.2/32).
  • Each loopback0 must be routed in each AS IGP domain.
  • Multicast LAB 1

TASKS

IS-IS
  1. For [R1-R6] configure:
    • loopback0, so Rn address is n.n.n.n/32.
    • IS-IS using ISO routing name MC and NET matching loopback address (So R2 has NET 00.0002.0002.0002.00).
    • IS type level2
    • Only Router to router links should be added to the routing process.
  2. Loopbacks should not be sending routing updates.
LAN 
  1. On SW1 configure VLAN5 with ports facing R5, Host11 & Host12 as access ports for VLAN5.
  2. On SW2 configure VLAN6 with ports facing R6, Host21 & Host22 as access ports for VLAN5.
  3. Validate Hosts on each can be ping link address on R5/R6
Multicast source
  1. On Source A and Source B, configure:
    • The same Loopback0 172.16.1.1/32.
    • IP SLA udp-echo for multicast address 239.9.9.9 and port 6503, sourcing from LP0 (sending every 5s, and starting immediately).
    • Default route towards next hop routers respectively.
Multicast routing PIM-dense mode
  1. On All routers enable multicast routing.
  2. Configure PIM dense-mode on all router to router links.
  3. Validate PIM adjacency is established.
  4. Enable PIM dense-mode on:
    • R5&R6 facing LAN switches.
    • R1&R2 facing multicast sources.
  5. On all 4 hosts, configure static IGMP join for 239.9.9.9
Multicast routing PIM-dense mode
  1. Re configure PIM as sparse-mode only on all router to router links.
  2. Enable PIM sparse mode on links towards Source A & B.
  3. Configure R3 as RP, using loopback3 172.16.3.3.
  4. Configure static RP on all routers.
  5. Change the IP SLA source to be link to corresponding router.
Auto-RP
  1. Remove static configuration from all routers.
  2. Configure auto RP using bootstrap protocol on R3.
  3. Validate RP mapping on the other routers.

Lab solution

R3

interface Loopback0
ip address 3.3.3.3 255.255.255.255
!
router isis MC
net 00.0003.0003.0003.0003.00
is-type level-2-only
metric-style wide
passive-interface Loopback0
!
!
interface GigabitEthernet0/1
ip address 10.1.3.3 255.255.255.0
ip router isis MC

Validation

R3#sh isis neighbors

Tag MC:
System Id Type Interface IP Address State Holdtime Circuit Id
R1 L2 Gi0/1 10.1.3.1 UP 23 R3.01
R2 L2 Gi0/2 10.2.3.2 UP 9 R2.03
R4 L2 Gi0/5 10.3.4.4 UP 9 R4.05
R5 L2 Gi0/3 10.3.5.5 UP 27 R3.03
R6 L2 Gi0/4 10.3.6.6 UP 28 R3.04

R3#sh ip route isis | i /32
1.0.0.0/32 is subnetted, 1 subnets
2.0.0.0/32 is subnetted, 1 subnets
4.0.0.0/32 is subnetted, 1 subnets
5.0.0.0/32 is subnetted, 1 subnets
6.0.0.0/32 is subnetted, 1 subnets

SW1

SW1(config)#vlan 5
SW1(config-vlan)#
!
!interface GigabitEthernet0/1
switchport access vlan 5
switchport mode access
negotiation auto
!
interface GigabitEthernet0/2
switchport access vlan 5
switchport mode access
negotiation auto
!
interface GigabitEthernet0/3
switchport access vlan 5
switchport mode access
negotiation auto

Source A

interface Loopback0
ip address 172.16.1.1 255.255.255.255
!
!
ip route 0.0.0.0 0.0.0.0 192.168.1.1
!
ip sla 1
udp-echo 239.9.9.9 6503 source-ip 172.16.1.1
frequency 5
ip sla schedule 1 start-time now

Validation

Source-A#sh ip sla summary
IPSLAs Latest Operation Summary
Codes: * active, ^ inactive, ~ pending

ID Type Destination Stats Return Last
(ms) Code Run
———————————————————————–
*1 udp-echo 239.9.9.9 – No connecti 20 seconds ag
on o

Source-A#sh ip route
Codes: L – local, C – connected, S – static, R – RIP, M – mobile, B – BGP
D – EIGRP, EX – EIGRP external, O – OSPF, IA – OSPF inter area
N1 – OSPF NSSA external type 1, N2 – OSPF NSSA external type 2
E1 – OSPF external type 1, E2 – OSPF external type 2
i – IS-IS, su – IS-IS summary, L1 – IS-IS level-1, L2 – IS-IS level-2
ia – IS-IS inter area, * – candidate default, U – per-user static route
o – ODR, P – periodic downloaded static route, H – NHRP, l – LISP
a – application route
+ – replicated route, % – next hop override, p – overrides from PfR

Gateway of last resort is 192.168.1.1 to network 0.0.0.0

S* 0.0.0.0/0 [1/0] via 192.168.1.1

R1

ip multicast-routing

!

interface GigabitEthernet0/1
ip pim dense-mode
!
interface GigabitEthernet0/2
ip pim dense-mode
!
interface GigabitEthernet0/3
ip pim dense-mode

Validation

R1#sh ip pim neighbor
PIM Neighbor Table
Mode: B – Bidir Capable, DR – Designated Router, N – Default DR Priority,
P – Proxy Capable, S – State Refresh Capable, G – GenID Capable,
L – DR Load-balancing Capable
Neighbor Interface Uptime/Expires Ver DR
Address Prio/Mode
10.1.2.2 GigabitEthernet0/2 02:11:48/00:01:34 v2 1 / DR S P G
10.1.3.3 GigabitEthernet0/3 02:11:29/00:01:17 v2 1 / DR S P G
10.1.4.4 GigabitEthernet0/4 00:00:25/00:01:19 v2 1 / DR S P G

Host11#sh ip igmp groups
IGMP Connected Group Membership
Group Address Interface Uptime Expires Last Reporter Group Accounted
239.9.9.9 GigabitEthernet0/1 02:34:06 never 10.5.10.11

R3#sh ip mroute 239.9.9.9
IP Multicast Routing Table
Flags: D – Dense, S – Sparse, B – Bidir Group, s – SSM Group, C – Connected,
L – Local, P – Pruned, R – RP-bit set, F – Register flag,
T – SPT-bit set, J – Join SPT, M – MSDP created entry, E – Extranet,
X – Proxy Join Timer Running, A – Candidate for MSDP Advertisement,
U – URD, I – Received Source Specific Host Report,
Z – Multicast Tunnel, z – MDT-data group sender,
Y – Joined MDT-data group, y – Sending to MDT-data group,
G – Received BGP C-Mroute, g – Sent BGP C-Mroute,
N – Received BGP Shared-Tree Prune, n – BGP C-Mroute suppressed,
Q – Received BGP S-A Route, q – Sent BGP S-A Route,
V – RD & Vector, v – Vector, p – PIM Joins on route,
x – VxLAN group
Outgoing interface flags: H – Hardware switched, A – Assert winner, p – PIM Join
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.9.9.9), 00:09:26/stopped, RP 0.0.0.0, flags: D
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
GigabitEthernet0/4, Forward/Dense, 00:09:26/stopped
GigabitEthernet0/3, Forward/Dense, 00:09:26/stopped
GigabitEthernet0/2, Forward/Dense, 00:09:26/stopped
GigabitEthernet0/1, Forward/Dense, 00:09:26/stopped

(172.16.1.1, 239.9.9.9), 00:09:26/00:01:22, flags: T
Incoming interface: GigabitEthernet0/1, RPF nbr 10.1.3.1
Outgoing interface list:
GigabitEthernet0/2, Prune/Dense, 00:09:26/00:02:24, A
GigabitEthernet0/3, Prune/Dense, 00:09:26/00:02:24, A
GigabitEthernet0/4, Forward/Dense, 00:09:26/stopped

R3

interface Loopback3
ip address 172.16.3.3 255.255.255.255

Ensure Loopback3 is redistributed in IGP !!

router isis MC
passive-interface Loopback3

All routers:

interface GigabitEthernetx/y
ip pim sparse-mode
!
ip pim rp-address 172.16.3.3

Validation

R1#sh ip pim rp mapping
PIM Group-to-RP Mappings

Group(s): 224.0.0.0/4, Static
RP: 172.16.3.3 (?)

R1#sh ip pim rp
Group: 239.9.9.9, RP: 172.16.3.3

5#sh ip mroute 239.9.9.9 count
Use “show ip mfib count” to get better response time for a large number of mroutes.

IP Multicast Statistics
6 routes using 6020 bytes of memory
3 groups, 1.00 average sources per group
Forwarding Counts: Pkt Count/Pkts per second/Avg Pkt Size/Kilobits per second
Other counts: Total/RPF failed/Other drops(OIF-null, rate-limit etc)

Group: 239.9.9.9, Source count: 2, Packets forwarded: 352, Packets received: 352
RP-tree: Forwarding: 2/0/94/0, Other: 2/0/0
Source: 192.168.2.2/32, Forwarding: 82/0/94/0, Other: 82/0/0
Source: 192.168.1.2/32, Forwarding: 268/0/94/0, Other: 268/0/0

R3

ip pim bsr-candidate Loopback3 0
ip pim rp-candidate Loopback3

Ensure looback3 is PIM enabled !

Validation

R1#sh ip pim rp map
PIM Group-to-RP Mappings

Group(s) 224.0.0.0/4
RP 172.16.3.3 (?), v2
Info source: 172.16.3.3 (?), via bootstrap, priority 0, holdtime 150
Uptime: 00:07:38, expires: 00:01:56

Key points to remember !

  • PIM dense mode is push mode, data is delivered regardless of joint.

  • PIM sparse mode is pull mode, data is delivered when requested.

  • PIM sparse mode requires implementing RP.

  • RP can be configured as static or auto-RP.

  • A router can switch from RPT to SPT as soon as 1st packet is received on (*,G) (Cisco default).

Next lab will be a deep dive into anycast RP, and MSDP implementation.