- Table of Contents
-
- 07-IP Multicast Configuration Guide
- 00-Preface
- 01-Multicast overview
- 02-IGMP snooping configuration
- 03-PIM snooping configuration
- 04-Multicast VLAN configuration
- 05-Multicast routing and forwarding configuration
- 06-IGMP configuration
- 07-PIM configuration
- 08-MSDP configuration
- 09-Multicast VPN overview
- 10-MDT-based MVPN configuration
- 11-RSVP-TE-based MVPN configuration
- 12-mLDP-based MVPN configuration
- 13-BIER-based MVPN configuration
- 14-MVPN extranet configuration
- 15-MLD snooping configuration
- 16-IPv6 PIM snooping configuration
- 17-IPv6 multicast VLAN configuration
- 18-IPv6 multicast routing and forwarding configuration
- 19-MLD configuration
- 20-IPv6 PIM configuration
- Related Documents
-
Title | Size | Download |
---|---|---|
10-MDT-based MVPN configuration | 716.36 KB |
MDT-based MVPN tasks at a glance
Prerequisites for configuring MDT-based MVPN
Enabling IP multicast routing for a VPN instance
Creating an MDT-based MVPN instance
Creating an MVPN address family
Specifying the MVPN source interface
Configuring MDT switchover parameters
Configuring the RPF vector feature
Enabling data group reuse logging
Configuring BGP MDT peers or peer groups
Limiting BGP MDT routes received from a peer or peer group
Configuring a BGP MDT route reflector
Configuring BGP MDT optimal route selection delay
Preferring routes learned from the specified peer or peer group during optimal route selection
Display and maintenance commands for MDT-based MVPN
MDT-based MVPN configuration examples
Example: Configuring intra-AS MDT-based MVPN
Example: Configuring inter-AS option B MDT-based MVPN
Example: Configuring inter-AS option C MDT-based MVPN
Configuring MDT-based MVPN
MDT-based MVPN overview
For a VPN instance, multicast data transmission on the public network is transparent. The VPN data is exchanged between the MTIs of the local PE and the remote PE. This implements the seamless transmission of the VPN data over the public network. However, the multicast data transmission process (the MDT transmission process) over the public network is very complicated.
|
NOTE: The following types of PIM neighboring relationships exist in MVPN: · PE-P PIM neighboring relationship—Established between the public network interface on a PE and the peer interface on the P device over the link. · PE-PE PIM neighboring relationship—Established between PEs that are in the same VPN instance after they receive the PIM hello packets. · PE-CE PIM neighboring relationship—Established between a PE interface that is bound with the VPN instance and the peer interface on the CE over the link. |
Basic concepts
This section introduces the following basic concepts in MDT-based MVPN:
· MVPN—An MVPN logically defines the transmission boundary of the multicast traffic of a VPN over the public network. It also physically identifies all the PEs that support that VPN instance on the public network. Different VPN instances correspond to different MVPNs.
· Multicast distribution tree (MDT)—An MDT is a multicast distribution tree constructed by all PEs in the same VPN. MDT includes default MDT and data MDT.
· Multicast tunnel (MT)—An MT is a tunnel that interconnects all PEs in an MVPN. The local PE encapsulates a VPN multicast packet into a public network multicast packet and forwards it through the MT over the public network. The remote PE decapsulates the public network multicast packet to get the original VPN multicast packet.
· Multicast tunnel interface (MTI)—An MTI is the entrance or exit of an MT, equivalent to an entrance or exit of an MVPN. MTIs are automatically created when the MVPN for the VPN instance is created. PEs use the MTI to access the MT. The local PE sends VPN data out of the MTI. The remote PEs receive the private data from their MTIs. An MTI runs the same PIM mode as the VPN instance to which the MTI belongs. PIM is enabled on MTIs when a minimum of one interface in the VPN instance is enabled with PIM. When PIM is disabled on all interfaces in the VPN instance, PIM is also disabled on MTIs.
· Default group—A default group is a unique multicast address assigned to each MVPN on the public network. It is the unique identifier of an MVPN on the public network and helps build the default MDT for an MVPN on the public network. A PE encapsulates a VPN multicast packet (a multicast protocol packet or a multicast data packet) into a public network multicast packet. The default group address is used as the public network multicast group.
· Default MDT—A default MDT uses a default group address as its group address. In a VPN, the default MDT is uniquely identified by the default group. A default MDT is automatically created after the default group is specified and will always exist on the public network, regardless of the presence of any multicast services on the public network or the VPN.
· Data group—An MVPN is assigned a unique data group for MDT switchover. The ingress PE selects a least used address from the data group range to encapsulate the VPN multicast packets when the multicast traffic of the VPN reaches or exceeds a thresholdwhen the multicast traffic of the VPN arrives at the PE. Other PEs are notified to use the address to forward the multicast traffic for that VPN. This initiates the switchover to the data MDT.
· Data MDT—A data MDT is an MDT that uses a data group as it group address. At MDT switchover, PEs with downstream receivers join a data group to build a data MDT. The ingress PE forwards the encapsulated VPN multicast traffic along the data MDT over the public network.
Default MDT establishment
The multicast routing protocol running on the public network can be PIM-DM, PIM-SM or PIM-SSM. The process of creating a default MDT is different in these PIM modes.
Default MDT establishment in a PIM-DM network
Figure 1 Default MDT establishment in a PIM-DM network
As shown in Figure 1, PIM-DM is enabled on the network, and all the PEs support VPN instance A. The process of establishing a default MDT is as follows:
1. To establish PIM neighboring relationships with PE 2 and PE 3 through the MTI for VPN instance A, PE 1 does the following:
a. Encapsulates the PIM protocol packet of the private network into a public network multicast data packet. PE 1 does this by specifying the source address as the IP address of the MVPN source interface and the multicast group address as the default group address.
b. Sends the multicast data packet to the public network.
For other PEs that support VPN instance A as default group members, PE 1 of VPN instance A initiates a flood-prune process in the entire public network. A (11.1.1.1, 239.1.1.1) state entry is created on each device along the path on the public network. This forms an SPT with PE 1 as the root, and PE 2 and PE 3 as leaves.
2. At the same time, PE 2 and PE 3 separately initiate a similar flood-prune process.
Finally, three independent SPTs are established in the MVPN, constituting the default MDT in the PIM-DM network.
Default MDT establishment in a PIM-SM network
Figure 2 Default MDT establishment in a PIM-SM network
As shown in Figure 2, PIM-SM is enabled on the network, and all the PEs support VPN instance A. The process of establishing a default MDT is as follows:
1. PE 1 initiates a join to the public network RP by specifying the multicast group address as the default group address in the join message. A (*, 239.1.1.1) state entry is created on each device along the path on the public network.
2. At the same time, PE 2 and PE 3 separately initiate a similar join process.
Finally, an RPT is established in the MVPN, with the public network RP as the root and PE 1, PE 2, and PE 3 as leaves.
3. To establish PIM neighboring relationships with PE 2 and PE 3 through the MTI for VPN instance A, PE 1 does the following:
a. Encapsulates the PIM protocol packet of the private network into a public network multicast data packet. PE 1 does this by specifying the source address as the IP address of the MVPN source interface and the multicast group address as the default group address.
b. Sends the multicast data packet to the public network.
The public network interface of PE 1 registers the multicast source with the public network RP, and the public network RP initiates a join to PE 1. A (11.1.1.1, 239.1.1.1) state entry is created on each device along the path on the public network.
4. At the same time, PE 2 and PE 3 separately initiate a similar register process.
Finally, three SPTs between the PEs and the RP are established in the MVPN.
In the PIM-SM network, the RPT, or the (*, 239.1.1.1) tree, and the three independent SPTs constitute the default MDT.
Default MDT establishment in a BIDIR-PIM network
Figure 3 Default MDT establishment in a BIDIR-PIM network
As shown in Figure 3, BIDIR-PIM runs on the network, and all the PEs support VPN instance A. The process of establishing a default MDT is as follows:
1. PE 1 initiates a join to the public network RP by specifying the multicast group address as the default group address in the join message. A (*, 239.1.1.1) state entry is created on each device along the path on the public network.
At the same time, PE 2 and PE 3 separately initiate a similar join process. Finally, a receiver-side RPT is established in the MVPN, with the public network RP as the root and PE 1, PE 2, and PE 3 as leaves.
2. PE 1 sends a multicast packet with the default group address as the multicast group address. The DF of each network segment on the public network forwards the multicast packet to the RP. Each device on the path creates a (*, 239.1.1.1) state entry.
At the same time, PE 2 and PE 3 separately initiate a similar process. Finally, three source-side RPTs are established in the MVPN, with PE 1, PE 2, and PE 3 as the roots and as the public network RP as the leave.
3. The receiver-side RPT and the three source-side RPTs constitute the default MDT in the BIDIR-PIM network.
Default MDT establishment in a PIM-SSM network
Figure 4 Default MDT establishment in a PIM-SSM network
As shown in Figure 4, PIM-SSM runs on the network, and all the PEs support VPN instance A. The process of establishing a default MDT is as follows:
1. PE 1, PE 2, and PE 3 exchange MDT route information (including BGP interface address and the default group address) through BGP.
2. PE 1 sends a subscribe message to PE 2 and PE 3. Each device on the public network creates an (S, G) entry. An SPT is established in the MVPN with PE 1 as the root and PE 2 and PE 3 as the leaves.
At the same time, PE 2 and PE 3 separately initiate a similar process, and establish an SPT with itself as the root and the other PEs as the leaves.
3. The three independent SPTs constitute the default MDT in the PIM-SSM network.
In PIM-SSM, the term "subscribe message" refers to a join message.
Default MDT characteristics
No matter which PIM mode is running on the public network, the default MDT has the following characteristics:
· All PEs that support the same VPN instance join the default MDT.
· All multicast packets that belong to this VPN are forwarded along the default MDT to every PE on the public network, even if no active downstream receivers exist.
Default MDT-based delivery
After the default MDT is established, the multicast source forwards the VPN multicast data to the receivers in each site along the default MDT. The VPN multicast packets are encapsulated into public network multicast packets on the local PE, and transmitted along the default MDT. Then, they are decapsulated on the remote PE and transmitted in that VPN site.
VPN multicast data packets are forwarded across the public network differently in the following circumstances:
· If PIM-DM or PIM-SSM is running in the VPN, the multicast source forwards multicast data packets to the receivers along the VPN SPT across the public network.
· When PIM-SM is running in the VPN:
¡ Before the RPT-to-SPT switchover, if the multicast source and the VPN RP are in different sites, the VPN multicast data packets travel to the VPN RP along the VPN SPT across the public network. If the VPN RP and the receivers are in different sites, the VPN multicast data packets travel to the receivers along the VPN RPT over the public network.
¡ After the RPT-to-SPT switchover, if the multicast source and the receivers are in different sites, the VPN multicast data packets travel to the receivers along the VPN SPT across the public network.
The following example explains how multicast data packets are delivered based on the default MDT when PIM-DM is running in both the public network and the VPN network.
As shown in Figure 5:
· PIM-DM is running in both the public network and the VPN sites.
· Receiver of the VPN multicast group G (225.1.1.1) in Site 2 is attached to CE 2.
· Source in Site 1 sends multicast data to multicast group (G).
· The default group address used to forward public network multicast data is 239.1.1.1.
Figure 5 Multicast data packet delivery
A VPN multicast data packet is delivered across the public network as follows:
1. Source sends a VPN multicast data packet (192.1.1.1, 225.1.1.1) to CE 1.
2. CE 1 forwards the VPN multicast data packet along an SPT to PE 1, and the VPN instance on PE 1 examines the MVRF.
If the outgoing interface list of the forwarding entry contains an MTI, PE 1 processes the VPN multicast data packet as described in step 3. The VPN instance on PE 1 considers the VPN multicast data packet to have been sent out of the MTI, because step 3 is transparent to it.
3. PE 1 encapsulates the VPN multicast data packet into a public network multicast packet (11.1.1.1, 239.1.1.1) by using the GRE method. The source IP address of the packet is the MVPN source interface 11.1.1.1, and the destination address is the default group address 239.1.1.1. PE 1 then forwards it to the public network.
4. The default MDT forwards the multicast data packet (11.1.1.1, 239.1.1.1) to the public network instance on all the PEs. After receiving this packet, every PE decapsulates it to get the original VPN multicast data packet, and passes it to the corresponding VPN instance. If a PE has a downstream interface for an SPT, it forwards the VPN multicast packet down the SPT. Otherwise, it discards the packet.
5. The VPN instance on PE 2 looks up the MVRF and finally delivers the VPN multicast data to Receiver.
By now, the process of transmitting a VPN multicast data packet across the public network is completed.
MDT switchover
Switching from default MDT to data MDT
When a multicast packet of a VPN is transmitted through the default MDT on the public network, the packet is forwarded to all PEs that support that VPN instance. This occurs whether or not any active receivers exist in the attached sites. When the rate of the multicast traffic of that VPN is high, multicast data might get flooded on the public network. This increases the bandwidth use and brings extra burden on the PEs.
To optimize multicast transmission of large VPN multicast traffic that enters the public network, the MVPN solution introduces a dedicated data MDT. A data MDT is built between the PEs that connect VPN multicast receivers and multicast sources. When specific network criteria are met, the device switches over from the default MDT to the data MDT to forward VPN multicast traffic to receivers.
The device initiates a switchover of the default MDT to the data MDT as follows:
1. The source-side PE (PE 1, for example) periodically examines the forwarding rate of the VPN multicast traffic. The PE initiates a switchover of the default MDT to the data MDT only when the following criteria are both met:
¡ The VPN multicast data has passed the ACL rule filtering for MDT switchover.
¡ The traffic rate of the VPN multicast stream has exceeded the switchover threshold and stayed higher than the threshold for a certain length of time.
2. PE 1 selects a least-used address from the data group range. Then, it sends an MDT switchover message to all the other PEs down the default MDT. This message contains the VPN multicast source address, the VPN multicast group address, and the data group address.
3. Each PE that receives this message examines whether it interfaces with a VPN that has receivers of that VPN multicast stream.
If so, it joins the data MDT rooted at PE 1. Otherwise, it caches the message and will join the data MDT when it has attached receivers.
4. After sending the MDT switchover message, PE 1 starts the data-delay timer. When the timer expires, PE 1 uses the default group address to encapsulate the VPN multicast data. The multicast data is then forwarded down the data MDT.
5. After the multicast traffic is switched over from the default MDT to the data MDT, PE 1 continues sending MDT switchover messages periodically. Subsequent PEs with attached receivers can then join the data MDT. When a downstream PE no longer has active receivers attached to it, it leaves the data MDT.
For a given VPN instance, the default MDT and the data MDT are both forwarding tunnels in the same MVPN. A default MDT is uniquely identified by a default group address, and a data MDT is uniquely identified by a data group address. Each default group is uniquely associated with a data group range.
Backward switching from data MDT to default MDT
After the VPN multicast traffic is switched over to the data MDT, the multicast traffic conditions might change and no longer meet the switchover criterion. In this case, PE 1, as in the preceding example, initiates a backward MDT switchover process when any of the following criteria are met:
· The traffic rate of the VPN multicast data has dropped below the switchover threshold. In addition, the traffic rate has stayed lower than the threshold for a certain length of time (known as the data hold-down period).
· The associated data group range is changed, and the data group address for encapsulating the VPN multicast data is out of the new address range.
· The ACL rule for controlling the switchover from the default MDT to the data MDT has changed, and the VPN multicast data fails to pass the new ACL rule.
Inter-AS MDT-based MVPN
In an inter-AS VPN networking scenario, VPN sites are located in multiple ASs. These sites must be interconnected. Inter-AS VPN provides the following solutions:
· VRF-to-VRF connections between ASBRs—This solution is also called inter-AS option A.
· EBGP redistribution of labeled VPN-IPv4 routes between ASBRs—ASBRs advertise VPN-IPv4 routes to each other through MP-EBGP. This solution is also called inter-AS option B.
· Multihop EBGP redistribution of labeled VPN-IPv4 routes between PE devices—PEs advertise VPN-IPv4 routes to each other through MP-EBGP. This solution is also called inter-AS option C.
For more information about the three inter-AS VPN solutions, see MPLS L3VPN configuration in MPLS Configuration Guide.
Based on these solutions, there are three ways to implement inter-AS MDT-based MVPN:
· Inter-AS option A MDT-based MVPN.
· Inter-AS option B MDT-based MVPN.
· Inter-AS option C MDT-based MVPN.
Inter-AS option A MDT-based MVPN
As shown in Figure 6:
· Two VPN instances are in AS 1 and AS 2.
· PE 3 and PE 4 are ASBRs for AS 1 and AS 2, respectively.
· PE 3 and PE 4 are interconnected through their respective VPN instance and treat each other as a CE.
Figure 6 Inter-AS option A MDT-based MVPN
To implement inter-AS option A MDT-based MVPN, a separate MVPN must be created in each AS. Multicast data is transmitted between the VPNs in different ASs through the MVPNs.
Multicast packets of VPN instance 1 are delivered as follows:
1. CE 1 forwards the multicast packet of VPN instance 1 to PE 1.
2. PE 1 encapsulates the multicast packet into a public network packet and forwards it to PE 3 through the MTI interface in MVPN 1.
3. PE 3 considers PE 4 as a CE of VPN instance 1, so PE 3 forwards the multicast packet to PE 4.
4. PE 4 considers PE 3 as a CE of VPN instance 2, so it forwards the multicast packet to PE 2 through the MTI interface in MVPN 2 on the public network.
5. PE 2 forwards the multicast packet to CE 2.
Multicast packets of VPN 2 are delivered in the same way.
Because only VPN multicast data is forwarded between ASBRs, different PIM modes can run within different ASs. However, the same PIM mode must run on all interfaces that belong to the same VPN (including interfaces with VPN bindings on ASBRs).
Inter-AS option B MDT-based MVPN
In inter-AS option B MDT-based MVPN, RPF vector and BGP connector are introduced:
· RPF vector—Attribute encapsulated in a PIM join message. It is the next hop of BGP MDT route from the local PE to the remote PE. Typically, it is the ASBR in the local AS.
When a device receives the join message with the RPF vector, it first checks whether the RPF vector is its own IP address. If so, the device removes the RPF vector, and sends the message to its upstream neighbor according to the route to the remote PE. Otherwise, it keeps the RPF vector, looks up the route to the RPF vector, and sends the message to the next hop of the route. In this way, the PIM message can be forwarded across the ASs and an MDT is established.
· BGP connector—Attribute shared by BGP peers when they exchange VPNv4 routes. It is the IP address of the remote PE.
The local PE fills the upstream neighbor address field with the BGP connector in a join message. This ensures that the message can pass the RPF check on the remote PE after it travels along the MT.
As shown in Figure 7:
· A VPN network involves AS 1 and AS 2.
· PE 3 and PE 4 are the ASBRs for AS 1 and AS 2, respectively.
· PE 3 and PE 4 are interconnected through MP-EBGP and treat each other as a P device.
· PE 3 and PE 4 advertise VPN-IPv4 routes to each other through MP-EBGP.
· An MT is established between PE 1 and PE 2 for delivering VPN multicast traffic across the ASs.
Figure 7 Inter-AS option B MDT-based MVPN
To implement inter-AS option B MDT-based MVPN, only one MVPN needs to be established for the two ASs. VPN multicast data is transmitted between different ASs on the public network within this MVPN.
The establishment of the MVPN on the public network is as follows:
1. PE 1 originates a PIM join message to join the SPT rooted at PE 2. In the join message, the upstream neighbor address is the IP address of PE 2 (the BGP connector). The RPF vector attribute is the IP address of PE 3. PE 1 encapsulates the join message as a public network packet and forwards it through the MTI.
2. P 1 determines that the RPF vector is not an IP address of its own. It looks up the routing table for a route to PE 3, and forwards the packet to PE 3.
3. PE 3 removes the RPF vector because the RPF vector is its own IP address. It fails to find a BGP MDT route to PE 2, so it encapsulates a new RPF vector (IP address of PE 4) in the packet and forwards it to PE 4.
4. PE 4 removes the RPF vector because the RPF vector is its own IP address. It has a local route to PE 2, so it forwards the packet to P 2, which is the next hop of the route to PE 2.
5. P 2 sends the packet to PE 2.
6. PE 2 receives the packet on the MTI and decapsulates the packet. The receiving interface is the RPF interface of the RPF route back to PE 1 for the join message, and the join message passes the RPF check. The SPT from PE 1 to PE 2 is established.
When PE 1 joins the SPT rooted at PE 1, PE 2 also initiates a join process to the SPT rooted at PE 1. A MDT is established when the two SPTs are finished.
Inter-AS option C MDT-based MVPN
As shown in Figure 8:
· A VPN instance spans AS 1 and AS 2.
· PE 3 and PE 4 are the ASBRs for AS 1 and AS 2, respectively.
· PE 3 and PE 4 are interconnected through MP-EBGP and treat each other as a P device.
· PEs in different ASs establish a multihop MP-EBGP session to advertise VPN-IPv4 routes to each other.
Figure 8 Inter-AS option C MDT-based MVPN
To implement inter-AS option C MDT-based MVPN, only one MVPN needs to be created for the two ASs. Multicast data is transmitted between the two ASs through the MVPN.
Multicast packets are delivered as follows:
1. CE 1 forwards the VPN instance multicast packet to PE 1.
2. PE 1 encapsulates the multicast packet into a public network multicast packet and forwards it to PE 3 through the MTI interface on the public network.
3. PE 3 and PE 4 are interconnected through MP-EBGP, so PE 3 forwards the public network multicast packet to PE 4 along the VPN IPv4 route.
4. The public network multicast packet arrives at the MTI interface of PE 2 in AS 2. PE 2 decapsulates the public network multicast packet and forwards the VPN multicast packet to CE 2.
Protocols and standards
· RFC 6037, Cisco Systems' Solution for Multicast in BGP/MPLS IP VPNs
· RFC 6513, Multicast in MPLS/BGP IP VPNs
· RFC 6514, BGP Encodings and Procedures for Multicast in MPLS/BGP IP VPNs
MDT-based MVPN tasks at a glance
To configure MDT-based MVPN, perform the following tasks:
a. Enabling IP multicast routing for a VPN instance
b. Creating an MDT-based MVPN instance
c. Creating an MVPN address family
d. Specifying the default group
e. Specifying the MVPN source interface
f. (Optional.) Configuring MDT switchover parameters
g. (Optional.) Configuring the RPF vector feature
h. (Optional.) Enabling data group reuse logging
If PIM-SSM is running on the public network, you must configure BGP MDT.
a. Configuring BGP MDT peers or peer groups
b. (Optional.) Limiting BGP MDT routes received from a peer or peer group
c. (Optional.) Configuring a BGP MDT route reflector
d. (Optional.) Configuring BGP MDT optimal route selection delay
e. (Optional.) Preferring routes learned from the specified peer or peer group during optimal route selection
Configuring MDT-based MVPN
Prerequisites for configuring MDT-based MVPN
Before you configure MDT-based MVPN, complete the following tasks:
1. Configure a unicast routing protocol on the public network.
2. Configure MPLS L3VPN on the public network.
3. Configure PIM-DM, PIM-SM or PIM-SSM on the public network.
Enabling IP multicast routing for a VPN instance
1. Enter system view.
system-view
2. Create a VPN instance and enter its view.
ip vpn-instance vpn-instance-name
For more information about this command, see MPLS Command Reference.
3. Configure an RD for the VPN instance.
route-distinguisher route-distinguisher
For more information about this command, see MPLS Command Reference.
4. Return to system view.
quit
5. Enter interface view.
interface interface-type interface-number
6. Associate the interface with the VPN instance.
ip binding vpn-instance vpn-instance-name
By default, an interface is associated with no VPN instance and belongs to the public network.
For more information about this command, see MPLS Command Reference.
7. Return to system view.
quit
8. Enable IP multicast routing for the VPN instance and enter MRIB view of the VPN instance.
multicast routing vpn-instance vpn-instance-name
By default, IPv4 multicast routing is disabled for a VPN instance.
For more information about this command, see IP Multicast Command Reference.
Creating an MDT-based MVPN instance
About this task
To provide multicast services for a VPN instance, you must create an MDT-based MVPN instance on PEs that belong to the VPN instance. After the MVPN instance is created, the system automatically creates MTIs and binds them with the VPN instance.
You can create one or more MDT-based MVPN instances on a PE.
Procedure
1. Enter system view.
system-view
2. Create an MDT-based MVPN instance and enter MVPN view.
multicast-vpn vpn-instance vpn-instance-name mode mdt
Creating an MVPN address family
About this task
You must create an MVPN IPv4 address family for a VPN instance before you can perform other MVPN VPN configuration tasks for the VPN instance. For a VPN instance, configurations in MVPN IPv4 address family view applies to IPv4 multicast packets of the instance.
Procedure
1. Enter system view.
system-view
2. Enter MVPN view of a VPN instance.
multicast-vpn vpn-instance vpn-instance-name mode mdt
3. Create an MVPN address family and enter MVPN address family view.
address-family ipv4
Specifying the default group
Restrictions and guidelines
You must specify the same default group on all PEs that belong to the same MVPN.
The default group for an MVPN must be different from the default group and the data group used by any other MVPN.
For an MVPN that transmits both IPv4 and IPv6 multicast packets, you must specify the same default group in MVPN IPv4 address family view and IPv6 address family view.
Procedure
1. Enter system view.
system-view
2. Enter MVPN view.
multicast-vpn vpn-instance vpn-instance-name mode mdt
3. Enter MVPN address family view.
address-family ipv4
4. Specify the default group.
default-group group-address
Specifying the MVPN source interface
About this task
An MTI of a VPN instance uses the IP address of the MVPN source interface as the source address to encapsulate multicast packets for the VPN instance.
Restrictions and guidelines
For the PE to obtain correct routing information, you must specify the interface used for establishing BGP peer relationship as the MVPN source interface.
The MTI takes effect only after the default group and MVPN source interface are specified and the MTI obtains the public IP address of the MVPN source interface.
The MVPN source interface can be configured to borrow the IP address of a loopback interface. As a best practice, specify the mask length for the loopback interface address as 32.
To use IP unnumbered, you must also configure OSPF, IS-IS, and LLDP. For information about configuring OSPF, IS-IS, and LLDP, see "Configuring PIM."
Procedure
1. Enter system view.
system-view
2. Enter MVPN view.
multicast-vpn vpn-instance vpn-instance-name mode mdt
3. Enter MVPN address family view.
address-family ipv4
4. Specify the MVPN source interface.
source interface-type interface-number
By default, no MVPN source interface is specified.
Configuring MDT switchover parameters
About this task
In some cases, the traffic rate of the private network multicast data might fluctuate around the MDT switchover threshold. To avoid frequent switching of multicast traffic between the default MDT and the data MDT, you can specify a data-delay period and a data hold-down period.
· MDT switchover does not take place immediately after the multicast traffic rate exceeds the switchover threshold. It takes place after a data-delay period, during which the traffic rate must stay higher than the switchover threshold.
· Likewise, a backward switchover does not take place immediately after the multicast traffic rate drops below the MDT switchover threshold. It takes place after a data hold-down period, during which the traffic rate must stay lower than the switchover threshold.
Restrictions and guidelines
On a PE, the data group range for an MVPN cannot include the default group or data groups of any other MVPN.
All VPN instances share the data group resources. As a best practice to avoid data group resource exhaustion, specify a reasonable data group range for a VPN instance.
If the public network runs PIM-SSM, the data group range for an MVPN on a PE can overlap with data group ranges for other MDs on other PEs.
Procedure
1. Enter system view.
system-view
2. Enter MVPN view.
multicast-vpn vpn-instance vpn-instance-name mode mdt
3. Enter MVPN address family view.
address-family ipv4
4. Configure the data group range and the switchover criteria.
data-group group-address { mask-length | mask } [ threshold threshold-value | acl acl-number ] *
By default, no data group range exists, and the device never initiates a switchover of the default MDT to a data MDT.
5. Set the data-delay period.
data-delay delay
By default, the data-delay period is 3 seconds.
6. Set the data hold-down period.
data-holddown delay
By default, the data hold-down period is 60 seconds.
Configuring the RPF vector feature
About this task
This feature enables the device to insert the RPF vector (IP address of the ASBR in the local AS) in PIM join messages for other devices to perform RPF check.
Restrictions and guidelines
Perform this task on PEs that have attached receivers.
For the device to work with other manufacturers' products on the RPF vector, you must enable RPF vector compatibility for all H3C P devices and H3C PE devices on the public network.
Procedure
1. Enter system view.
system-view
2. Enter MRIB view of a VPN instance.
multicast routing vpn-instance vpn-instance-name
3. Enable the RPF vector feature.
rpf proxy vector
By default, the RPF vector feature is disabled.
4. Return to system view.
quit
5. Enable RPF vector compatibility.
multicast rpf-proxy-vector compatible
By default, RPF vector compatibility is disabled.
Enabling data group reuse logging
About this task
For a given VPN, the number of VPN multicast streams to be switched over to data MDTs might exceed the number of addresses in the data group range. In this case, the VPN instance on the source-side PE can reuse the addresses in the address range. With data group reuse logging enabled, the address reuse information will be logged. Perform this task on PEs.
The group address reuse logging information has a severity level informational. For more information about the logging information, see Network Management and Monitoring Configuration Guide.
Procedure
1. Enter system view.
system-view
2. Enter MVPN view.
multicast-vpn vpn-instance vpn-instance-name mode mdt
3. Enter MVPN address family view.
address-family ipv4
4. Enable data group reuse logging.
log data-group-reuse
By default, data group reuse logging is disabled.
Configuring BGP MDT
Configuring BGP MDT peers or peer groups
About this task
Perform this task so that the PE can exchange MDT information with the BGP peer or peer group. MDT information includes the IP address of the PE and default group to which the PE belongs. On a public network running PIM-SSM, the multicast VPN establishes a default MDT rooted at the PE (multicast source) based on the MDT information.
Prerequisites
Before you configure a BGP MDT peer or peer group, you must create a BGP peer or peer group in BGP instance view. For more information about creating a BGP peer or peer group, see BGP configuration in Layer 3—IP Routing Configuration Guide.
Procedure
1. Enter system view.
system-view
2. Enter BGP instance view.
bgp as-number [ instance instance-name ]
3. Create a BGP IPv4 MDT address family and enter its view.
address-family ipv4 mdt
By default, no BGP IPv4 address family exists.
4. Enable the device to exchange MDT routing information with the BGP peer or the peer group.
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } enable
By default, the device cannot exchange BGP MDT routing information with a BGP peer or peer group.
For more information about this command, see BGP commands in Layer 3—IP Routing Command Reference.
Limiting BGP MDT routes received from a peer or peer group
About this task
This feature can prevent attacks that send a large number of BGP MDT routes to the router.
If the number of routes received from a peer or peer group exceeds the upper limit, the router takes one of the following actions based on your configuration:
· Tears down the BGP session to the peer or peer group and does not attempt to re-establish the session.
· Continues to receive routes from the peer or peer group and generates a log message.
· Retains the session to the peer or peer group, but it discards excess routes and generates a log message.
· Tears down the BGP session to the peer or peer group and, after a specific period of time, re-establishes a BGP session to the peer or peer group.
You can specify a percentage threshold for the router to generate a log message. When the ratio of the number of received routes to the maximum number reaches the percentage value, the router generates a log message.
Procedure
1. Enter system view.
system-view
2. Enter BGP instance view.
bgp as-number [ instance instance-name ]
3. Enter BGP IPv4 MDT address family view.
address-family ipv4 mdt
4. Specify the maximum number of BGP MDT routes that a router can receive from a peer or peer group.
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } route-limit prefix-number [ { alert-only | discard | reconnect reconnect-time } | percentage-value ] *
By default, the number of BGP MDT routes that a router can receive from a peer or peer group is not limited.
For more information about this command, see BGP commands in Layer 3—IP Routing Command Reference.
Configuring a BGP MDT route reflector
About this task
· Configuring a BGP MDT route reflector—BGP MDT peers in the same AS must be fully meshed to maintain connectivity. However, when multiple BGP MDT peers exist in an AS, connection establishment among them might result in increased costs. To reduce connections between BGP MDT peers, you can configure one of them as a route reflector and specify other devices as clients.
· Disabling routing reflection between clients—When clients establish BGP MDT connections with the route reflector, the route reflector forwards (or reflects) BGP MDT routing information between clients. The clients are not required to be fully meshed. To save bandwidth if the clients have been fully meshed, you can disable the routing reflection between clients by using the undo reflect between-clients command.
· Configuring the cluster ID of the route reflector—The route reflector and its clients form a cluster. Typically, a cluster has only one route reflector whose router ID identifies the cluster. However, you can configure several route reflectors in a cluster to improve network reliability. To avoid routing loops, make sure the route reflectors in a cluster have the same cluster ID.
Procedure
1. Enter system view.
system-view
2. Enter BGP instance view.
bgp as-number [ instance instance-name ]
3. Enter BGP IPv4 MDT address family view.
address-family ipv4 mdt
4. Configure the device as a route reflector and specify its peers or peer groups as clients.
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } reflect-client
By default, neither route reflectors nor clients exist.
5. (Optional.) Disable route reflection between clients.
undo reflect between-clients
By default, route reflection between clients is disabled.
For more information about this command, see BGP commands in Layer 3—IP Routing Command Reference.
6. (Optional.) Configure the cluster ID of the route reflector.
reflector cluster-id { cluster-id | ip-address }
By default, a route reflector uses its router ID as the cluster ID.
For more information about this command, see BGP commands in Layer 3—IP Routing Command Reference.
Configuring BGP MDT optimal route selection delay
1. Enter system view.
system-view
2. Enter BGP instance view.
bgp as-number [ instance instance-name ]
3. Enter BGP IPv4 MDT address family view.
address-family ipv4 mdt
4. Set the optimal route selection delay timer.
route-select delay delay-value
By default, the optimal route selection delay timer is 0 seconds, which means optimal route selection is not delayed.
For more information about this command, see BGP commands in Layer 3—IP Routing Command Reference.
Preferring routes learned from the specified peer or peer group during optimal route selection
About this task
Routes learned from the specified peer or peer group take precedence over routes learned from other peers or peer groups if these routes have the same prefix. BGP uses this rule to continue route selection if it fails to select an optimal route by using the peer type selection rule. If BGP still fails route selection, it uses the IGP metric selection rule to select an optimal route.
Procedure
1. Enter system view.
system-view
2. Enter BGP instance view.
bgp as-number [ instance instance-name ]
3. Enter BGP IPv4 MDT address family view.
address-family ipv4 mdt
4. Prefer routes learned from the specified peer or peer group during optimal route selection.
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } high-priority [ preferred ]
By default, BGP does not prefer routes learned from any peer or peer groups during optimal route selection.
For more information about this command, see BGP commands in Layer 3—IP Routing Command Reference.
Display and maintenance commands for MDT-based MVPN
Execute display commands in any view and reset commands in user view.
Task |
Command |
Display BGP MDT peer group information. |
display bgp [ instance instance-name ] group ipv4 mdt [ group-name group-name ] |
Display information about BGP MDT peers or peer groups. |
display bgp [ instance instance-name ] peer ipv4 mdt [ ipv4-address mask-length | ipv6-address prefix-length | { ipv4-address | ipv6-address| group-name group-name } log-info | [ ipv4-address | ipv6-address ] verbose ] |
Display BGP MDT routing information. |
display bgp [ instance instance-name ] routing-table ipv4 mdt [ [ route-distinguisher route-distinguisher ] [ ip-address [ advertise-info ] | as-path-acl { as-path-acl-number | as-path-acl-name } | as-path-regular-expression regular-expression ] display bgp [ instance instance-name ] routing-table ipv4 mdt [ route-distinguisher route-distinguisher ] time-range min-time max-time |
Display information about BGP update groups for the BGP IPv4 MDT address family. |
display bgp [ instance instance-name ] update-group ipv4 mdt [ipv4-address | ipv6-address ] |
Display information about data groups for IPv4 multicast transmission that are received in a VPN instance. |
display multicast-vpn vpn-instance vpn-instance-name data-group receive [ brief | [ active | group group-address | sender source-address | vpn-source-address [ mask { mask-length | mask } ] | vpn-group-address [ mask { mask-length | mask } ] ] * ] |
Display information about data groups for IPv6 multicast transmission that are received in a VPN instance. |
display multicast-vpn vpn-instance vpn-instance-name ipv6 data-group receive [ brief | [ active | group group-address | sender source-address | vpn-source-address [ mask-length ] | vpn-group-address [ mask-length ] ] * ] |
Display information about data groups for IPv4 multicast transmission that are sent in a VPN instance. |
display multicast-vpn vpn-instance vpn-instance-name data-group send [ group group-address | reuse interval | vpn-source-address [ mask { mask-length | mask } ] | vpn-group-address [ mask { mask-length | mask } ] ] * |
Display information about data groups for IPv6 multicast transmission that are sent in a VPN instance. |
display multicast-vpn vpn-instance vpn-instance-name ipv6 data-group send [ group group-address | reuse interval | vpn-source-address [ mask-length ] | vpn-group-address [ mask-length ] ] * |
Display information about default groups for IPv4 multicast transmission. |
display multicast-vpn [ vpn-instance vpn-instance-name ] default-group { local | remote } |
Display information about default groups for IPv6 multicast transmission. |
display multicast-vpn [ vpn-instance vpn-instance-name ] ipv6 default-group { local | remote } |
Reset BGP sessions for BGP IPv4 MDT address family. |
reset bgp [ instance instance-name ] { as-number | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] | all | external | group group-name | internal } ipv4 mdt |
MDT-based MVPN configuration examples
Example: Configuring intra-AS MDT-based MVPN
Network configuration
As shown in Figure 9, configure intra-AS MDT-based MVPN to meet the following requirements:
Item |
Network configuration |
Multicast sources and receivers |
· In VPN instance a, S 1 is a multicast source, and R 1 is a receiver. · For VPN instance a, the default group is 239.1.1.1, and the data group range is 225.2.2.0 to 225.2.2.15. |
VPN instances to which PE interfaces belong |
· PE 1: Ten-GigabitEthernet 0/0/16 belongs to VPN instance a. Ten-GigabitEthernet 0/0/15 and Loopback 1 belong to the public network. · PE 2: Ten-GigabitEthernet 0/0/16 belongs to VPN instance a. Ten-GigabitEthernet 0/0/15 and Loopback 1 belong to the public network. |
Unicast routing protocols and MPLS |
· Configure OSPF on the public network, and configure RIP between the PEs and the CEs. · Establish BGP peer connections between PE 1 and PE 2 on their respective Loopback 1. · Configure MPLS on the public network. |
IP multicast routing |
· Enable IP multicast routing on the P router. · Enable IP multicast routing on the public network instance on PE 1 and PE 2. · Enable IP multicast routing for VPN instance a on PE 1 and PE 2 · Enable IP multicast routing on CE 1 and CE 2. |
IGMP |
Enable IGMPv2 on Ten-GigabitEthernet 0/0/16 of CE 2. |
PIM |
· Enable PIM-SM on all interfaces of the P router. · Enable PIM-SM on all public and private network interfaces on PE 1 and PE 2. · Enable PIM-SM on all interfaces that do not have attached receiver hosts on CE 1 and CE 2. · Configure Loopback 1 of P as a public network C-BSR and C-RP to provide services for all multicast groups. · Configure Loopback 2 of PE 1 as a C-BSR and a C-RP for VPN instance a to provide services for all multicast groups. |
Table 1 Interface and IP address assignment
Device |
Interface |
IP address |
Device |
Interface |
IP address |
S 1 |
— |
10.110.7.2/24 |
R 1 |
— |
10.110.9.2/24 |
P |
XGE0/0/15 |
192.168.6.2/24 |
CE 1 |
XGE0/0/15 |
10.110.7.1/24 |
P |
XGE0/0/16 |
192.168.7.2/24 |
CE 1 |
XGE0/0/16 |
10.110.2.2/24 |
P |
Loop1 |
2.2.2.2/32 |
CE 2 |
XGE0/0/15 |
10.110.9.1/24 |
PE 1 |
XGE0/0/15 |
192.168.6.1/24 |
CE 2 |
XGE0/0/16 |
10.110.4.2/24 |
PE 1 |
XGE0/0/16 |
10.110.2.1/24 |
PE 2 |
XGE0/0/15 |
192.168.7.1/24 |
PE 1 |
Loop1 |
1.1.1.1/32 |
PE 2 |
XGE0/0/16 |
10.110.4.1/24 |
PE 1 |
Loop2 |
33.33.33.33/32 |
PE 2 |
Loop1 |
1.1.1.2/32 |
Procedure
1. Configure PE 1:
# Configure a global router ID, and enable IP multicast routing on the public network.
<PE1> system-view
[PE1] router id 1.1.1.1
[PE1] multicast routing
[PE1-mrib] quit
# Configure an LSR ID, and enable LDP globally.
[PE1] mpls lsr-id 1.1.1.1
[PE1] mpls ldp
[PE1-ldp] quit
# Create a VPN instance named a, and configure an RD and route targets for the VPN instance.
[PE1] ip vpn-instance a
[PE1-vpn-instance-a] route-distinguisher 100:1
[PE1-vpn-instance-a] vpn-target 100:1 export-extcommunity
[PE1-vpn-instance-a] vpn-target 100:1 import-extcommunity
[PE1-vpn-instance-a] quit
# Enable IP multicast routing in VPN instance a.
[PE1] multicast routing vpn-instance a
[PE1-mrib-a] quit
# Assign an IP address to Loopback 1, and enable PIM-SM on the interface.
[PE1] interface loopback 1
[PE1-LoopBack1] ip address 1.1.1.1 32
[PE1-LoopBack1] pim sm
[PE1-LoopBack1] quit
# Create an MDT-based MVPN for VPN instance a.
[PE1] multicast-vpn vpn-instance a mode mdt
# Create an MVPN IPv4 address family for VPN instance a.
[PE1-mvpn-vpn-instance-a] address-family ipv4
# Specify the default group, the MVPN source interface, and the data group range for VPN instance a.
[PE1-mvpn-vpn-instance-a-ipv4] default-group 239.1.1.1
[PE1-mvpn-vpn-instance-a-ipv4] source loopback 1
[PE1-mvpn-vpn-instance-a-ipv4] data-group 225.2.2.0 28
[PE1-mvpn-vpn-instance-a-ipv4] quit
[PE1-mvpn-vpn-instance-a] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15.
[PE1] interface ten-gigabitethernet 0/0/15
[PE1-Ten-GigabitEthernet0/0/15] ip address 192.168.6.1 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/15.
[PE1-Ten-GigabitEthernet0/0/15] pim sm
[PE1-Ten-GigabitEthernet0/0/15] mpls enable
[PE1-Ten-GigabitEthernet0/0/15] mpls ldp enable
[PE1-Ten-GigabitEthernet0/0/15] quit
# Associate Ten-GigabitEthernet 0/0/16 with VPN instance a.
[PE1] interface ten-gigabitethernet 0/0/16
[PE1-Ten-GigabitEthernet0/0/16] ip binding vpn-instance a
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[PE1-Ten-GigabitEthernet0/0/16] ip address 10.110.2.1 24
[PE1-Ten-GigabitEthernet0/0/16] pim sm
[PE1-Ten-GigabitEthernet0/0/16] quit
# Associate Loopback 2 with VPN instance a.
[PE1] interface loopback 2
[PE1-LoopBack2] ip binding vpn-instance a
# Assign an IP address to Loopback 2, and enable PIM-SM on the interface.
[PE1-LoopBack2] ip address 33.33.33.33 32
[PE1-LoopBack2] pim sm
[PE1-LoopBack2] quit
# Configure Loopback 2 as a C-BSR and a C-RP.
[PE1] pim vpn-instance a
[PE1-pim-a] c-bsr 33.33.33.33
[PE1-pim-a] c-rp 33.33.33.33
[PE1-pim-a] quit
# Configure BGP.
[PE1] bgp 100
[PE1-bgp-default] group vpn-g internal
[PE1-bgp-default] peer vpn-g connect-interface loopback 1
[PE1-bgp-default] peer 1.1.1.2 group vpn-g
[PE1–bgp-default] ip vpn-instance a
[PE1-bgp-default-a] address-family ipv4
[PE1-bgp-default-ipv4-a] import-route rip 2
[PE1-bgp-default-ipv4-a] import-route direct
[PE1-bgp-default-ipv4-a] quit
[PE1-bgp-default-a] quit
[PE1–bgp-default] address-family vpnv4
[PE1–bgp-default-vpnv4] peer vpn-g enable
[PE1–bgp-default-vpnv4] quit
[PE1-bgp-default] address-family ipv4 mdt
[PE1-bgp-default-mdt] peer vpn-g enable
[PE1-bgp-default-mdt] quit
[PE1–bgp-default] quit
# Configure OSPF.
[PE1] ospf 1
[PE1-ospf-1] area 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] network 1.1.1.1 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] network 192.168.6.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
# Configure RIP.
[PE1] rip 2 vpn-instance a
[PE1-rip-2] network 33.33.33.33 0.0.0.0
[PE1-rip-2] network 10.110.2.0 0.0.0.255
[PE1-rip-2] import-route bgp
[PE1-rip-2] quit
2. Configure PE 2:
# Configure a global router ID, and enable IP multicast routing on the public network.
<PE2> system-view
[PE2] router id 1.1.1.2
[PE2] multicast routing
[PE2-mrib] quit
# Configure an LSR ID, and enable LDP globally.
[PE2] mpls lsr-id 1.1.1.2
[PE2] mpls ldp
[PE2-ldp] quit
# Assign an IP address to Loopback 1, and enable PIM-SM on the interface.
[PE2] interface loopback 1
[PE2-LoopBack1] ip address 1.1.1.2 32
[PE2-LoopBack1] pim sm
[PE2-LoopBack1] quit
# Create an MDT-based MVPN for VPN instance a.
[PE2] multicast-vpn vpn-instance a mode mdt
# Create an MVPN IPv4 address family for VPN instance a.
[PE2-mvpn-vpn-instance-a] address-family ipv4
# Specify the default group, MVPN source interface, and the data group range for VPN instance a.
[PE2-mvpn-vpn-instance-a-ipv4] default-group 239.1.1.1
[PE2-mvpn-vpn-instance-a-ipv4] source loopback 1
[PE2-mvpn-vpn-instance-a-ipv4] data-group 225.2.2.0 28
[PE2-mvpn-vpn-instance-a-ipv4] quit
[PE2-mvpn-vpn-instance-a] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15.
[PE2] interface ten-gigabitethernet 0/0/15
[PE2-Ten-GigabitEthernet0/0/15] ip address 192.168.7.1 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/15.
[PE2-Ten-GigabitEthernet0/0/15] pim sm
[PE2-Ten-GigabitEthernet0/0/15] mpls enable
[PE2-Ten-GigabitEthernet0/0/15] mpls ldp enable
[PE2-Ten-GigabitEthernet0/0/15] quit
# Associate Ten-GigabitEthernet 0/0/16 with VPN instance a.
[PE2] interface ten-gigabitethernet 0/0/16
[PE2-Ten-GigabitEthernet0/0/16] ip binding vpn-instance a
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[PE2-Ten-GigabitEthernet0/0/16] ip address 10.110.4.1 24
[PE2-Ten-GigabitEthernet0/0/16] pim sm
[PE2-Ten-GigabitEthernet0/0/16] quit
# Configure BGP.
[PE2] bgp 100
[PE2-bgp-default] group vpn-g internal
[PE2-bgp-default] peer vpn-g connect-interface loopback 1
[PE2-bgp-default] peer 1.1.1.1 group vpn-g
[PE2–bgp-default] ip vpn-instance a
[PE2-bgp-default-a] address-family ipv4
[PE2-bgp-default-ipv4-a] import-route rip 2
[PE2-bgp-default-ipv4-a] import-route direct
[PE2-bgp-default-ipv4-a] quit
[PE2-bgp-default-a] quit
[PE2–bgp-default] address-family vpnv4
[PE2–bgp-default-vpnv4] peer vpn-g enable
[PE2–bgp-default-vpnv4] quit
[PE2-bgp-default] address-family ipv4 mdt
[PE2-bgp-default-mdt] peer vpn-g enable
[PE2-bgp-default-mdt] quit
[PE2–bgp-default] quit
# Configure OSPF.
[PE2] ospf 1
[PE2-ospf-1] area 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] network 1.1.1.2 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] network 192.168.7.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
# Configure RIP.
[PE2] rip 2 vpn-instance a
[PE2-rip-2] network 10.110.4.0 0.0.0.255
[PE2-rip-2] import-route bgp
[PE2-rip-2] quit
3. Configure P:
# Enable IP multicast routing on the public network.
<P> system-view
[P] multicast routing
[P-mrib] quit
# Configure an LSR ID, and enable LDP globally.
[P] mpls lsr-id 2.2.2.2
[P] mpls ldp
[P-ldp] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15.
[P] interface ten-gigabitethernet 0/0/15
[P-Ten-GigabitEthernet0/0/15] ip address 192.168.6.2 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/15.
[P-Ten-GigabitEthernet0/0/15] pim sm
[P-Ten-GigabitEthernet0/0/15] mpls enable
[P-Ten-GigabitEthernet0/0/15] mpls ldp enable
[P-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16.
[P] interface ten-gigabitethernet 0/0/16
[P-Ten-GigabitEthernet0/0/16] ip address 192.168.7.2 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/16.
[P-Ten-GigabitEthernet0/0/16] pim sm
[P-Ten-GigabitEthernet0/0/16] mpls enable
[P-Ten-GigabitEthernet0/0/16] mpls ldp enable
[P-Ten-GigabitEthernet0/0/16] quit
# Assign an IP address to Loopback 1, and enable PIM-SM on the interface.
[P] interface loopback 1
[P-LoopBack1] ip address 2.2.2.2 32
[P-LoopBack1] pim sm
[P-LoopBack1] quit
# Configure Loopback 1 as a C-BSR and a C-RP.
[P] pim
[P-pim] c-bsr 2.2.2.2
[P-pim] c-rp 2.2.2.2
[P-pim] quit
# Configure OSPF.
[P] ospf 1
[P-ospf-1] area 0.0.0.0
[P-ospf-1-area-0.0.0.0] network 2.2.2.2 0.0.0.0
[P-ospf-1-area-0.0.0.0] network 192.168.6.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 192.168.7.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] quit
[P-ospf-1] quit
4. Configure CE 1:
# Enable IP multicast routing.
<CE1> system-view
[CE1] multicast routing
[CE1-mrib] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15, and enable PIM-SM on the interface.
[CE1] interface ten-gigabitethernet 0/0/15
[CE1-Ten-GigabitEthernet0/0/15] ip address 10.110.7.1 24
[CE1-Ten-GigabitEthernet0/0/15] pim sm
[CE1-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[CE1] interface ten-gigabitethernet 0/0/16
[CE1-Ten-GigabitEthernet0/0/16] ip address 10.110.2.2 24
[CE1-Ten-GigabitEthernet0/0/16] pim sm
[CE1-Ten-GigabitEthernet0/0/16] quit
# Configure RIP.
[CE1] rip 2
[CE1-rip-2] network 10.110.2.0 0.0.0.255
[CE1-rip-2] network 10.110.7.0 0.0.0.255
5. Configure CE 2:
# Enable IP multicast routing.
<CE2> system-view
[CE2] multicast routing
[CE2-mrib] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15, and enable IGMP on the interface.
[CE2] interface ten-gigabitethernet 0/0/15
[CE2-Ten-GigabitEthernet0/0/15] ip address 10.110.9.1 24
[CE2-Ten-GigabitEthernet0/0/15] igmp enable
[CE2-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[CE2] interface ten-gigabitethernet 0/0/16
[CE2-Ten-GigabitEthernet0/0/16] ip address 10.110.4.2 24
[CE2-Ten-GigabitEthernet0/0/16] pim sm
[CE2-Ten-GigabitEthernet0/0/16] quit
# Configure RIP.
[CE2] rip 2
[CE2-rip-2] network 10.110.4.0 0.0.0.255
[CE2-rip-2] quit
Verifying the configuration
# Display information about the local default group for IPv4 multicast transmission in each VPN instance on PE 1.
[PE1] display multicast-vpn default-group local
MVPN local default-group information:
Group address Source address Interface VPN instance
239.1.1.1 1.1.1.1 MTunnel0 a
# Display information about the local default group for IPv4 multicast transmission in each VPN instance on PE 2.
[PE2] display multicast-vpn default-group local
MVPN local default-group information:
Group address Source address Interface VPN instance
239.1.1.1 1.1.1.2 MTunnel0 a
Example: Configuring inter-AS option B MDT-based MVPN
Network configuration
As shown in Figure 10, configure inter-AS option B MDT-based MVPN to meet the following requirements:
Item |
Network configuration |
Multicast sources and receivers |
· In VPN instance a, S 1 is a multicast source, and R 2 is a receiver. · In VPN instance b, S 2 is a multicast source, and R 1 is a receiver. · For VPN instance a, the default group is 232.1.1.1, and the data group range is 232.2.2.0 to 232.2.2.15. They are in the SSM group range. · For VPN instance b, the default group is 232.3.3.3, and the data group range is 232.4.4.0 to 232.4.4.15. They are in the SSM group range. |
VPN instances to which PE interfaces belong |
· PE 1: Ten-GigabitEthernet 0/0/16 belongs to VPN instance a. Ten-GigabitEthernet 0/0/17 belongs to VPN instance b. Ten-GigabitEthernet 0/0/15 and Loopback 1 belong to the public network. · PE 2: Ten-GigabitEthernet 0/0/15, Ten-GigabitEthernet 0/0/16, and Loopback 1 belong to the public network. · PE 3: Ten-GigabitEthernet 0/0/15, Ten-GigabitEthernet 0/0/16, and Loopback 1 belong to the public network. · PE 4: Ten-GigabitEthernet 0/0/16 belongs to VPN instance a. Ten-GigabitEthernet 0/0/17 belongs to VPN instance b. Ten-GigabitEthernet 0/0/15 and Loopback 1 belong to the public network. |
Unicast routing protocols and MPLS |
· Configure OSPF in AS 100 and AS 200, and configure OSPF between the PEs and CEs. · Establish IBGP peer connections between PE 1, PE 2, PE 3, and PE 4 on their respective Loopback 1. · Establish EBGP peer connections between Ten-GigabitEthernet 0/0/16 on PE 2 and PE 3. · Configure BGP MDT peer connections between PE 1, PE 2, PE 3, and PE 4 on their respective Loopback 1 and between PE 2 and PE 3 on their respective Ten-GigabitEthernet 0/0/16. · Configure MPLS in AS 100 and AS 200. |
IP multicast routing |
· Enable IP multicast routing on P 1 and P 2. · Enable IP multicast routing for the public network on PE 1, PE 2, PE 3, and PE 4. · Enable IP multicast routing for VPN instance a on PE 1 and PE 4. · Enable IP multicast routing for VPN instance b on PE 1 and PE 4. · Enable IP multicast routing on CE a1, CE a2, CE b1, and CE b2. |
IGMPv2 |
· Enable IGMPv2 on Ten-GigabitEthernet 0/0/15 of CE a2. · Enable IGMPv2 on Ten-GigabitEthernet 0/0/15 of CE b2. |
PIM |
Enable PIM-SSM on the public network and PIM-SM for VPN instances a and b: · Enable PIM-SM on all interfaces of P 1 and P 2. · Enable PIM-SM on all public network interfaces of PE 2 and PE 3. · Enable PIM-SM on all public and private network interfaces of PE 1 and PE 4. · Enable PIM-SM on all interfaces that do not have attached receiver hosts on CE a1, CE a2, CE b1, and CE b2. · Configure Ten-GigabitEthernet 0/0/16 of CE a1 as a C-BSR and a C-RP for VPN instance a to provide services for all multicast groups. · Configure Ten-GigabitEthernet 0/0/16 of CE b1 as a C-BSR and a C-RP for VPN instance b to provide services for all multicast groups. |
RPF vector |
Enable the RPF vector feature on PE 1 and PE 4. |
Table 2 Interface and IP address assignment
Device |
Interface |
IP address |
Device |
Interface |
IP address |
S 1 |
— |
12.1.1.100/24 |
R 1 |
— |
12.4.1.100/24 |
S 2 |
— |
12.2.1.100/24 |
R 2 |
— |
12.3.1.100/24 |
PE 1 |
XGE0/0/15 |
10.1.1.1/24 |
PE 3 |
XGE0/0/15 |
10.4.1.1/24 |
PE 1 |
XGE0/0/16 |
11.1.1.1/24 |
PE 3 |
XGE0/0/16 |
10.3.1.2/24 |
PE 1 |
XGE0/0/17 |
11.2.1.1/24 |
PE 3 |
Loop1 |
3.3.3.3/32 |
PE 1 |
Loop1 |
1.1.1.1/32 |
PE 4 |
XGE0/0/15 |
10.5.1.2/24 |
PE 2 |
XGE0/0/15 |
10.2.1.2/24 |
PE 4 |
XGE0/0/16 |
11.3.1.1/24 |
PE 2 |
XGE0/0/16 |
10.3.1.1/24 |
PE 4 |
XGE0/0/17 |
11.4.1.1/24 |
PE 2 |
Loop1 |
2.2.2.2/32 |
PE 4 |
Loop1 |
4.4.4.4/24 |
P 1 |
XGE0/0/15 |
10.1.1.2/24 |
P 2 |
XGE0/0/15 |
10.5.1.1/24 |
P 1 |
XGE0/0/16 |
10.2.1.1/24 |
P 2 |
XGE0/0/16 |
10.4.1.2/24 |
P 1 |
Loop1 |
5.5.5.5/32 |
P 2 |
Loop1 |
6.6.6.6/32 |
CE a1 |
XGE0/0/15 |
12.1.1.1/24 |
CE b1 |
XGE0/0/15 |
12.2.1.1/24 |
CE a1 |
XGE0/0/16 |
11.1.1.2/24 |
CE b1 |
XGE0/0/16 |
11.2.1.2/24 |
CE a2 |
XGE0/0/15 |
12.3.1.1/24 |
CE b2 |
XGE0/0/15 |
12.4.1.1/24 |
CE a2 |
XGE0/0/16 |
11.3.1.2/24 |
CE b2 |
XGE0/0/16 |
11.4.1.2/24 |
Procedure
1. Configure PE 1:
# Configure a global router ID, and enable IP multicast routing on the public network.
<PE1> system-view
[PE1] router id 1.1.1.1
[PE1] multicast routing
[PE1-mrib] quit
# Configure an LSR ID, and enable LDP globally.
[PE1] mpls lsr-id 1.1.1.1
[PE1] mpls ldp
[PE1-ldp] quit
# Create a VPN instance named a, and configure the RD and route targets for the VPN instance.
[PE1] ip vpn-instance a
[PE1-vpn-instance-a] route-distinguisher 100:1
[PE1-vpn-instance-a] vpn-target 100:1 export-extcommunity
[PE1-vpn-instance-a] vpn-target 100:1 import-extcommunity
[PE1-vpn-instance-a] quit
# Enable IP multicast routing and RPF vector for VPN instance a.
[PE1] multicast routing vpn-instance a
[PE1-mrib-a] rpf proxy vector
[PE1-mrib-a] quit
# Create an MDT-based MVPN for VPN instance a.
[PE1] multicast-vpn vpn-instance a mode mdt
# Create an MVPN IPv4 address family for VPN instance a.
[PE1-mvpn-vpn-instance-a] address-family ipv4
# Specify the default group, the MVPN source interface, and the data group range for VPN instance a.
[PE1-mvpn-vpn-instance-a-ipv4] default-group 232.1.1.1
[PE1-mvpn-vpn-instance-a-ipv4] source loopback 1
[PE1-mvpn-vpn-instance-a-ipv4] data-group 232.2.2.0 28
[PE1-mvpn-vpn-instance-a-ipv4] quit
[PE1-mvpn-vpn-instance-a] quit
# Create a VPN instance named b, and configure the RD and route targets for the VPN instance.
[PE1] ip vpn-instance b
[PE1-vpn-instance-b] route-distinguisher 200:1
[PE1-vpn-instance-b] vpn-target 200:1 export-extcommunity
[PE1-vpn-instance-b] vpn-target 200:1 import-extcommunity
[PE1-vpn-instance-b] quit
# Enable IP multicast routing and RPF vector for VPN instance b.
[PE1] multicast routing vpn-instance b
[PE1-mrib-b] rpf proxy vector
[PE1-mrib-b] quit
# Assign an IP address to Loopback 1, and enable PIM-SM on the interface.
[PE1] interface loopback 1
[PE1-LoopBack1] ip address 1.1.1.1 32
[PE1-LoopBack1] pim sm
[PE1-LoopBack1] quit
# Create an MDT-based MVPN for VPN instance b.
[PE1] multicast-vpn vpn-instance b mode mdt
# Create an MVPN IPv4 address family for VPN instance b.
[PE1-mvpn-vpn-instance-b] address-family ipv4
# Specify the default group, the MVPN source interface, and the data group range for VPN instance b.
[PE1-mvpn-vpn-instance-b-ipv4] default-group 232.3.3.3
[PE1-mvpn-vpn-instance-b-ipv4] source loopback 1
[PE1-mvpn-vpn-instance-b-ipv4] data-group 232.4.4.0 28
[PE1-mvpn-vpn-instance-b-ipv4] quit
[PE1-mvpn-vpn-instance-b] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15.
[PE1] interface ten-gigabitethernet 0/0/15
[PE1-Ten-GigabitEthernet0/0/15] ip address 10.1.1.1 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/15.
[PE1-Ten-GigabitEthernet0/0/15] pim sm
[PE1-Ten-GigabitEthernet0/0/15] mpls enable
[PE1-Ten-GigabitEthernet0/0/15] mpls ldp enable
[PE1-Ten-GigabitEthernet0/0/15] quit
# Associate Ten-GigabitEthernet 0/0/16 with VPN instance a.
[PE1] interface ten-gigabitethernet 0/0/16
[PE1-Ten-GigabitEthernet0/0/16] ip binding vpn-instance a
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[PE1-Ten-GigabitEthernet0/0/16] ip address 11.1.1.1 24
[PE1-Ten-GigabitEthernet0/0/16] pim sm
[PE1-Ten-GigabitEthernet0/0/16] quit
# Associate Ten-GigabitEthernet 0/0/17 with VPN instance b.
[PE1] interface ten-gigabitethernet 0/0/17
[PE1-Ten-GigabitEthernet0/0/17] ip binding vpn-instance b
# Assign an IP address to Ten-GigabitEthernet 0/0/17, and enable PIM-SM on the interface.
[PE1-Ten-GigabitEthernet0/0/17] ip address 11.2.1.1 24
[PE1-Ten-GigabitEthernet0/0/17] pim sm
[PE1-Ten-GigabitEthernet0/0/17] quit
# Configure BGP.
[PE1] bgp 100
[PE1-bgp-default] peer 2.2.2.2 as-number 100
[PE1-bgp-default] peer 2.2.2.2 connect-interface loopback 1
[PE1–bgp-default] ip vpn-instance a
[PE1-bgp-default-a] address-family ipv4
[PE1-bgp-default-ipv4-a] import-route ospf 2
[PE1-bgp-default-ipv4-a] import-route direct
[PE1-bgp-default-ipv4-a] quit
[PE1-bgp-default-a] quit
[PE1–bgp-default] ip vpn-instance b
[PE1-bgp-default-b] address-family ipv4
[PE1-bgp-default-ipv4-b] import-route ospf 3
[PE1-bgp-default-ipv4-b] import-route direct
[PE1-bgp-default-ipv4-b] quit
[PE1-bgp-default-b] quit
[PE1–bgp-default] address-family vpnv4
[PE1–bgp-default-vpnv4] peer 2.2.2.2 enable
[PE1–bgp-default-vpnv4] quit
[PE1-bgp-default] address-family ipv4 mdt
[PE1-bgp-default-mdt] peer 2.2.2.2 enable
[PE1-bgp-default-mdt] quit
[PE1–bgp-default] quit
# Configure OSPF.
[PE1] ospf 1
[PE1-ospf-1] area 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] network 1.1.1.1 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
[PE1] ospf 2 vpn-instance a
[PE1-ospf-2] import-route bgp
[PE1-ospf-2] area 0.0.0.0
[PE1-ospf-2-area-0.0.0.0] network 11.1.1.0 0.0.0.255
[PE1-ospf-2-area-0.0.0.0] quit
[PE1-ospf-2] quit
[PE1] ospf 3 vpn-instance b
[PE1-ospf-3] import-route bgp
[PE1-ospf-3] area 0.0.0.0
[PE1-ospf-3-area-0.0.0.0] network 11.2.1.0 0.0.0.255
[PE1-ospf-3-area-0.0.0.0] quit
[PE1-ospf-3] quit
2. Configure PE 2:
# Configure a global router ID, and enable IP multicast routing on the public network.
<PE2> system-view
[PE2] router id 2.2.2.2
[PE2] multicast routing
[PE2-mrib] quit
# Configure an LSR ID, and enable LDP globally.
[PE2] mpls lsr-id 2.2.2.2
[PE2] mpls ldp
[PE2-ldp] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15.
[PE2] interface ten-gigabitethernet 0/0/15
[PE2-Ten-GigabitEthernet0/0/15] ip address 10.2.1.2 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/15.
[PE2-Ten-GigabitEthernet0/0/15] pim sm
[PE2-Ten-GigabitEthernet0/0/15] mpls enable
[PE2-Ten-GigabitEthernet0/0/15] mpls ldp enable
[PE2-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16.
[PE2] interface ten-gigabitethernet 0/0/16
[PE2-Ten-GigabitEthernet0/0/16] ip address 10.3.1.1 24
# Enable PIM-SM and MPLS on Ten-GigabitEthernet 0/0/16.
[PE2-Ten-GigabitEthernet0/0/16] pim sm
[PE2-Ten-GigabitEthernet0/0/16] mpls enable
[PE2-Ten-GigabitEthernet0/0/16] quit
# Assign an IP address to Loopback 1, and enable PIM-SM on the interface.
[PE2] interface loopback 1
[PE2-LoopBack1] ip address 2.2.2.2 32
[PE2-LoopBack1] pim sm
[PE2-LoopBack1] quit
# Configure BGP.
[PE2] bgp 100
[PE2-bgp-default] peer 1.1.1.1 as-number 100
[PE2-bgp-default] peer 1.1.1.1 connect-interface loopback 1
[PE2-bgp-default] peer 10.3.1.2 as-number 200
[PE2-bgp-default] address-family vpnv4
[PE2-bgp-default-vpnv4] undo policy vpn-target
[PE2-bgp-default-vpnv4] peer 1.1.1.1 enable
[PE2-bgp-default-vpnv4] peer 10.3.1.2 enable
[PE2-bgp-default-vpnv4] quit
[PE2-bgp-default] address-family ipv4 mdt
[PE2-bgp-default-mdt] peer 1.1.1.1 enable
[PE2-bgp-default-mdt] peer 10.3.1.2 enable
[PE2-bgp-default-mdt] quit
[PE2–bgp-default] quit
# Configure OSPF.
[PE2] ospf 1
[PE2-ospf-1] area 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] network 2.2.2.2 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] network 10.2.1.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
3. Configure PE 3:
# Configure a global router ID, and enable IP multicast routing on the public network.
<PE3> system-view
[PE3] router id 3.3.3.3
[PE3] multicast routing
[PE3-mrib] quit
# Configure an LSR ID, and enable LDP globally.
[PE3] mpls lsr-id 3.3.3.3
[PE3] mpls ldp
[PE3-ldp] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15.
[PE3] interface ten-gigabitethernet 0/0/15
[PE3-Ten-GigabitEthernet0/0/15] ip address 10.4.1.1 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/15.
[PE3-Ten-GigabitEthernet0/0/15] pim sm
[PE3-Ten-GigabitEthernet0/0/15] mpls enable
[PE3-Ten-GigabitEthernet0/0/15] mpls ldp enable
[PE3-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16.
[PE3] interface ten-gigabitethernet 0/0/16
[PE3-Ten-GigabitEthernet0/0/16] ip address 10.3.1.2 24
# Enable PIM-SM and MPLS on Ten-GigabitEthernet 0/0/16.
[PE3-Ten-GigabitEthernet0/0/16] pim sm
[PE3-Ten-GigabitEthernet0/0/16] mpls enable
[PE3-Ten-GigabitEthernet0/0/16] quit
# Assign an IP address to Loopback 1, and enable PIM-SM on the interface.
[PE3] interface loopback 1
[PE3-LoopBack1] ip address 3.3.3.3 32
[PE3-LoopBack1] pim sm
[PE3-LoopBack1] quit
# Configure BGP.
[PE3] bgp 200
[PE3-bgp-default] peer 4.4.4.4 as-number 200
[PE3-bgp-default] peer 4.4.4.4 connect-interface loopback 1
[PE3-bgp-default] peer 10.3.1.1 as-number 100
[PE3-bgp-default] address-family vpnv4
[PE3-bgp-default-vpnv4] undo policy vpn-target
[PE3-bgp-default-vpnv4] peer 4.4.4.4 enable
[PE3-bgp-default-vpnv4] peer 10.3.1.1 enable
[PE3-bgp-default-vpnv4] quit
[PE3-bgp-default] address-family ipv4 mdt
[PE3-bgp-default-mdt] peer 4.4.4.4 enable
[PE3-bgp-default-mdt] peer 10.3.1.1 enable
[PE3-bgp-default-mdt] quit
[PE3–bgp-default] quit
# Configure OSPF.
[PE3] ospf 1
[PE3-ospf-1] area 0.0.0.0
[PE3-ospf-1-area-0.0.0.0] network 3.3.3.3 0.0.0.0
[PE3-ospf-1-area-0.0.0.0] network 10.4.1.0 0.0.0.255
[PE3-ospf-1-area-0.0.0.0] quit
[PE3-ospf-1] quit
4. Configure PE 4:
# Configure a global router ID, and enable IP multicast routing on the public network.
<PE4> system-view
[PE4] router id 4.4.4.4
[PE4] multicast routing
[PE4-mrib] quit
# Configure an LSR ID, and enable LDP globally.
[PE4] mpls lsr-id 4.4.4.4
[PE4] mpls ldp
[PE4-ldp] quit
# Create a VPN instance named a, and configure the RD and route targets for the VPN instance.
[PE4] ip vpn-instance a
[PE4-vpn-instance-a] route-distinguisher 100:1
[PE4-vpn-instance-a] vpn-target 100:1 export-extcommunity
[PE4-vpn-instance-a] vpn-target 100:1 import-extcommunity
[PE4-vpn-instance-a] quit
# Enable IP multicast routing and RPF vector for VPN instance a.
[PE4] multicast routing vpn-instance a
[PE4-mrib-a] rpf proxy vector
[PE4-mrib-a] quit
# Assign an IP address to Loopback 1, and enable PIM-SM on the interface.
[PE4] interface loopback 1
[PE4-LoopBack1] ip address 4.4.4.4 32
[PE4-LoopBack1] pim sm
[PE4-LoopBack1] quit
# Create an MDT-based MVPN for VPN instance a.
[PE4] multicast-vpn vpn-instance a mode mdt
# Create an MVPN IPv4 address family for VPN instance a.
[PE4-mvpn-vpn-instance-a] address-family ipv4
# Specify the default group, the MVPN source interface, and the data group range for VPN instance a.
[PE4-mvpn-vpn-instance-a-ipv4] default-group 232.1.1.1
[PE4-mvpn-vpn-instance-a-ipv4] source loopback 1
[PE4-mvpn-vpn-instance-a-ipv4] data-group 232.2.2.0 28
[PE4-mvpn-vpn-instance-a-ipv4] quit
[PE4-mvpn-vpn-instance-a] quit
# Create a VPN instance named b, and configure the RD and route targets for the VPN instance.
[PE4] ip vpn-instance b
[PE4-vpn-instance-b] route-distinguisher 200:1
[PE4-vpn-instance-b] vpn-target 200:1 export-extcommunity
[PE4-vpn-instance-b] vpn-target 200:1 import-extcommunity
[PE4-vpn-instance-b] quit
# Enable IP multicast routing and RPF vector for VPN instance b.
[PE4] multicast routing vpn-instance b
[PE4-mrib-b] rpf proxy vector
[PE4-mrib-b] quit
# Create an MDT-based MVPN for VPN instance b,.
[PE4] multicast-vpn vpn-instance b mode mdt
# Create an MVPN IPv4 address family for VPN instance b.
[PE4-mvpn-vpn-instance-b] address-family ipv4
# Specify the default group, the MVPN source interface, and the data group range for VPN instance b.
[PE4-mvpn-vpn-instance-b-ipv4] default-group 232.3.3.3
[PE4-mvpn-vpn-instance-b-ipv4] source loopback 1
[PE4-mvpn-vpn-instance-b-ipv4] data-group 232.4.4.0 28
[PE4-mvpn-vpn-instance-b-ipv4] quit
[PE4-mvpn-vpn-instance-b] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15.
[PE4] interface ten-gigabitethernet 0/0/15
[PE4-Ten-GigabitEthernet0/0/15] ip address 10.5.1.2 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/15.
[PE4-Ten-GigabitEthernet0/0/15] pim sm
[PE4-Ten-GigabitEthernet0/0/15] mpls enable
[PE4-Ten-GigabitEthernet0/0/15] mpls ldp enable
[PE4-Ten-GigabitEthernet0/0/15] quit
# Associate Ten-GigabitEthernet 0/0/16 with VPN instance a.
[PE4] interface ten-gigabitethernet 0/0/16
[PE4-Ten-GigabitEthernet0/0/16] ip binding vpn-instance a
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[PE4-Ten-GigabitEthernet0/0/16] ip address 11.3.1.1 24
[PE4-Ten-GigabitEthernet0/0/16] pim sm
[PE4-Ten-GigabitEthernet0/0/16] quit
# Associate Ten-GigabitEthernet 0/0/17 with VPN instance b.
[PE4] interface ten-gigabitethernet 0/0/17
[PE4-Ten-GigabitEthernet0/0/17] ip binding vpn-instance b
# Assign an IP address to Ten-GigabitEthernet 0/0/17, and enable PIM-SM on the interface.
[PE4-Ten-GigabitEthernet0/0/17] ip address 11.4.1.1 24
[PE4-Ten-GigabitEthernet0/0/17] pim sm
[PE4-Ten-GigabitEthernet0/0/17] quit
# Configure BGP.
[PE4] bgp 200
[PE4-bgp-default] peer 3.3.3.3 as-number 200
[PE4-bgp-default] peer 3.3.3.3 connect-interface loopback 1
[PE4–bgp-default] ip vpn-instance a
[PE4-bgp-default-a] address-family ipv4
[PE4-bgp-default-ipv4-a] import-route ospf 2
[PE4-bgp-default-ipv4-a] import-route direct
[PE4-bgp-default-ipv4-a] quit
[PE4-bgp-default-a] quit
[PE4–bgp-default] ip vpn-instance b
[PE4-bgp-default-b] address-family ipv4
[PE4-bgp-default-ipv4-b] import-route ospf 3
[PE4-bgp-default-ipv4-b] import-route direct
[PE4-bgp-default-ipv4-b] quit
[PE4-bgp-default-b] quit
[PE4–bgp-default] address-family vpnv4
[PE4–bgp-default-vpnv4] peer 3.3.3.3 enable
[PE4–bgp-default-vpnv4] quit
[PE4-bgp-default] address-family ipv4 mdt
[PE4-bgp-default-mdt] peer 3.3.3.3 enable
[PE4-bgp-default-mdt] quit
[PE4–bgp-default] quit
# Configure OSPF.
[PE4] ospf 1
[PE4-ospf-1] area 0.0.0.0
[PE4-ospf-1-area-0.0.0.0] network 4.4.4.4 0.0.0.0
[PE4-ospf-1-area-0.0.0.0] network 10.5.1.0 0.0.0.255
[PE4-ospf-1-area-0.0.0.0] quit
[PE4-ospf-1] quit
[PE4] ospf 2 vpn-instance a
[PE4-ospf-2] import-route bgp
[PE4-ospf-2] area 0.0.0.0
[PE4-ospf-2-area-0.0.0.0] network 11.3.1.0 0.0.0.255
[PE4-ospf-2-area-0.0.0.0] quit
[PE4-ospf-2] quit
[PE4] ospf 3 vpn-instance b
[PE4-ospf-3] import-route bgp
[PE4-ospf-3] area 0.0.0.0
[PE4-ospf-3-area-0.0.0.0] network 11.4.1.0 0.0.0.255
[PE4-ospf-3-area-0.0.0.0] quit
[PE4-ospf-3] quit
5. Configure P 1:
# Enable IP multicast routing on the public network.
<P1> system-view
[P1] multicast routing
[P1-mrib] quit
# Configure an LSR ID, and enable LDP globally.
[P1] mpls lsr-id 5.5.5.5
[P1] mpls ldp
[P1-ldp] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15.
[P1] interface ten-gigabitethernet 0/0/15
[P1-Ten-GigabitEthernet0/0/15] ip address 10.1.1.2 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/15.
[P1-Ten-GigabitEthernet0/0/15] pim sm
[P1-Ten-GigabitEthernet0/0/15] mpls enable
[P1-Ten-GigabitEthernet0/0/15] mpls ldp enable
[P1-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16.
[P1] interface ten-gigabitethernet 0/0/16
[P1-Ten-GigabitEthernet0/0/16] ip address 10.2.1.1 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/16.
[P1-Ten-GigabitEthernet0/0/16] pim sm
[P1-Ten-GigabitEthernet0/0/16] mpls enable
[P1-Ten-GigabitEthernet0/0/16] mpls ldp enable
[P1-Ten-GigabitEthernet0/0/16] quit
# Assign an IP address to Loopback 1, and enable PIM-SM on the interface.
[P1] interface loopback 1
[P1-LoopBack1] ip address 5.5.5.5 32
[P1-LoopBack1] pim sm
[P1-LoopBack1] quit
# Configure OSPF.
[P1] ospf 1
[P1-ospf-1] area 0.0.0.0
[P1-ospf-1-area-0.0.0.0] network 5.5.5.5 0.0.0.0
[P1-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[P1-ospf-1-area-0.0.0.0] network 10.2.1.0 0.0.0.255
6. Configure P 2:
# Enable IP multicast routing on the public network.
<P2> system-view
[P2] multicast routing
[P2-mrib] quit
# Configure an LSR ID, and enable LDP globally.
[P2] mpls lsr-id 6.6.6.6
[P2] mpls ldp
[P2-ldp] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15.
[P2] interface ten-gigabitethernet 0/0/15
[P2-Ten-GigabitEthernet0/0/15] ip address 10.5.1.1 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/15.
[P2-Ten-GigabitEthernet0/0/15] pim sm
[P2-Ten-GigabitEthernet0/0/15] mpls enable
[P2-Ten-GigabitEthernet0/0/15] mpls ldp enable
[P2-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16.
[P2] interface ten-gigabitethernet 0/0/16
[P2-Ten-GigabitEthernet0/0/16] ip address 10.4.1.2 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/16.
[P2-Ten-GigabitEthernet0/0/16] pim sm
[P2-Ten-GigabitEthernet0/0/16] mpls enable
[P2-Ten-GigabitEthernet0/0/16] mpls ldp enable
[P2-Ten-GigabitEthernet0/0/16] quit
# Assign an IP address to Loopback 1, and enable PIM-SM on the interface.
[P2] interface loopback 1
[P2-LoopBack1] ip address 6.6.6.6 32
[P2-LoopBack1] pim sm
[P2-LoopBack1] quit
# Configure OSPF.
[P2] ospf 1
[P2-ospf-1] area 0.0.0.0
[P2-ospf-1-area-0.0.0.0] network 6.6.6.6 0.0.0.0
[P2-ospf-1-area-0.0.0.0] network 10.4.1.0 0.0.0.255
[P2-ospf-1-area-0.0.0.0] network 10.5.1.0 0.0.0.255
7. Configure CE a1:
# Enable IP multicast routing.
<CEa1> system-view
[CEa1] multicast routing
[CEa1-mrib] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15, and enable PIM-SM on the interface.
[CEa1] interface ten-gigabitethernet 0/0/15
[CEa1-Ten-GigabitEthernet0/0/15] ip address 12.1.1.1 24
[CEa1-Ten-GigabitEthernet0/0/15] pim sm
[CEa1-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[CEa1] interface ten-gigabitethernet 0/0/16
[CEa1-Ten-GigabitEthernet0/0/16] ip address 11.1.1.2 24
[CEa1-Ten-GigabitEthernet0/0/16] pim sm
[CEa1-Ten-GigabitEthernet0/0/16] quit
# Configure Ten-GigabitEthernet 0/0/16 as a C-BSR and a C-RP.
[CEa1] pim
[CEa1-pim] c-bsr 11.1.1.2
[CEa1-pim] c-rp 11.1.1.2
[CEa1-pim] quit
# Configure OSPF.
[CEa1] ospf 1
[CEa1-ospf-1] area 0.0.0.0
[CEa1-ospf-1-area-0.0.0.0] network 12.1.1.0 0.0.0.255
[CEa1-ospf-1-area-0.0.0.0] network 11.1.1.0 0.0.0.255
[CEa1-ospf-1-area-0.0.0.0] quit
[CEa1-ospf-1] quit
8. Configure CE b1:
# Enable IP multicast routing.
<CEb1> system-view
[CEb1] multicast routing
[CEb1-mrib] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15, and enable PIM-SM on the interface.
[CEb1] interface ten-gigabitethernet 0/0/15
[CEb1-Ten-GigabitEthernet0/0/15] ip address 12.2.1.1 24
[CEb1-Ten-GigabitEthernet0/0/15] pim sm
[CEb1-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[CEb1] interface ten-gigabitethernet 0/0/16
[CEb1-Ten-GigabitEthernet0/0/16] ip address 11.2.1.2 24
[CEb1-Ten-GigabitEthernet0/0/16] pim sm
[CEb1-Ten-GigabitEthernet0/0/16] quit
# Configure Ten-GigabitEthernet 0/0/16 as a C-BSR and a C-RP.
[CEb1] pim
[CEb1-pim] c-bsr 11.2.1.2 24
[CEb1-pim] c-rp 11.2.1.2 24
[CEb1-pim] quit
# Configure OSPF.
[CEb1] ospf 1
[CEb1-ospf-1] area 0.0.0.0
[CEb1-ospf-1-area-0.0.0.0] network 12.2.1.0 0.0.0.255
[CEb1-ospf-1-area-0.0.0.0] network 11.2.1.0 0.0.0.255
[CEb1-ospf-1-area-0.0.0.0] quit
[CEb1-ospf-1] quit
9. Configure CE a2:
# Enable IP multicast routing.
<CEa2> system-view
[CEa2] multicast routing
[CEa2-mrib] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15, and enable IGMP on the interface.
[CEa2] interface ten-gigabitethernet 0/0/15
[CEa2-Ten-GigabitEthernet0/0/15] ip address 12.3.1.1 24
[CEa2-Ten-GigabitEthernet0/0/15] igmp enable
[CEa2-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[CEa2] interface ten-gigabitethernet 0/0/16
[CEa2-Ten-GigabitEthernet0/0/16] ip address 11.3.1.2 24
[CEa2-Ten-GigabitEthernet0/0/16] pim sm
[CEa2-Ten-GigabitEthernet0/0/16] quit
# Configure OSPF.
[CEa2] ospf 1
[CEa2-ospf-1] area 0.0.0.0
[CEa2-ospf-1-area-0.0.0.0] network 12.3.1.0 0.0.0.255
[CEa2-ospf-1-area-0.0.0.0] network 11.3.1.0 0.0.0.255
[CEa2-ospf-1-area-0.0.0.0] quit
[CEa2-ospf-1] quit
10. Configure CE b2:
# Enable IP multicast routing.
<CEb2> system-view
[CEb2] multicast routing
[CEb2-mrib] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15, and enable IGMP on the interface.
[CEb2] interface ten-gigabitethernet 0/0/15
[CEb2-Ten-GigabitEthernet0/0/15] ip address 12.4.1.1 24
[CEb2-Ten-GigabitEthernet0/0/15] igmp enable
[CEb2-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[CEb2] interface ten-gigabitethernet 0/0/16
[CEb2-Ten-GigabitEthernet0/0/16] ip address 11.4.1.2 24
[CEb2-Ten-GigabitEthernet0/0/16] pim sm
[CEb2-Ten-GigabitEthernet0/0/16] quit
# Configure OSPF.
[CEb2] ospf 1
[CEb2-ospf-1] area 0.0.0.0
[CEb2-ospf-1-area-0.0.0.0] network 12.4.1.0 0.0.0.255
[CEb2-ospf-1-area-0.0.0.0] network 11.4.1.0 0.0.0.255
[CEb2-ospf-1-area-0.0.0.0] quit
[CEb2-ospf-1] quit
Verifying the configuration
# Display information about the local default group for IPv4 multicast transmission in each VPN instance on PE 1.
[PE1] display multicast-vpn default-group local
MVPN local default-group information:
Group address Source address Interface VPN instance
232.1.1.1 1.1.1.1 MTunnel0 a
232.3.3.3 1.1.1.1 MTunnel1 b
# Display information about the remote default group for IPv4 multicast transmission in each VPN instance on PE 1.
[PE1] display multicast-vpn default-group remote
MVPN remote default-group information:
Group address Source address Next hop VPN instance
232.1.1.1 4.4.4.4 2.2.2.2 a
232.3.3.3 4.4.4.4 2.2.2.2 b
# Display information about the local default group for IPv4 multicast transmission in each VPN instance on PE 4.
[PE4] display multicast-vpn default-group local
MVPN local default-group information:
Group address Source address Interface VPN instance
232.1.1.1 4.4.4.4 MTunnel0 a
233.3.3.3 4.4.4.4 MTunnel1 b
# Display information about the remote default group for IPv4 multicast transmission in each VPN instance on PE 4.
[PE4] display multicast-vpn default-group remote
MVPN remote default-group information:
Group address Source address Next hop VPN instance
232.1.1.1 1.1.1.1 3.3.3.3 a
232.3.3.3 1.1.1.1 3.3.3.3 b
Example: Configuring inter-AS option C MDT-based MVPN
Network configuration
As shown in Figure 11, configure inter-AS option C MDT-based MVPN to meet the following requirements:
Item |
Network configuration |
Multicast sources and receivers |
· In VPN instance a, S 1 is a multicast source, and R 2 is a receiver. · In VPN instance b, S 2 is a multicast source, and R 1 is a receiver. · For VPN instance a, the default group is 239.1.1.1, and the data group range is 225.1.1.0 to 225.1.1.15. · For VPN instance b, the default group is 239.4.4.4, and the data group range is 225.4.4.0 to 225.4.4.15. |
VPN instances to which PE interfaces belong |
· PE 1: Ten-GigabitEthernet 0/0/16 belongs to VPN instance a. Ten-GigabitEthernet 0/0/17 belongs to VPN instance b. Ten-GigabitEthernet 0/0/15 and Loopback 1 belong to the public network instance. · PE 2: Ten-GigabitEthernet 0/0/15, Ten-GigabitEthernet 0/0/16, Loopback 1, and Loopback 2 belong to the public network instance. · PE 3: Ten-GigabitEthernet 0/0/15, Ten-GigabitEthernet 0/0/16, Loopback 1, and Loopback 2 belong to the public network instance. · PE 4: Ten-GigabitEthernet 0/0/16 belongs to VPN instance a. Ten-GigabitEthernet 0/0/17 belongs to VPN instance b. Ten-GigabitEthernet 0/0/15 and Loopback 1 belong to the public network instance. |
Unicast routing protocols and MPLS |
· Configure OSPF separately in AS 100 and AS 200, and configure OSPF between the PEs and CEs. · Establish BGP peer connections between PE 1, PE 2, PE 3, and PE 4 on their respective Loopback 1. · Configure MPLS separately in AS 100 and AS 200. |
IP multicast routing |
· Enable IP multicast routing on the public network on PE 1, PE 2, PE 3, and PE 4. · Enable IP multicast routing for VPN instance a on PE 1 and PE 4. · Enable IP multicast routing for VPN instance b on PE 1 and PE 4. · Enable IP multicast routing on CE a1, CE a2, CE b1, and CE b2. |
IGMPv2 |
· Enable IGMPv2 on Ten-GigabitEthernet 0/0/15 of CE a2. · Enable IGMPv2 on Ten-GigabitEthernet 0/0/15 of CE b2. |
PIM-SM |
Enable PIM-SM on the public network and for VPN instances a and b: · Enable PIM-SM on all public network interfaces of PE 2 and PE 3. · Enable PIM-SM on all public and private network interfaces of PE 1 and PE 4. · Enable PIM-SM on all interfaces that do not have attached receiver hosts on CE a1, CE a2, CE b1, and CE b2. · Configure Loopback 2 of PE 2 and PE 3 as a C-BSR and a C-RP for their own AS to provide services for all multicast groups. · Configure Loopback 0 of CE a1 as a C-BSR and a C-RP for VPN instance a to provide services for all multicast groups. · Configure Loopback 0 of CE b1 as a C-BSR and a C-RP for VPN instance b to provide services for all multicast groups. |
MSDP |
Establish an MSDP peering relationship between PE 2 and PE 3 on their Loopback 1. |
Table 3 Interface and IP address assignment
Device |
Interface |
IP address |
Device |
Interface |
IP address |
S 1 |
— |
10.11.5.2/24 |
R 1 |
— |
10.11.8.2/24 |
S 2 |
— |
10.11.6.2/24 |
R 2 |
— |
10.11.7.2/24 |
PE 1 |
XGE0/0/15 |
10.10.1.1/24 |
PE 3 |
XGE0/0/15 |
10.10.2.1/24 |
PE 1 |
XGE0/0/16 |
10.11.1.1/24 |
PE 3 |
XGE0/0/16 |
192.168.1.2/24 |
PE 1 |
XGE0/0/17 |
10.11.2.1/24 |
PE 3 |
Loop1 |
1.1.1.3/32 |
PE 1 |
Loop1 |
1.1.1.1/32 |
PE 3 |
Loop2 |
22.22.22.22/32 |
PE 2 |
XGE0/0/15 |
10.10.1.2/24 |
PE 4 |
XGE0/0/15 |
10.10.2.2/24 |
PE 2 |
XGE0/0/16 |
192.168.1.1/24 |
PE 4 |
XGE0/0/16 |
10.11.3.1/24 |
PE 2 |
Loop1 |
1.1.1.2/32 |
PE 4 |
XGE0/0/17 |
10.11.4.1/32 |
PE 2 |
Loop2 |
11.11.11.11/32 |
PE 4 |
Loop1 |
1.1.1.4/32 |
CE a1 |
XGE0/0/15 |
10.11.5.1/24 |
CE b1 |
XGE0/0/15 |
10.11.6.1/24 |
CE a1 |
XGE0/0/16 |
10.11.1.2/24 |
CE b1 |
XGE0/0/16 |
10.11.2.2/24 |
CE a1 |
Loop0 |
2.2.2.2/32 |
CE b2 |
XGE0/0/15 |
10.11.8.1/24 |
CE a2 |
XGE0/0/15 |
10.11.7.1/24 |
CE b2 |
XGE0/0/16 |
10.11.4.2/24 |
CE a2 |
XGE0/0/16 |
10.11.3.2/24 |
CE b2 |
Loop0 |
3.3.3.3/32 |
Procedure
1. Configure PE 1:
# Configure a global router ID, and enable IP multicast routing on the public network.
<PE1> system-view
[PE1] router id 1.1.1.1
[PE1] multicast routing
[PE1-mrib] quit
# Configure an LSR ID, and enable LDP globally.
[PE1] mpls lsr-id 1.1.1.1
[PE1] mpls ldp
[PE1-ldp] quit
# Create a VPN instance named a, and configure an RD and route targets for the VPN instance.
[PE1] ip vpn-instance a
[PE1-vpn-instance-a] route-distinguisher 100:1
[PE1-vpn-instance-a] vpn-target 100:1 export-extcommunity
[PE1-vpn-instance-a] vpn-target 100:1 import-extcommunity
[PE1-vpn-instance-a] quit
# Enable IP multicast routing for VPN instance a.
[PE1] multicast routing vpn-instance a
[PE1-mrib-a] quit
# Assign an IP address to Loopback 1, and enable PIM-SM on the interface.
[PE1] interface loopback 1
[PE1-LoopBack1] ip address 1.1.1.1 32
[PE1-LoopBack1] pim sm
[PE1-LoopBack1] quit
# Create an MDT-based MVPN for VPN instance a.
[PE1] multicast-vpn vpn-instance a mode mdt
# Create an MVPN IPv4 address family for VPN instance a.
[PE1-mvpn-vpn-instance-a] address-family ipv4
# Specify the default group, the MVPN source interface, and the data group range for VPN instance a.
[PE1-mvpn-vpn-instance-a-ipv4] default-group 239.1.1.1
[PE1-mvpn-vpn-instance-a-ipv4] source loopback 1
[PE1-mvpn-vpn-instance-a-ipv4] data-group 225.1.1.0 28
[PE1-mvpn-vpn-instance-a-ipv4] quit
[PE1-mvpn-vpn-instance-a] quit
# Create a VPN instance named b, and configure an RD and route targets for the VPN instance.
[PE1] ip vpn-instance b
[PE1-vpn-instance-b] route-distinguisher 200:1
[PE1-vpn-instance-b] vpn-target 200:1 export-extcommunity
[PE1-vpn-instance-b] vpn-target 200:1 import-extcommunity
[PE1-vpn-instance-b] quit
# Enable IP multicast routing for VPN instance b.
[PE1] multicast routing vpn-instance b
[PE1-mrib-b] quit
# Create an MDT-based MVPN for VPN instance b.
[PE1] multicast-vpn vpn-instance b mode mdt
# Create an MVPN IPv4 address family for VPN instance b.
[PE1-mvpn-vpn-instance-b] address-family ipv4
# Specify the default group, the MVPN source interface, and the data group range for VPN instance b.
[PE1-mvpn-vpn-instance-b-ipv4] default-group 239.4.4.4
[PE1-mvpn-vpn-instance-b-ipv4] source loopback 1
[PE1-mvpn-vpn-instance-b-ipv4] data-group 225.4.4.0 28
[PE1-mvpn-vpn-instance-b-ipv4] quit
[PE1-mvpn-vpn-instance-b] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15.
[PE1] interface ten-gigabitethernet 0/0/15
[PE1-Ten-GigabitEthernet0/0/15] ip address 10.10.1.1 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/15.
[PE1-Ten-GigabitEthernet0/0/15] pim sm
[PE1-Ten-GigabitEthernet0/0/15] mpls enable
[PE1-Ten-GigabitEthernet0/0/15] mpls ldp enable
[PE1-Ten-GigabitEthernet0/0/15] quit
# Associate Ten-GigabitEthernet 0/0/16 with VPN instance a.
[PE1] interface ten-gigabitethernet 0/0/16
[PE1-Ten-GigabitEthernet0/0/16] ip binding vpn-instance a
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[PE1-Ten-GigabitEthernet0/0/16] ip address 10.11.1.1 24
[PE1-Ten-GigabitEthernet0/0/16] pim sm
[PE1-Ten-GigabitEthernet0/0/16] quit
# Associate Ten-GigabitEthernet 0/0/17 with VPN instance b.
[PE1] interface ten-gigabitethernet 0/0/17
[PE1-Ten-GigabitEthernet0/0/17] ip binding vpn-instance b
# Assign an IP address to Ten-GigabitEthernet 0/0/17, and enable PIM-SM on the interface.
[PE1-Ten-GigabitEthernet0/0/17] ip address 10.11.2.1 24
[PE1-Ten-GigabitEthernet0/0/17] pim sm
[PE1-Ten-GigabitEthernet0/0/17] quit
# Configure BGP.
[PE1] bgp 100
[PE1-bgp-default] group pe1-pe2 internal
[PE1-bgp-default] peer pe1-pe2 connect-interface loopback 1
[PE1-bgp-default] peer 1.1.1.2 group pe1-pe2
[PE1-bgp-default] group pe1-pe4 external
[PE1-bgp-default] peer pe1-pe4 as-number 200
[PE1-bgp-default] peer pe1-pe4 ebgp-max-hop 255
[PE1-bgp-default] peer pe1-pe4 connect-interface loopback 1
[PE1-bgp-default] peer 1.1.1.4 group pe1-pe4
[PE1–bgp-default] ip vpn-instance a
[PE1-bgp-default-a] address-family ipv4
[PE1-bgp-default-ipv4-a] import-route ospf 2
[PE1-bgp-default-ipv4-a] import-route direct
[PE1-bgp-default-ipv4-a] quit
[PE1-bgp-default-a] quit
[PE1–bgp-default] ip vpn-instance b
[PE1-bgp-default-b] address-family ipv4
[PE1-bgp-default-ipv4-b] import-route ospf 3
[PE1-bgp-default-ipv4-b] import-route direct
[PE1-bgp-default-ipv4-b] quit
[PE1-bgp-default-b] quit
[PE1–bgp-default] address-family ipv4
[PE1-bgp-default-ipv4] peer pe1-pe2 enable
[PE1-bgp-default-ipv4] peer pe1-pe2 label-route-capability
[PE1-bgp-default-ipv4] quit
[PE1–bgp-default] address-family vpnv4
[PE1–bgp-default-vpnv4] peer pe1-pe4 enable
[PE1–bgp-default-vpnv4] quit
[PE1–bgp-default] quit
# Configure OSPF.
[PE1] ospf 1
[PE1-ospf-1] area 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] network 1.1.1.1 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] network 10.10.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
[PE1] ospf 2 vpn-instance a
[PE1-ospf-2] import-route bgp
[PE1-ospf-2] area 0.0.0.0
[PE1-ospf-2-area-0.0.0.0] network 10.11.1.0 0.0.0.255
[PE1-ospf-2-area-0.0.0.0] quit
[PE1-ospf-2] quit
[PE1] ospf 3 vpn-instance b
[PE1-ospf-3] import-route bgp
[PE1-ospf-3] area 0.0.0.0
[PE1-ospf-3-area-0.0.0.0] network 10.11.2.0 0.0.0.255
[PE1-ospf-3-area-0.0.0.0] quit
[PE1-ospf-3] quit
2. Configure PE 2:
# Configure a global router ID, and enable IP multicast routing on the public network.
<PE2> system-view
[PE2] router id 1.1.1.2
[PE2] multicast routing
[PE2-mrib] quit
# Configure an LSR ID, and enable LDP globally.
[PE2] mpls lsr-id 1.1.1.2
[PE2] mpls ldp
[PE2-mpls-ldp] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15.
[PE2] interface ten-gigabitethernet 0/0/15
[PE2-Ten-GigabitEthernet0/0/15] ip address 10.10.1.2 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/15.
[PE2-Ten-GigabitEthernet0/0/15] pim sm
[PE2-Ten-GigabitEthernet0/0/15] mpls enable
[PE2-Ten-GigabitEthernet0/0/15] mpls ldp enable
[PE2-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16.
[PE2] interface ten-gigabitethernet 0/0/16
[PE2-Ten-GigabitEthernet0/0/16] ip address 192.168.1.1 24
# Enable PIM-SM and MPLS on Ten-GigabitEthernet 0/0/16.
[PE2-Ten-GigabitEthernet0/0/16] pim sm
[PE2-Ten-GigabitEthernet0/0/16] mpls enable
[PE2-Ten-GigabitEthernet0/0/16] quit
# Assign an IP address to Loopback 1, and enable PIM-SM on the interface.
[PE2] interface loopback 1
[PE2-LoopBack1] ip address 1.1.1.2 32
[PE2-LoopBack1] pim sm
[PE2-LoopBack1] quit
# Assign an IP address to Loopback 2, and enable PIM-SM on the interface.
[PE2] interface loopback 2
[PE2-LoopBack2] ip address 11.11.11.11 32
[PE2-LoopBack2] pim sm
[PE2-LoopBack2] quit
# Configure Loopback 2 as a C-BSR and a C-RP.
[PE2] pim
[PE2-pim] c-bsr 11.11.11.11
[PE2-pim] c-rp 11.11.11.11
[PE2-pim] quit
# Configure Ten-GigabitEthernet 0/0/16 as a PIM-SM domain border.
[PE2] interface ten-gigabitethernet 0/0/16
[PE2-Ten-GigabitEthernet0/0/16] pim bsr-boundary
[PE2-Ten-GigabitEthernet0/0/16] quit
# Establish an MSDP peering relationship.
[PE2] msdp
[PE2-msdp] encap-data-enable
[PE2-msdp] peer 1.1.1.3 connect-interface loopback 1
# Configure a static route.
[PE2] ip route-static 1.1.1.3 32 ten-gigabitethernet 0/0/16 192.168.1.2
# Configure a routing policy.
[PE2] route-policy map1 permit node 1
[PE2-route-policy-map1-1] apply mpls-label
[PE2-route-policy-map1-1] quit
[PE2] route-policy map2 permit node 1
[PE2-route-policy-map2-1] apply mpls-label
[PE2-route-policy-map2-1] if-match mpls-label
[PE2-route-policy-map2-1] quit
# Configure BGP.
[PE2] bgp 100
[PE2-bgp-default] group pe2-pe1 internal
[PE2-bgp-default] peer pe2-pe1 connect-interface loopback 1
[PE2-bgp-default] peer 1.1.1.1 group pe2-pe1
[PE2-bgp-default] group pe2-pe3 external
[PE2-bgp-default] peer pe2-pe3 as-number 200
[PE2-bgp-default] peer 192.168.1.2 group pe2-pe3
[PE2-bgp-default] address-family ipv4
[PE2-bgp-default-ipv4] peer pe2-pe1 enable
[PE2-bgp-default-ipv4] peer pe2-pe1 route-policy map2 export
[PE2-bgp-default-ipv4] peer pe2-pe1 label-route-capability
[PE2-bgp-default-ipv4] peer pe2-pe3 enable
[PE2-bgp-default-ipv4] peer pe2-pe3 route-policy map1 export
[PE2-bgp-default-ipv4] peer pe2-pe3 label-route-capability
[PE2-bgp-default-ipv4] import-route ospf 1
[PE2-bgp-default-ipv4] quit
[PE2–bgp-default] quit
# Configure OSPF.
[PE2] ospf 1
[PE2-ospf-1] area 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] network 1.1.1.2 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] network 11.11.11.11 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] network 10.10.1.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
3. Configure PE 3:
# Configure a global router ID, and enable IP multicast routing on the public network.
<PE3> system-view
[PE3] router id 1.1.1.3
[PE3] multicast routing
[PE3-mrib] quit
# Configure an LSR ID, and enable LDP globally.
[PE3] mpls lsr-id 1.1.1.3
[PE3] mpls ldp
[PE3-ldp] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15.
[PE3] interface ten-gigabitethernet 0/0/15
[PE3-Ten-GigabitEthernet0/0/15] ip address 10.10.2.1 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/15.
[PE3-Ten-GigabitEthernet0/0/15] pim sm
[PE3-Ten-GigabitEthernet0/0/15] mpls enable
[PE3-Ten-GigabitEthernet0/0/15] mpls ldp enable
[PE3-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16.
[PE3] interface ten-gigabitethernet 0/0/16
[PE3-Ten-GigabitEthernet0/0/16] ip address 192.168.1.2 24
# Enable PIM-SM and MPLS on Ten-GigabitEthernet 0/0/16.
[PE3-Ten-GigabitEthernet0/0/16] pim sm
[PE3-Ten-GigabitEthernet0/0/16] mpls enable
[PE3-Ten-GigabitEthernet0/0/16] quit
# Assign an IP address to Loopback 1, and enable PIM-SM on the interface.
[PE3] interface loopback 1
[PE3-LoopBack1] ip address 1.1.1.3 32
[PE3-LoopBack1] pim sm
[PE3-LoopBack1] quit
# Assign an IP address to Loopback 2, and enable PIM-SM on the interface.
[PE3] interface loopback 2
[PE3-LoopBack2] ip address 22.22.22.22 32
[PE3-LoopBack2] pim sm
[PE3-LoopBack2] quit
# Configure Loopback 2 as a C-BSR and a C-RP.
[PE3] pim
[PE3-pim] c-bsr 22.22.22.22
[PE3-pim] c-rp 22.22.22.22
[PE3-pim] quit
# Configure Ten-GigabitEthernet 0/0/16 as a PIM-SM domain border.
[PE3] interface ten-gigabitethernet 0/0/16
[PE3-Ten-GigabitEthernet0/0/16] pim bsr-boundary
[PE3-Ten-GigabitEthernet0/0/16] quit
# Establish an MSDP peering relationship.
[PE3] msdp
[PE3-msdp] encap-data-enable
[PE3-msdp] peer 1.1.1.2 connect-interface loopback 1
# Configure a static route.
[PE3] ip route-static 1.1.1.2 32 ten-gigabitethernet 0/0/16 192.168.1.1
# Configure a routing policy.
[PE3] route-policy map1 permit node 1
[PE3-route-policy-map1-1] apply mpls-label
[PE3-route-policy-map1-1] quit
[PE3] route-policy map2 permit node 1
[PE3-route-policy-map2-1] apply mpls-label
[PE3-route-policy-map2-1] if-match mpls-label
[PE3-route-policy-map2-1] quit
# Configure BGP.
[PE3] bgp 200
[PE3-bgp-default] group pe3-pe4 internal
[PE3-bgp-default] peer pe3-pe4 connect-interface loopback 1
[PE3-bgp-default] peer 1.1.1.4 group pe3-pe4
[PE3-bgp-default] group pe3-pe2 external
[PE3-bgp-default] peer pe3-pe2 as-number 100
[PE3-bgp-default] peer 192.168.1.1 group pe3-pe2
[PE3-bgp-default] address-family ipv4
[PE3-bgp-default-ipv4] peer pe3-pe4 enable
[PE3-bgp-default-ipv4] peer pe3-pe4 route-policy map2 export
[PE3-bgp-default-ipv4] peer pe3-pe4 label-route-capability
[PE3-bgp-default-ipv4] peer pe3-pe2 enable
[PE3-bgp-default-ipv4] peer pe3-pe2 route-policy map1 export
[PE3-bgp-default-ipv4] peer pe3-pe2 label-route-capability
[PE3-bgp-default-ipv4] import-route ospf 1
[PE3-bgp-default-ipv4] quit
[PE3–bgp-default] quit
# Configure OSPF.
[PE3] ospf 1
[PE3-ospf-1] area 0.0.0.0
[PE3-ospf-1-area-0.0.0.0] network 1.1.1.3 0.0.0.0
[PE3-ospf-1-area-0.0.0.0] network 22.22.22.22 0.0.0.0
[PE3-ospf-1-area-0.0.0.0] network 10.10.2.0 0.0.0.255
[PE3-ospf-1-area-0.0.0.0] quit
[PE3-ospf-1] quit
4. Configure PE 4:
# Configure a global router ID, and enable IP multicast routing on the public network.
<PE4> system-view
[PE4] router id 1.1.1.4
[PE4] multicast routing
[PE4-mrib] quit
# Configure an LSR ID, and enable LDP globally.
[PE4] mpls lsr-id 1.1.1.4
[PE4] mpls ldp
[PE4-ldp] quit
# Create a VPN instance named a, and configure an RD and route targets for the VPN instance.
[PE4] ip vpn-instance a
[PE4-vpn-instance-a] route-distinguisher 100:1
[PE4-vpn-instance-a] vpn-target 100:1 export-extcommunity
[PE4-vpn-instance-a] vpn-target 100:1 import-extcommunity
[PE4-vpn-instance-a] quit
# Enable IP multicast routing for VPN instance a.
[PE4] multicast routing vpn-instance a
[PE4-mrib-a] quit
# Assign an IP address to Loopback 1, and enable PIM-SM on the interface.
[PE4] interface loopback 1
[PE4-LoopBack1] ip address 1.1.1.4 32
[PE4-LoopBack1] pim sm
[PE4-LoopBack1] quit
# Create an MDT-based MVPN for VPN instance a.
[PE4] multicast-vpn vpn-instance a mode mdt
# Create an MVPN IPv4 address family for VPN instance a.
[PE4-mvpn-vpn-instance-a] address-family ipv4
# Specify the default group, the MVPN source interface, and the data group range for VPN instance a.
[PE4-mvpn-vpn-instance-a-ipv4] default-group 239.1.1.1
[PE4-mvpn-vpn-instance-a-ipv4] source loopback 1
[PE4-mvpn-vpn-instance-a-ipv4] data-group 225.1.1.0 28
[PE4-mvpn-vpn-instance-a-ipv4] quit
[PE4-mvpn-vpn-instance-a] quit
# Create a VPN instance named b, and configure an RD and route targets for the VPN instance.
[PE4] ip vpn-instance b
[PE4-vpn-instance-b] route-distinguisher 200:1
[PE4-vpn-instance-b] vpn-target 200:1 export-extcommunity
[PE4-vpn-instance-b] vpn-target 200:1 import-extcommunity
[PE4-vpn-instance-b] quit
# Enable IP multicast routing for VPN instance b.
[PE4] multicast routing vpn-instance b
[PE4-mrib-b] quit
# Create an MDT-based MVPN for VPN instance b.
[PE4] multicast-vpn vpn-instance b mode mdt
# Create an MVPN IPv4 address family for VPN instance b.
[PE4-mvpn-vpn-instance-b] address-family ipv4
# Specify the default group, MVPN source interface, and the data group range for VPN instance b.
[PE4-mvpn-vpn-instance-b-ipv4] default-group 239.4.4.4
[PE4-mvpn-vpn-instance-b-ipv4] source loopback 1
[PE4-mvpn-vpn-instance-b-ipv4] data-group 225.4.4.0 28
[PE4-mvpn-vpn-instance-b-ipv4] quit
[PE4-mvpn-vpn-instance-b] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15.
[PE4] interface ten-gigabitethernet 0/0/15
[PE4-Ten-GigabitEthernet0/0/15] ip address 10.10.2.2 24
# Enable PIM-SM, MPLS, and IPv4 LDP on Ten-GigabitEthernet 0/0/15.
[PE4-Ten-GigabitEthernet0/0/15] pim sm
[PE4-Ten-GigabitEthernet0/0/15] mpls enable
[PE4-Ten-GigabitEthernet0/0/15] mpls ldp enable
[PE4-Ten-GigabitEthernet0/0/15] quit
# Associate Ten-GigabitEthernet 0/0/16 with VPN instance a.
[PE4] interface ten-gigabitethernet 0/0/16
[PE4-Ten-GigabitEthernet0/0/16] ip binding vpn-instance a
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[PE4-Ten-GigabitEthernet0/0/16] ip address 10.11.3.1 24
[PE4-Ten-GigabitEthernet0/0/16] pim sm
[PE4-Ten-GigabitEthernet0/0/16] quit
# Associate Ten-GigabitEthernet 0/0/17 with VPN instance b.
[PE4] interface ten-gigabitethernet 0/0/17
[PE4-Ten-GigabitEthernet0/0/17] ip binding vpn-instance b
# Assign an IP address to Ten-GigabitEthernet 0/0/17, and enable PIM-SM on the interface.
[PE4-Ten-GigabitEthernet0/0/17] ip address 10.11.4.1 24
[PE4-Ten-GigabitEthernet0/0/17] pim sm
[PE4-Ten-GigabitEthernet0/0/17] quit
# Configure BGP.
[PE4] bgp 200
[PE4-bgp-default] group pe4-pe3 internal
[PE4-bgp-default] peer pe4-pe3 connect-interface loopback 1
[PE4-bgp-default] peer 1.1.1.3 group pe4-pe3
[PE4-bgp-default] group pe4-pe1 external
[PE4-bgp-default] peer pe4-pe1 as-number 100
[PE4-bgp-default] peer pe4-pe1 ebgp-max-hop 255
[PE4-bgp-default] peer pe4-pe1 connect-interface loopback 1
[PE4-bgp-default] peer 1.1.1.1 group pe4-pe1
[PE4–bgp-default] ip vpn-instance a
[PE4-bgp-default-a] address-family ipv4
[PE4-bgp-default-ipv4-a] import-route ospf 2
[PE4-bgp-default-ipv4-a] import-route direct
[PE4-bgp-default-ipv4-a] quit
[PE4-bgp-default-a] quit
[PE4–bgp-default] ip vpn-instance b
[PE4-bgp-default-b] address-family ipv4
[PE4-bgp-default-ipv4-b] import-route ospf 3
[PE4-bgp-default-ipv4-b] import-route direct
[PE4-bgp-default-ipv4-b] quit
[PE4-bgp-default-b] quit
[PE4–bgp-default] address-family ipv4
[PE4-bgp-default-ipv4] peer pe4-pe3 enable
[PE4-bgp-default-ipv4] peer pe4-pe3 label-route-capability
[PE4-bgp-default-ipv4] quit
[PE4–bgp-default] address-family vpnv4
[PE4–bgp-default-vpnv4] peer pe4-pe1 enable
[PE4–bgp-default-vpnv4] quit
[PE4–bgp-default] quit
# Configure OSPF.
[PE4] ospf 1
[PE4-ospf-1] area 0.0.0.0
[PE4-ospf-1-area-0.0.0.0] network 1.1.1.4 0.0.0.0
[PE4-ospf-1-area-0.0.0.0] network 10.10.2.0 0.0.0.255
[PE4-ospf-1-area-0.0.0.0] quit
[PE4-ospf-1] quit
[PE4] ospf 2 vpn-instance a
[PE4-ospf-2] import-route bgp
[PE4-ospf-2] area 0.0.0.0
[PE4-ospf-2-area-0.0.0.0] network 10.11.3.0 0.0.0.255
[PE4-ospf-2-area-0.0.0.0] quit
[PE4-ospf-2] quit
[PE4] ospf 3 vpn-instance b
[PE4-ospf-3] import-route bgp
[PE4-ospf-3] area 0.0.0.0
[PE4-ospf-3-area-0.0.0.0] network 10.11.4.0 0.0.0.255
[PE4-ospf-3-area-0.0.0.0] quit
[PE4-ospf-3] quit
5. Configure CE a1:
# Enable IP multicast routing.
<CEa1> system-view
[CEa1] multicast routing
[CEa1-mrib] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15, and enable PIM-SM on the interface.
[CEa1] interface ten-gigabitethernet 0/0/15
[CEa1-Ten-GigabitEthernet0/0/15] ip address 10.11.5.1 24
[CEa1-Ten-GigabitEthernet0/0/15] pim sm
[CEa1-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[CEa1] interface ten-gigabitethernet 0/0/16
[CEa1-Ten-GigabitEthernet0/0/16] ip address 10.11.1.2 24
[CEa1-Ten-GigabitEthernet0/0/16] pim sm
[CEa1-Ten-GigabitEthernet0/0/16] quit
# Assign an IP address to Loopback 1, and enable PIM-SM on the interface.
[CEa1] interface loopback 1
[CEa1-LoopBack1] ip address 2.2.2.2 32
[CEa1-LoopBack1] pim sm
[CEa1-LoopBack1] quit
# Configure Loopback 1 as a C-BSR and a C-RP.
[CEa1] pim
[CEa1-pim] c-bsr 2.2.2.2
[CEa1-pim] c-rp 2.2.2.2 1
[CEa1-pim] quit
# Configure OSPF.
[CEa1] ospf 1
[CEa1-ospf-1] area 0.0.0.0
[CEa1-ospf-1-area-0.0.0.0] network 2.2.2.2 0.0.0.0
[CEa1-ospf-1-area-0.0.0.0] network 10.11.1.0 0.0.0.255
[CEa1-ospf-1-area-0.0.0.0] network 10.11.5.0 0.0.0.255
[CEa1-ospf-1-area-0.0.0.0] quit
[CEa1-ospf-1] quit
6. Configure CE b1:
# Enable IP multicast routing.
<CEb1> system-view
[CEb1] multicast routing
[CEb1-mrib] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15, and enable PIM-SM on the interface.
[CEb1] interface ten-gigabitethernet 0/0/15
[CEb1-Ten-GigabitEthernet0/0/15] ip address 10.11.6.1 24
[CEb1-Ten-GigabitEthernet0/0/15] pim sm
[CEb1-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[CEb1] interface ten-gigabitethernet 0/0/16
[CEb1-Ten-GigabitEthernet0/0/16] ip address 10.11.2.2 24
[CEb1-Ten-GigabitEthernet0/0/16] pim sm
[CEb1-Ten-GigabitEthernet0/0/16] quit
# Configure OSPF.
[CEb1] ospf 1
[CEb1-ospf-1] area 0.0.0.0
[CEb1-ospf-1-area-0.0.0.0] network 10.11.2.0 0.0.0.255
[CEb1-ospf-1-area-0.0.0.0] network 10.11.6.0 0.0.0.255
[CEb1-ospf-1-area-0.0.0.0] quit
[CEb1-ospf-1] quit
7. Configure CE a2:
# Enable IP multicast routing.
<CEa2> system-view
[CEa2] multicast routing
[CEa2-mrib] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15, and enable IGMP on the interface.
[CEa2] interface ten-gigabitethernet 0/0/15
[CEa2-Ten-GigabitEthernet0/0/15] ip address 10.11.7.1 24
[CEa2-Ten-GigabitEthernet0/0/15] igmp enable
[CEa2-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[CEa2] interface ten-gigabitethernet 0/0/16
[CEa2-Ten-GigabitEthernet0/0/16] ip address 10.11.3.2 24
[CEa2-Ten-GigabitEthernet0/0/16] pim sm
[CEa2-Ten-GigabitEthernet0/0/16] quit
# Configure OSPF.
[CEa2] ospf 1
[CEa2-ospf-1] area 0.0.0.0
[CEa2-ospf-1-area-0.0.0.0] network 10.11.3.0 0.0.0.255
[CEa2-ospf-1-area-0.0.0.0] network 10.11.7.0 0.0.0.255
[CEa2-ospf-1-area-0.0.0.0] quit
[CEa2-ospf-1] quit
8. Configure CE b2:
# Enable IP multicast routing.
<CEb2> system-view
[CEb2] multicast routing
[CEb2-mrib] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/15, and enable IGMP on the interface.
[CEb2] interface ten-gigabitethernet 0/0/15
[CEb2-Ten-GigabitEthernet0/0/15] ip address 10.11.8.1 24
[CEb2-Ten-GigabitEthernet0/0/15] igmp enable
[CEb2-Ten-GigabitEthernet0/0/15] quit
# Assign an IP address to Ten-GigabitEthernet 0/0/16, and enable PIM-SM on the interface.
[CEb2] interface ten-gigabitethernet 0/0/16
[CEb2-Ten-GigabitEthernet0/0/16] ip address 10.11.4.2 24
[CEb2-Ten-GigabitEthernet0/0/16] pim sm
[CEb2-Ten-GigabitEthernet0/0/16] quit
# Assign an IP address to Loopback 1, and enable PIM-SM on the interface.
[CEb2] interface loopback 1
[CEb2-LoopBack1] ip address 3.3.3.3 32
[CEb2-LoopBack1] pim sm
[CEb2-LoopBack1] quit
# Configure Loopback 1 as a C-BSR and a C-RP.
[CEb2] pim
[CEb2-pim] c-bsr 3.3.3.3
[CEb2-pim] c-rp 3.3.3.3
[CEb2-pim] quit
# Configure OSPF.
[CEb2] ospf 1
[CEb2-ospf-1] area 0.0.0.0
[CEb2-ospf-1-area-0.0.0.0] network 3.3.3.3 0.0.0.0
[CEb2-ospf-1-area-0.0.0.0] network 10.11.4.0 0.0.0.255
[CEb2-ospf-1-area-0.0.0.0] network 10.11.8.0 0.0.0.255
[CEb2-ospf-1-area-0.0.0.0] quit
[CEb2-ospf-1] quit
Verifying the configuration
# Display information about the local default group for IPv4 multicast transmission in each VPN instance on PE 1.
[PE1] display multicast-vpn default-group local
MVPN local default-group information:
Group address Source address Interface VPN instance
239.1.1.1 1.1.1.1 MTunnel0 a
239.4.4.4 1.1.1.1 MTunnel1 b
# Display information about the local default group for IPv4 multicast transmission in each VPN instance on PE 4.
[PE4] display multicast-vpn default-group local
MVPN local default-group information:
Group address Source address Interface VPN instance
239.1.1.1 1.1.1.4 MTunnel0 a