Multiprotocol BGP (MP-BGP) is an extension to BGP that enables BGP to carry routing information for multiple network layers and address families. MP-BGP can carry the unicast routes used for multicast routing separately from the routes used for unicast IP forwarding.
To enable MP-BGP, you configure BGP to carry network layer reachability information (NLRI) for address families other than unicast IPv4 by including the family inet statement:
-
family inet {
-
- (any | flow | labeled-unicast | multicast | unicast) {
-
-
accepted-prefix-limit {
- maximum number;
- teardown <percentage> <idle-timeout
(forever | minutes)>;
- }
-
-
prefix-limit {
- maximum number;
- teardown <percentage> <idle-timeout
(forever | minutes)>;
- }
-
rib-group group-name;
- }
- }
To enable MP-BGP to carry NLRI for the IPv6 address family, include the family inet6 statement:
-
family inet6 {
-
- (any | labeled-unicast | multicast | unicast) {
-
-
accepted-prefix-limit {
- maximum number;
- teardown <percentage> <idle-timeout
(forever | minutes)>;
- }
-
-
prefix-limit {
- maximum number;
- teardown <percentage> <idle-timeout
(forever | minutes)>;
- }
-
rib-group group-name;
- }
- }
To enable MP-BGP to carry Layer 3 VPN NLRI for the IPv4 address family, include the family inet-vpn statement:
-
family inet-vpn {
-
- (any | flow | multicast | unicast) {
-
-
accepted-prefix-limit {
- maximum number;
- teardown <percentage> <idle-timeout
(forever | minutes)>;
- }
-
-
prefix-limit {
- maximum number;
- teardown <percentage> <idle-timeout
(forever | minutes)>;
- }
-
rib-group group-name;
- }
- }
To enable MP-BGP to carry Layer 3 VPN NLRI for the IPv6 address family, include the family inet6-vpn statement:
-
family inet6-vpn {
-
- (any | multicast | unicast) {
-
-
accepted-prefix-limit {
- maximum number;
- teardown <percentage> <idle-timeout
(forever | minutes)>;
- }
-
-
prefix-limit {
- maximum number;
- teardown <percentage> <idle-timeout
(forever | minutes)>;
- }
-
rib-group group-name;
- }
- }
To enable MP-BGP to carry multicast VPN NLRI for the IPv4 address family and to enable VPN signaling, include the family inet-mvpn statement:
- family inet-mvpn {
-
- signaling {
-
-
accepted-prefix-limit {
- maximum number;
- teardown <percentage> <idle-timeout
(forever | minutes)>;
- }
-
-
prefix-limit {
- maximum number;
- teardown <percentage> <idle-timeout
(forever | minutes)>;
- }
- }
- }
To enable MP-BGP to carry multicast VPN NLRI for the IPv6 address family and to enable VPN signaling, include the family inet6-mvpn statement:
- family inet6-mvpn {
-
- signaling {
-
-
accepted-prefix-limit {
- maximum number;
- teardown <percentage> <idle-timeout
(forever | minutes)>;
- }
-
-
prefix-limit {
- maximum number;
- teardown <percentage> <idle-timeout
<forever | minutes>;
- }
- }
- }
For more information about multiprotocol BGP-based multicast VPNs, see the JUNOS VPNs Configuration Guide and the JUNOS Multicast Protocols Configuration Guide.
For a list of hierarchy levels at which you can include these statements, see the statement summary sections for these statements.
![]() |
Note: If you change the address family specified in the [edit bgp family inet] hierarchy level, the BGP sessions are dropped and then reestablished. |
By default, BGP peers carry only unicast routes used for unicast forwarding purposes. To configure BGP peers to carry only multicast routes, specify the multicast option. To configure BGP peers to carry both unicast and multicast routes, specify the any option.
When MP-BGP is configured, BGP installs the MP-BGP routes into different routing tables. Each routing table is identified by the protocol family or address family indicator (AFI) and a subaddress family indicator (SAFI).
The JUNOS software supports all unicast and multicast
SAFIs (1 and 2) for both
AFI 1 (IPv4) and AFI 2 (IPv6).
The following table shows all possible AFI and SAFI combinations and
routing tables populated with this information:
|
|
SAFI 1 |
SAFI 2 |
|---|---|---|
| AFI 1 (IPv4) |
inet.0 |
inet.2 |
| AFI 2 (IPv6) |
inet6.0 |
inet6.2 |
If peers are not MP-BGP, you cannot export routes from inet.2 to them, only routes in the inet.0 routing table. Routes in inet.2 can be sent only to MP-BGP peers, since they are sent with subaddress family information that identifies them as routes to multicast sources. The inet.2 table should be a subset of the routes that you have in inet.0, since it is unlikely that you would have a route to a multicast source to which you could not send unicast traffic.
The inet.2 routing table is used to keep the unicast routes that are used for multicast reverse-path-forwarding checks. You automatically get an inet.2 routing table when you configure MP-BGP (by setting NLRI to any). The additional reachability information learned by MP-BGP from the NLRI multicast updates are placed in inet.2.
When you enable multiprotocol BGP, you can do the following: