Example for Configuring Local MT
This section provides an example showing how to configure local MT on IS-IS networks so that multicast packets can be transmitted on a TE tunnel.
Networking Requirements
When multicast and an Interior Gateway Protocol (IGP) Shortcut-enabled Multiprotocol Label Switching (MPLS) traffic engineering (TE) tunnel are configured on a network, the outbound interface of the route calculated by IS-IS may not be a physical interface but a TE tunnel interface. Multicast Join packets are transparent to routers through which the TE tunnel passes. Therefore, these routers cannot generate multicast forwarding entries. As a result, these routers discard received multicast packets from the multicast source.
After local MT is enabled, if the outbound interface of a calculated route is an IGP Shortcut-enabled TE tunnel interface, the routing management (RM) module creates an independent Multicast IGP (MIGP) routing table for the multicast protocol, calculates a physical outbound interface for the route, and adds the route to the MIGP routing table. Local MT resolves the conflict between multicast and a TE tunnel.
Figure 9-25 shows IS-IS local MT networking.
Device A, Device B, Device C, Device D, and Device E run IS-IS, and they are Level-2 routers.
A TE tunnel is established between Device B and Device D.
IGP Shortcut is enabled on Device B.
Device Name |
Interface |
IP Address |
---|---|---|
Device A |
GE1/0/0 |
172.16.1.1/24 |
GE1/0/0 |
10.0.1.1/24 |
|
Device B |
GE1/0/0 |
10.0.0.2/24 |
GE2/0/0 |
10.0.1.2/24 |
|
Device C |
GE1/0/0 |
10.0.1.1/24 |
GE2/0/0 |
10.0.2.2/24 |
|
Device D |
GE1/0/0 |
10.0.3.1/24 |
GE2/0/0 |
10.0.2.1/24 |
|
Device E |
GE1/0/0 |
10.0.3.3/24 |
GE2/0/0 |
192.168.3.1/24 |
Configuration Roadmap
The configuration roadmap is as follows:
Enable basic IS-IS functions on each router.
Configure the Protocol Independent Multicast Sparse Mode (PIM-SM).
Configure an MPLS Resource Reservation Protocol (RSVP) TE tunnel and enable IGP Shortcut.
Enable local MT.
Data Preparation
To complete the configuration, you need the following data:
IP address of each router interface, as shown in Figure 9-25, area address 10, and originating system ID starting from 0000.0000.0001
Tunnel interface TE Tunnel 10, IP address of Loopback 0, tunnel encapsulation protocol MPLS TE, destination address 4.4.4.4, and tunnel ID 100
Procedure
- Assign an IP address for each interface and enable IS-IS.
In Figure 9-25, assign an IP address and the mask for each interface and enable IS-IS. For configuration details, see Configuration Files in this section.
- Configure PIM-SM.
# Enable multicast on all routers and enable PIM-SM on all interfaces except GigabitEthernet 1/0/0 on Device A. The configurations on Device B, Device C, Device D, and Device E are similar to those on Device A. For configuration details, see Configuration Files in this section.
[~DeviceA] multicast routing-enable [*DeviceA] interface gigabitethernet 2/0/0 [*DeviceA-GigabitEthernet2/0/0] pim sm [*DeviceA-GigabitEthernet2/0/0] commit [~DeviceA-GigabitEthernet2/0/0] quit
# Enable IGMP on the interface through which Device A is connected to hosts.
[~DeviceA] interface gigabitethernet 1/0/0 [~DeviceA-GigabitEthernet1/0/0] igmp enable [*DeviceA-GigabitEthernet1/0/0] igmp version 3 [*DeviceA-GigabitEthernet1/0/0] commit
# Configure a C-BSR and a C-RP. Set the service range of the RP on Device D and specify the locations of the C-BSR and the C-RP.
[~DeviceD] pim [*DeviceD-pim] c-bsr gigabitethernet 1/0/0 [*DeviceD-pim] c-rp gigabitethernet 1/0/0 [*DeviceD-pim] commit
# Run the display multicast routing-table command to view the multicast routing table of a router. The multicast routing table on Device C is as follows:
[~DeviceC] display multicast routing-table Multicast routing table of VPN-Instance: public net Total 1 entry 00001. (192.168.3.2, 224.31.31.31) Uptime: 15:03:04 Upstream Interface: GigabitEthernet2/0/0 List of 1 downstream interface 1: GigabitEthernet1/0/0
- Configure an MPLS RSVP-TE tunnel.
# Configure Device B.
[~DeviceB] mpls lsr-id 2.2.2.2 [*DeviceB] mpls [*DeviceB-mpls] mpls te [*DeviceB-mpls] mpls rsvp-te [*DeviceB-mpls] mpls te cspf [*DeviceB-mpls] quit [*DeviceB] interface gigabitethernet 2/0/0 [*DeviceB-GigabitEthernet2/0/0] mpls [*DeviceB-GigabitEthernet2/0/0] mpls te [*DeviceB-GigabitEthernet2/0/0] mpls rsvp-te [*DeviceB-GigabitEthernet2/0/0] quit [*DeviceB] isis 1 [*DeviceB-isis-1] cost-style wide [*DeviceB-isis-1] traffic-eng level-2 [*DeviceB-isis-1] commit [~DeviceB-isis-1] quit
# Configure Device C.
[~DeviceC] mpls lsr-id 3.3.3.3 [*DeviceC] mpls [*DeviceC-mpls] mpls te [*DeviceC-mpls] mpls rsvp-te [*DeviceC-mpls] mpls te cspf [*DeviceC-mpls] quit [*DeviceC] interface gigabitethernet 1/0/0 [*DeviceC-GigabitEthernet1/0/0] mpls [*DeviceC-GigabitEthernet1/0/0] mpls te [*DeviceC-GigabitEthernet1/0/0] mpls rsvp-te [*DeviceC-GigabitEthernet1/0/0] quit [*DeviceC] interface gigabitethernet 2/0/0 [*DeviceC-GigabitEthernet2/0/0] mpls [*DeviceC-GigabitEthernet2/0/0] mpls te [*DeviceC-GigabitEthernet2/0/0] mpls rsvp-te [*DeviceC-GigabitEthernet2/0/0] quit [*DeviceC] isis 1 [*DeviceC-isis-1] cost-style wide [*DeviceC-isis-1] traffic-eng level-2 [*DeviceC-isis-1] commit [~DeviceC-isis-1] quit
# Configure Device D.
[~DeviceD] mpls lsr-id 4.4.4.4 [*DeviceD] mpls [*DeviceD-mpls] mpls te [*DeviceD-mpls] mpls rsvp-te [*DeviceD-mpls] mpls te cspf [*DeviceD-mpls] quit [*DeviceD] interface gigabitethernet 1/0/0 [*DeviceD-GigabitEthernet1/0/0] mpls [*DeviceD-GigabitEthernet1/0/0] mpls te [*DeviceD-GigabitEthernet1/0/0] mpls rsvp-te [*DeviceD-GigabitEthernet1/0/0] quit [*DeviceD] isis 1 [*DeviceD-isis-1] cost-style wide [*DeviceD-isis-1] traffic-eng level-2 [*DeviceD-isis-1] commit [~DeviceD-isis-1] quit
# Configure an MPLS TE tunnel and enable IGP Shortcut.
Configure an MPLS TE tunnel on Device B and enable IGP Shortcut.
[~DeviceB] interface Tunnel 10 [~DeviceB-Tunnel10] ip address unnumbered interface loopback 0 [*DeviceB-Tunnel10] tunnel-protocol mpls te [*DeviceB-Tunnel10] destination 4.4.4.4 [*DeviceB-Tunnel10] mpls te tunnel-id 100 [*DeviceB-Tunnel10] mpls te igp shortcut isis [*DeviceB-Tunnel10] mpls te igp metric relative -10 [*DeviceB-Tunnel10] commit [~DeviceB-Tunnel10] quit
# Display the routing table on Device B. You can find that IGP Shortcut is enabled.
[~DeviceB] display isis route Route information for ISIS(1) ----------------------------- ISIS(1) Level-2 Forwarding Table -------------------------------- IPV4 Destination IntCost ExtCost ExitInterface NextHop Flags -------------------------------------------------------------------------------- 3.3.3.3/32 10 NULL GE2/0/0 10.0.1.1 A/-/-/- 172.16.1.0/24 20 NULL GE1/0/0 10.0.0.1 A/-/-/- 2.2.2.2/32 0 NULL Loop0 Direct D/-/L/- 192.168.3.0/24 25 NULL Tun1/0/0 2.2.2.2 A/S/-/- 5.5.5.5/32 15 NULL Tun1/0/0 2.2.2.2 A/S/-/- 10.0.0.0/24 10 NULL GE1/0/0 Direct D/-/L/- 10.0.1.0/24 10 NULL GE2/0/0 Direct D/-/L/- 4.4.4.4/32 5 NULL Tun1/0/0 2.2.2.2 A/S/-/- 10.0.2.0/24 15 NULL Tun1/0/0 2.2.2.2 A/S/-/- 10.0.3.0/24 15 NULL Tun1/0/0 2.2.2.2 A/S/-/- Flags: D-Direct, A-Added to URT, L-Advertised in LSPs, S-IGP Shortcut, U-Up/Down Bit Set
# Display the multicast routing table on Device C through which the TE tunnel passes.
[~DeviceC] display multicast routing-table
No multicast routing entry is displayed, indicating that multicast packets have been discarded.
- Configure local MT.
# Enable local MT on Device B.
[~DeviceB] isis [~DeviceB-isis-1] local-mt enable [*DeviceB-isis-1] commit
- Verify the configuration.
# Display the multicast routing table on Device C again. The command output shows that multicast routes are displayed.
[~DeviceC] display multicast routing-table Multicast routing table of VPN-Instance: public net Total 1 entry 00001. (192.168.3.2, 224.31.31.31) Uptime: 00:00:19 Upstream Interface: GigabitEthernet2/0/0 List of 1 downstream interface 1: GigabitEthernet1/0/0
# Display the MIGP routing table on Device B.
[~DeviceB] display migp routing-table Route Flags: R - relied, D - download to fib ------------------------------------------------------------------------------ Routing Tables: MIGP Destinations : 5 Routes : 5 Destination/Mask Proto Pre Cost Flags NextHop Interface 4.4.4.4/32 ISIS 15 20 10.0.1.1 GE2/0/0 5.5.5.5/32 ISIS 15 30 10.0.1.1 GE2/0/0 10.0.2.0/24 ISIS 15 20 10.0.1.1 GE2/0/0 10.0.3.0/24 ISIS 15 30 10.0.1.1 GE2/0/0 192.168.3.0/24 ISIS 15 40 10.0.1.1 GE2/0/0
The MIGP routing table shows that the original outbound interface (TE tunnel interface) has been replaced with a physical interface.
Configuration Files
Device A configuration file
# sysname DeviceA # router id 1.1.1.1 # multicast routing-enable # isis 1 is-level level-2 cost-style wide network-entity 10.0000.0000.0001.00 # interface GigabitEthernet2/0/0 ip address 10.0.0.1 255.255.255.0 isis enable 1 pim sm # interface GigabitEthernet1/0/0 ip address 172.16.1.1 255.255.255.0 isis enable 1 igmp enable # interface LoopBack0 ip address 1.1.1.1 255.255.255.255 # return
Device B configuration file
# sysname DeviceB # router id 2.2.2.2 # multicast routing-enable # mpls lsr-id 2.2.2.2 mpls mpls te mpls rsvp-te mpls te cspf # isis 1 is-level level-2 cost-style wide network-entity 10.0000.0000.0002.00 traffic-eng level-2 local-mt enable # interface GigabitEthernet1/0/0 ip address 10.0.0.2 255.255.255.0 isis enable 1 pim sm # interface GigabitEthernet2/0/0 ip address 10.0.1.2 255.255.255.0 isis enable 1 pim sm mpls mpls te mpls rsvp-te # interface LoopBack0 ip address 2.2.2.2 255.255.255.255 isis enable 1 pim sm # interface Tunnel10 ip address unnumbered interface LoopBack0 tunnel-protocol mpls te destination 4.4.4.4 mpls te tunnel-id 100 mpls te igp shortcut isis mpls te igp metric relative -10 isis enable 1 pim sm # pim C-BSR LoopBack0 C-RP LoopBack0 # return
Device C configuration file
# sysname DeviceC # router id 3.3.3.3 # multicast routing-enable # mpls lsr-id 3.3.3.3 mpls mpls te mpls rsvp-te mpls te cspf # isis 1 is-level level-2 cost-style wide network-entity 10.0000.0000.0003.00 traffic-eng level-2 # interface GigabitEthernet1/0/0 ip address 10.0.1.1 255.255.255.0 isis enable 1 pim sm mpls mpls te mpls rsvp-te # interface GigabitEthernet2/0/0 ip address 10.0.2.2 255.255.255.0 isis enable 1 pim sm mpls mpls te mpls rsvp-te # interface LoopBack0 ip address 3.3.3.3 255.255.255.255 isis enable 1 # return
Device D configuration file
# sysname DeviceD # router id 4.4.4.4 # multicast routing-enable # mpls lsr-id 4.4.4.4 mpls mpls te mpls rsvp-te mpls te cspf # isis 1 is-level level-2 cost-style wide network-entity 10.0000.0000.0004.00 traffic-eng level-2 # interface GigabitEthernet1/0/0 ip address 10.0.3.1 255.255.255.0 isis enable 1 pim sm # interface GigabitEthernet2/0/0 ip address 10.0.2.1 255.255.255.0 isis enable 1 pim sm mpls mpls te mpls rsvp-te # interface LoopBack0 ip address 4.4.4.4 255.255.255.255 isis enable 1 pim sm # return
Device E configuration file
# sysname DeviceE # router id 5.5.5.5 # multicast routing-enable # isis 1 is-level level-2 cost-style wide network-entity 10.0000.0000.0005.00 # interface GigabitEthernet1/0/0 ip address 10.0.3.3 255.255.255.0 isis enable 1 pim sm # interface GigabitEthernet2/0/0 ip address 192.168.3.1 255.255.255.0 isis enable 1 pim sm # interface LoopBack0 ip address 5.5.5.5 255.255.255.255 isis enable 1 pim sm # return