Cisco Support Community
cancel
Showing results for 
Search instead for 
Did you mean: 

How to configure multiprotocol BGP for IP multicasting

Core Issue

Protocol Independent Multicast (PIM) mode is the most commonly used protocol for IP multicasting within an Autonomous System (AS). PIM can use the route learned from any unicast routing protocol to perform the Reverse Path Forwarding (RPF) check and forward the multicast packets that a router receives from a source. When multicasting is implemented across different ASs (also known as Inter-AS multicasting), PIM can be used inside the individual domains for building data distribution trees. But it has to rely on the unicast route information learned through Border Gateway Protocol (BGP) to perform the RPF check.

There may be cases where the unicast traffic has to flow through a particular path between two ASs and a different path has to be used for multicast traffic between the same two ASs. In such a case, the RPF check fails if a multicast source is learned through the interface meant for unicast traffic. This is a common case in Network Access Points (NAPs), where multiple service providers peer with each other at multiple points. To overcome this problem, Multicast BGP (MBGP) can be used. MBGP is an extension of BGP that can carry routing information for multiple network layer protocols. MBGP can indicate whether an advertised prefix is to be used for unicast routing, multicast RPF checks or both.

For BGP to support IPv6 or multicast, BGP is extended. These extensions are called Multiprotocol BGP (MP-BGP) extensions. For multicast, you usually refer to these extensions as Multiprotocol BGP extensions for multicast. Multicast BGP is multicast BGP extensions for IP multicast.

 

Resolution

The configuration of MBGP is identical to that of ordinary BGP configuration except for a few additional steps. MBGP involves issuing the address-family command in BGP configuration mode identify the type of route advertised. For example, router A has a LAN segment 172.16.1.0/24 attached to it, with multicast sources belonging to this segment. Router A is also connected to router B across two WAN links belonging to 192.168.10.0/24 and 192.168.20.0/24 networks, with receivers attached to a LAN segment on router B. Use the first WAN link for unicast traffic alone and the second WAN link for only multicast traffic.You need to configure multicast routing on both routers and enable pim on the interface you want to send multicast traffic ,2nd link in our case.you would also need to enable pim on LAN segment of both routers (multicast server and host) that will also enable IGMP enable on it.

 

This is the MBGP configuration on router A:

router bgp 65500
 no bgp default ipv4-unicast
!-- This command disables automatic advertising of prefixes to all 
neighbors for unicast traffic. 
 bgp log-neighbor-changes
 network 172.16.1.0 mask 255.255.255.0
!--- This line advertises the attached LAN segment for 
unicast traffic.
 neighbor 192.168.10.2 remote-as 65535
 neighbor 192.168.10.2 activate
!--- These lines configure the neighbor on the first WAN link to router B 
and enables exchange of prefixes for unicast traffic with this specific neighbor.
 neighbor 192.168.20.2 remote-as 65535
!--- This line configures the neighbor on the second WAN link to router B.
 address-family ipv4 multicast
!--- This command configures the MBGP session to exchange prefixes for 
multicast traffic.
 neighbor 192.168.20.2 activate
!--- This line activates the previously defined neighbor on the 
second WAN link to router B. This is done to exchange prefixes for multicast traffic.  
 network 172.16.1.0 mask 255.255.255.0
!--- This line advertises this prefix for multicast 
traffic apart from advertising the prefix previously for unicast traffic.
 exit-address-family
!--- This command exits out of the address-family configuration mode.

 

Due to this configuration, unicast traffic to the 172.16.1.0/24 subnet flows on the first WAN link between the routers, but the second WAN link is used for the RPF check when a source belonging to this subnet sends multicast traffic reaching router B.

For more information on MBGP, refer to these documents:

 

Problem Type

Configure

Multicast issues

IP Routing Protocols

BGP

 

RP (Routing Protocol) Related Technologies

Multicast

Comments
Cisco Employee
Yes, it is possible to import ipv4 Unicast prefixes into the ipv4
Multicast address family.

Howeever, this can only be done by using the "neighbor translate-update ipv4 multicast" command. In the following configuration, routes received from 172.16.0.61 can be translated with the following configuration: R5 (172.16.0.5) address-family ipv4 neighbor 172.16.0.61 translate-update ipv4 multicast neighbor 172.16.0.60 address-family ipv4 multicast neighbor 172.16.0.60 activate neighbor 172.16.0.61 activate * Note the for the translation to work properly, the neighbor from which you received the ipv4 unicast prefixes has to be enabled under AF ipv4 multicast * Note: If you also need the same routes to be propagated in AF ipv4 you then need to add the unicast keyword at the end as follow: neighbor 172.16.0.61 translate-update ipv4 multicast unicast ---------- Verification details R5-PE#sh ip bgp ipv4 unicast BGP table version is 18, local router ID is 172.16.0.5 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,               r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,               x best-external, a additional-path, c RIB-compressed, Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found      Network          Next Hop            Metric LocPrf Weight Path *>  192.168.60.0     172.16.0.60              0             0 65060 i R5-PE#sh ip bgp ipv4 multicast BGP table version is 2, local router ID is 172.16.0.5 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,               r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,               x best-external, a additional-path, c RIB-compressed, Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found      Network          Next Hop            Metric LocPrf Weight Path *>  192.168.61.0     172.16.0.61              0             0 65061 i R5-PE#sh ip mbgp BGP table version is 2, local router ID is 172.16.0.5 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,               r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,               x best-external, a additional-path, c RIB-compressed, Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found      Network          Next Hop            Metric LocPrf Weight Path *>  192.168.61.0     172.16.0.61              0             0 65061 i ## The Peer receiving the Multicast update R60#sh run | sec bgp ipv6 multicast rpf use-bgp router bgp 65060 bgp log-neighbor-changes neighbor 172.16.0.5 remote-as 65501 neighbor 172.16.0.5 ebgp-multihop 255 neighbor 172.16.0.5 update-source Loopback0 neighbor 172.16.0.5 timers 10 30 ! address-family ipv4    neighbor 172.16.0.5 activate exit-address-family ! address-family ipv4 multicast   neighbor 172.16.0.5 activate exit-address-family R60#sh ip bgp ipv4 multicast BGP table version is 2, local router ID is 192.168.60.1 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,               r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,               x best-external, a additional-path, c RIB-compressed, Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found      Network          Next Hop            Metric LocPrf Weight Path *>  192.168.61.0     172.16.0.5                             0 65501 65061 i ## The Peer advertising the Multicast update R61#sh run | sec bgp ipv6 multicast rpf use-bgp router bgp 65061 bgp log-neighbor-changes neighbor 172.16.0.5 remote-as 65501 neighbor 172.16.0.5 ebgp-multihop 255 neighbor 172.16.0.5 update-source Loopback0 ! address-family ipv4   network 192.168.61.0   neighbor 172.16.0.5 activate exit-address-family ! address-family ipv4 multicast   neighbor 172.16.0.5 activate exit-address-family R61#sh ip bgp       BGP table version is 27, local router ID is 192.168.61.1 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,               r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,               x best-external, a additional-path, c RIB-compressed, Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found      Network          Next Hop            Metric LocPrf Weight Path r>  172.16.0.5/32    172.16.0.5               0             0 65501 i *>  192.168.61.0     0.0.0.0                  0         32768 i R61#sh ip mbgp     
11484
Views
0
Helpful
1
Comments