Multicast Solutions

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 10

Multicast Solutions

PIM Dense Mode


ip multicast-routing
!
interface FastEthernet 0/0.146
ip pim dense-mode

PIM Sparse Mode


NOTE: R5 loopback dont need to have
sparse configured, only if candidates for Auto
RP
ip pim rp-address 150.1.5.5
!
interface FastEthernet 0/1
ip pim sparse-mode

Multicast RPF Failure


interface Serial 0/0
ip pim dense-mode
!
ip multicast rpf interval 6
ip multicast rpf backoff 10 200
Rack1R5(config)#ip mroute 0.0.0.0 0.0.0.0 155.1.0.4

PIM Sparse-Dense Mode


ip access-list standard SPARSE_GROUPS
permit 224.0.0.0 0.255.255.255
!
ip multicast-routing
ip pim rp-address 150.1.5.5 SPARSE_GROUPS
!
interface Port-Channel1
ip pim sparse-dense-mode
!
interface Vlan 10
ip igmp join-group 224.10.10.10 << will use sparse mode
ip igmp join-group 239.0.0.1
<< will use dense mode
ip pim sparse-dense-mode

PIM Assert
Assert Election: Lowest AD > Lowest Metric to source > Highest IP Address
router ospf 1
distance 80
Rack1R1#show ip mroute 239.6.6.6
(*, 239.6.6.6), 00:02:05/stopped, RP 0.0.0.0, flags: DC
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
FastEthernet0/0, Forward/Sparse-Dense, 00:02:05/00:00:00
Serial0/0.1, Forward/Sparse-Dense, 00:02:05/00:00:00
(155.1.108.10, 239.6.6.6), 00:00:22/00:02:46, flags: T
Incoming interface: Serial0/0.1, RPF nbr 155.1.0.5
Outgoing interface list:
FastEthernet0/0, Forward/Sparse-Dense, 00:00:24/00:00:00,

A << Assert Winner

PIM DR Election (responsible for multicast source registration with RP)


interface FastEthernet0/0
ip pim dr-priority 100

PIM Accept RP
! Must be configured at both DR and RP
ip access-list standard ALLOWED_GROUPS
permit 224.10.10.10
permit 224.110.110.110
!
ip pim accept-rp 150.1.5.5 ALLOWED_GROUP

PIM Accept Register (Only accepts specific source to register with the RP)
R5:
ip access-list extended VLAN146_SOURCES
deny ip host 155.1.146.6 any
permit ip 155.1.146.0 0.0.0.255 any
!
route-map ACCEPT_REGISTER deny 10
match ip address VLAN146_SOURCES
!
route-map ACCEPT_REGISTER permit 100
!
ip pim accept-register route-map ACCEPT_REGISTER
%PIM-4-INVALID_SRC_REG: Received Register from 155.1.0.1 for
(155.1.146.66, 224.10.10.10), not willing to be RP

Multicast Tunneling
! SW3 creates tunnel to R1 to receive multicast streams
interface Tunnel 0
ip unnumbered Loopback0
tunnel source Loopback0
tunnel destination 150.1.1.1
ip pim sparse-dense-mode
!
router ospf 1
passive-interface Tunnel0
!
ip mroute 0.0.0.0 0.0.0.0 tunnel 0
!
ip access-list standard SPARSE_GROUPS
permit 224.0.0.0 0.255.255.255
!
ip pim rp-address 150.1.5.5 SPARSE_GROUPS

PIM NBMA Mode


interface Serial 0/0
ip pim nbma-mode

Rack1R5#show ip mroute 224.110.110.110


(*, 224.110.110.110), 00:02:58/00:03:28, RP 150.1.5.5, flags: S
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
Serial0/0, 155.1.0.3, Forward/Sparse-Dense, 00:00:01/00:03:28
(155.1.146.6, 224.110.110.110), 00:02:41/00:02:54, flags: T
Incoming interface: Serial0/1, RPF nbr 155.1.45.4
Outgoing interface list:
Serial0/0, 155.1.0.3, Forward/Sparse-Dense, 00:00:01/00:03:28

Auto-RP
interface Loopback0
ip pim sparse-dense-mode
!
ip pim send-rp-announce Loopback 0 scope 10
ip pim send-rp-discovery loopback 0 scope 10
224.0.1.40

<< cRP / willing to become an RP


<< MA; listen to 224.0.1.39 & send multicast to

! ip pim send-rp-announce <Interface> scope <TTL> [group-list <Std-ACL>] [interval <seconds>]


! ip pim send-rp-discovery <Interface> scope <TTL> interval <Seconds>
! no ip dm-fallback
NOTE: By default, Auto-RP announces override the statically configured RP. If you want them to
persist, use the override keyword along with the ip pim rpaddress command.

Auto-RP - Multiple Candidate RPs


ip access-list standard SW2_GROUPS
permit 224.0.0.0 7.255.255.255
permit 224.0.0.0 15.255.255.255
deny 224.110.110.110
!
interface Loopback0
ip pim sparse-dense-mode
!
ip pim send-rp-announce Loopback 0 scope 10 group-list SW2_GROUPS

Auto-RP - Filtering Candidate RPs (cRP & Group filtering, applied at the Mapping Agent)
ip access-list standard RP_LIST
permit 150.1.10.10
!
ip access-list standard GROUP_LIST
deny 224.110.110.110
permit any
!
ip pim rp-announce-filter rp-list RP_LIST group-list GROUP_LIST

Auto-RP Listener (Auto-RP without risking any groups falling back to dense mode forwarding)
interface FastEthernet 0/0
ip pim sparse-mode
!
ip pim autorp listener

<< Listens only for 224.0.1.39 and 224.0.1.40

Auto-RP and RP/MA Placement


R1:
interface Loopback0
ip pim sparse-mode
!
ip pim send-rp-discovery loopback 0 scope
10
!
interface tunnel 1
tunnel source Loopback0
tunnel destination 150.1.3.3
ip unnumbered Loopback0
ip pim sparse-mode
!
router ospf 1
passive-interface Tunnel1

R3:
interface tunnel 1
tunnel source Loopback0
tunnel destination 150.1.1.1
ip unnumbered Loopback0
ip pim sparse-mode
!
! Static mroute is needed to allow R3
hearing
! Auto-RP discoveries from R1.
!
ip mroute 150.1.1.1 255.255.255.255 Tunnel
1
!
router ospf 1

passive-interface Tunnel1
R5#no ip pim send-rp-discovery loopback 0 scope 10

Filtering Auto-RP Messages


R1:
ip pim send-rp-discovery Loopback0 scope 2

Multicast Boundary
ip access-list standard PERMITTED_GROUPS
deny 232.0.0.0 7.255.255.255
permit any
!
interface FastEthernet 0/0
ip multicast boundary PERMITTED_GROUPS filter-autorp
NOTE: This feature applies filtering to both the control plane traffic (IGMP, PIM, AutoRP) and data
plane (installing multicast route states out of the configured interface).
! filter-autorp - the router will inspect any Auto-RP messages (announces or discovery) and filter
away
those not matching the access-list.

PIM Bootstrap Router


ip pim rp-candidate Loopback0
ip pim bsr-candidate Loopback0

<< RP Candidate
<< BSR Candidate

#show ip pim bsr-router


#show ip pim rp mapping

BSR - Multiple RP Candidates


R5:
no ip pim rp-candidate Loopback0
ip pim bsr-candidate Loopback0 31

SW2 & SW4


ip pim rp-candidate Loopback0

Filtering BSR Messages (BSR messages are not flooded or received on this link)
interface FastEthernet0/0
ip pim bsr-border

Stub Multicast Routing & IGMP Helper


NOTE: Stub multicast router allows R3 to be exempted from PIM and IGMP messages processing. The
upstream router (R5) builds multicast distribution tree on behalf of the downstream router (R3) by
the virtue of IGMP proxy function, no excessive load is being put on the stub router or the stub link,
effectively saving bandwidth and router resources.
SW1:
ip multicast-routing distributed
!
access-list 7 deny any
!
interface FastEthernet 0/3
ip igmp join-group 239.1.1.7
ip pim dense-mode
ip pim neighbor-filter 7

R3:
interface FastEthernet0/0
ip igmp helper-address
155.1.0.5
ip pim dense-mode
!
interface Serial 1/0.1
ip pim dense-mode

IGMP Filtering
ip access-list standard IGMP_FILTER
permit 239.1.1.0 0.0.0.255

R5:
access-list 33 deny
155.1.0.3
access-list 33 permit any
!
interface Serial 0/0
ip pim sparse-mode
ip pim neighbor-filter 33

!
interface FastEthernet0/0
ip igmp access-group IGMP_FILTER
ip igmp limit 10

IGMP Timers
R1:
interface FastEthernet0/0
ip igmp query-interval 20
ip igmp query-max-response-time 4

<< Periodic queries sent


<< The router removes mroute state for this group no
response after this interval.

ip igmp last-member-query-count <N> << number of query needed to check if there are any
other hosts on the segment that still need this group,
when the router receives a leave report. Default is 2.
ip igmp last-member-query-interval <ms> - Interval that the queries are sent, default is 1000ms.
R3:
ip access-list standard IMMEDIATE_LEAVE
permit 239.1.1.0 0.0.0.255
!
interface FastEthernet 0/0
ip igmp immediate-leave group-list IMMEDIATE_LEAVE
! If there is an IGMP leave message received on the interface for a group matching the access-list,
the mroute
! state is immediately removed, without any further delays.
R4:
interface FastEthernet0/1
ip igmp querier-timeout 60 << will attempt to become a designated querier if no response from
the querier
Rack1R4#show ip igmp interface fastEthernet 0/1

Multicast Helper Map (converts the broadcast destination address to the fixed multicast
address)
R1:
ip forward-protocol udp 5000
!
ip access-list extended TRAFFIC
permit udp any any eq 5000
permit udp any any eq 53

<< enable forwarding of broadcast UDP

! Redirect broadcast packets to the selected multicast address. The access-list controls which
broadcast
! packets are eligible to be converted into the multicast
interface FastEthernet 0/0
ip multicast helper-map broadcast 239.1.1.100 TRAFFIC
R3:
ip forward-protocol udp 5000
ip multicast multipath
!

paths

<< enable forwarding of broadcast UDP


<< allows R3 to perform RPF across the equal-cost

ip access-list extended TRAFFIC


permit udp any any eq 5000
permit udp any any eq 53
! By default, the broadcasts are sent to the address 255.255.255.255
! Enable directed broadcasts in order to successfully send broadcasts out of this segment
interface FastEthernet 0/0
ip directed-broadcast
ip broadcast-address 155.1.37.255
<< Changes the broadcast address for this interface
! Converts received multicast traffic into directed-broadcast subnet.
! Note that you should not configure the multicast-helper on the interface connected to the
destination.
interface Serial 1/0.1
ip multicast helper-map 239.1.1.100 155.1.37.255 TRAFFIC
R5:
ip mroute 155.1.146.0 255.255.255.0 155.1.0.1

<< Fixes RPF issue

Multicast Rate Limiting


R3:
ip access-list standard GROUP7
permit 239.1.1.7
!
ip access-list standard GROUP100
permit 239.1.1.100
! Any source sending to the group IP 239.1.1.7 will be limited to 128Kbps.
interface FastEthernet0/0
ip multicast rate-limit out group-list GROUP7 128
ip multicast rate-limit out group-list GROUP100 256
ip multicast rate-limit out 1000
NOTE: When applied without any parameters, this command will simply drop all multicast traffic.
ip multicast rate-limit {in | out} [group-list <acl>] [source-list <acl>] [<limit>]
Rack1R3#show ip mroute
(*, 239.1.1.100), 01:17:18/stopped, RP 150.1.8.8, flags: SJCL
Incoming interface: FastEthernet0/0, RPF nbr 155.1.37.7
Outgoing interface list:
Serial1/0.1, Forward/Dense, 01:17:18/00:00:00
(155.1.146.6, 239.1.1.100), 00:00:04/00:02:57, flags: LJT
Incoming interface: Serial1/0.1, RPF nbr 155.1.0.5
Outgoing interface list:
FastEthernet0/0, Forward/Dense, 00:00:04/00:00:00, limit 256 kbps

Bidirectional PIM
PIM BiDir uses single distribution tree rooted at the RP for all sources and receivers at the same time.
When a source
sends multicast packets, they first flow up to the root of the tree (the RP) and then down to all
receivers. PIM BiDir does
not use source registration procedure. Every source may start sending at any time, and the packets
will flow upwards

to the RP. Packets are either dropped, if there are no receivers for this group or forwarded down the
BiDir tree.
Designated Forwarder - the router on the link that has shortest metric to reach the RP is the DF for
this link
R1, R3, R4, SW2, SW4:
ip pim bidir-enable

<< Enables BiDir PIM

R5:
ip pim bidir-enable
ip access-list standard GROUP238
permit 238.0.0.0 0.255.255.255
! May use AutoRP or BSR
ip pim rp-candidate Loopback 0 group-list GROUP238 bidir
Rack1R1#show ip mroute 238.1.1.1
<< Mroute output of the receiver
(*, 238.1.1.1), 00:08:15/00:02:59, RP 150.1.5.5, flags: BCL
Bidir-Upstream: Serial0/0.1, RPF nbr 155.1.0.5
Outgoing interface list:
FastEthernet0/0, Forward/Sparse, 00:08:15/00:02:40
Serial0/0.1, Bidir-Upstream/Sparse, 00:08:15/00:00:00
Rack1R5#show ip mroute 238.1.1.1
<< Mroute output from the RP
(*, 238.1.1.1), 00:26:24/00:03:05, RP 150.1.5.5, flags: B
Bidir-Upstream: Null, RPF nbr 0.0.0.0
Outgoing interface list:
Serial0/0, 155.1.0.1, Forward/Sparse, 00:12:58/00:00:00
FastEthernet0/0, Forward/Sparse, 00:26:24/00:02:53

Source Specific Multicast (IGMPv3)


R1, R3, R4, R5, SW2, SW4:
ip pim ssm default
R1:
interface FastEthernet 0/0
ip igmp version 3

<< enabling IGMPv3 on the interfaces connected to the


receivers

R6:
interface FastEthernet 0/0.146
ip igmp version 3
ip igmp join 232.6.6.6 source 150.1.10.10
ip pim ssm range {default|range <Standard-ACL>}
NOTE: There are no shared trees in PIM SSM and no RPs used. The range specifies the groups that
are using SSM
signaling. The default keyword means that range 232.0.0.0/8 will be used for SSM. For the groups in
the SSM range, no
shared trees are allowed and (*,G) Joins are dropped.
Rack1R1#show ip igmp groups 232.6.6.6 detail
Flags: L - Local, U - User, SG - Static Group, VG - Virtual Group,
SS - Static Source, VS - Virtual Source,
Ac - Group accounted towards access control limit
Interface: FastEthernet0/0
Group:
232.6.6.6

Flags:
SSM
Uptime:
00:26:06
Group mode: INCLUDE
Last reporter: 155.1.146.6
Group source list: (C - Cisco Src Report, U - URD, R - Remote, S Static,
V - Virtual, M - SSM Mapping, L - Local,
Ac - Channel accounted towards access control
limit)
Source Address Uptime v3 Exp CSR Exp Fwd Flags
150.1.10.10 00:26:06 00:02:54 stopped Yes R

DVMRP Interoperability
ip dvmrp interoperability
!access-list 40 permit 155.1.0.0 0.0.255.255
!
interface FastEthernet0/1
ip dvmrp metric 1 list 40 eigrp 100

Multicast BGP Extension


R6:
route-map PREPEND
set as-path prepend 100 100 100
!
router bgp 100
address-family ipv4 multicast
neighbor 155.1.146.4 activate
redistribute ospf 1
neighbor 155.1.146.4 route-map PREPEND out
neighbor 150.1.7.7 activate
neighbor 150.1.7.7 next-hop-self
!
interface FastEthernet 0/0.146
ip pim sparse-mode
R3:
router bgp 100
address-family ipv4 multicast
neighbor 155.1.0.5 activate
redistribute ospf 1
neighbor 150.1.7.7 activate
neighbor 150.1.7.7 next-hop-self
!
interface Serial 1/0.1
ip pim sparse-mode

SW1:
router bgp 100
address-family ipv4 multicast
neighbor IBGP route-reflector-client
neighbor 150.1.3.3 peer-group IBGP
neighbor 150.1.6.6 peer-group IBGP
neighbor 150.1.9.9 peer-group IBGP
SW3:
router bgp 100

R4:
route-map PREPEND
set as-path prepend 200 200 200
!
router bgp 200
address-family ipv4 multicast
neighbor 155.1.146.6 activate
redistribute eigrp 100
neighbor 155.1.146.6 route-map PREPEND out
neighbor 150.1.5.5 activate
!
interface FastEthernet 0/1
ip pim sparse-mode
ip pim bsr-border
R5:
router bgp 200
address-family ipv4 multicast
neighbor 155.1.0.3 activate
redistribute eigrp 100
neighbor IBGP route-reflector-client
neighbor 150.1.4.4 peer-group IBGP
neighbor 150.1.8.8 peer-group IBGP
neighbor 150.1.10.10 peer-group IBGP
neighbor IBGP next-hop-self
!
interface Serial 0/0
ip pim sparse-mode
ip pim bsr-border
SW2:
router bgp 200
address-family ipv4 multicast
neighbor 150.1.5.5 activate
SW4:
router bgp 200
address-family ipv4 multicast
neighbor 150.1.5.5 activate

address-family ipv4 multicast


neighbor 150.1.7.7 activate

MSDP
R5:
ip msdp peer 150.1.7.7 connect-source Loopback 0
ip msdp peer 150.1.7.7 remote-as 100
SW2:
ip msdp peer 150.1.7.7 connect-source Loopback 0
ip msdp peer 150.1.7.7 remote-as 100
SW1:
ip msdp
ip msdp
ip msdp
ip msdp

peer
peer
peer
peer

150.1.5.5
150.1.5.5
150.1.8.8
150.1.8.8

remote-as 200
connect-source Loopback 0
remote-as 200
connect-source Loopback 0

ip msdp originator-id - command used to change the originator ID


Anycast RP (redundant RPs sharing the same IP address)
R5:
interface Loopback100
ip address 150.1.100.100 255.255.255.255
!
router eigrp 100
network 150.1.100.100 0.0.0.0
!
ip msdp originator-id Loopback 0
ip msdp peer 150.1.8.8 connect-source Loopback 0
ip pim rp-candidate Loopback100
SW2:
interface Loopback100
ip address 150.1.100.100 255.255.255.255
!
router eigrp 100
network 150.1.100.100 0.0.0.0
!
ip msdp originator-id Loopback 0
ip msdp peer 150.1.5.5 connect-source Loopback 0
ip pim rp-candidate Loopback100
NOTE: Anycast RP is purely intra-domain solution, and does not deal with interdomain multicast.
Every RP informs each other of the active sources registered with them.

Catalyst IGMP Snooping


ip igmp snooping vlan 146 immediate-leave

<< if only one host connected

! statically configure a port as connected to a multicast router


ip igmp snooping vlan <vlan-id> mrouter interface <interface-id>
NOTE: IGMP snooping is enabled by default in the Catalyst multilayer switches. Snooping is enabled
globally and on per-VLAN basis.
Rack1SW1#show ip igmp snooping vlan 146
Global IGMP Snooping configuration:
----------------------------------IGMP snooping
: Enabled

IGMPv3 snooping (minimal)


Report suppression
TCN solicit query
TCN flood query count
Last Member Query Interval

: Enabled
: Enabled
: Disabled
:2
: 1000

Vlan 146:
-------IGMP snooping
: Enabled
IGMPv2 immediate leave
: Enabled
Explicit host tracking
: Enabled
Multicast router learning mode
: pim-dvmrp
Last Member Query Interval : 1000
CGMP interoperability mode : IGMP_ONLY
Rack1SW1#show ip igmp snooping groups vlan 146
Vlan Group
Type Version
Port List
---------------------------------------------------------------146
239.1.1.100 igmp v2
Fa0/1, Fa0/19

Catalyst Multicast VLAN Registration


NOTE: MVR allows multicast traffic to cross VLAN boundaries based on client IGMP reports.
SW1:
no ip multicast-routing distributed
mvr
mvr group 239.1.1.100
mvr mode dynamic
! multicast traffic sent by R1 on VLAN146 is received by R5 on VLAN58
interface FastEthernet 0/1
mvr type source
!
interface FastEthernet 0/5
mvr type receiver

Catalyst IGMP Profiles (similar to ip igmp access group used in routers, only ingress)
SW4:
ip igmp profile 1
permit
range 232.0.0.0 232.255.255.255
range 239.0.0.0 239.255.255.255
!
interface FastEthernet 0/4
ip igmp filter 1
R4:
interface FastEthernet0/1
ip igmp join-group 239.4.4.4
ip igmp join-group 230.4.4.4
Rack1SW4#show ip igmp snooping groups vlan 146
Vlan Group
Version
Port List
-----------------------------------------------------------146
224.0.1.40
v2
Fa0/13
146
239.4.4.4
v2
Fa0/4

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy