Once your MPLS Traffic Engineering (TE) tunnel is up and running, it won’t be used automatically. It acts like any other physical interface or (GRE) tunnel. You have to route traffic down your tunnel. One of the options we can use is to use a static route. In the MPLS TE IS-IS configuration lesson, we configured an MPLS TE topology with a tunnel interface. In this lesson, we’ll route some traffic down the tunnel using a static route.
Configuration
Let’s see how we configure a static route. This is the topology I’ll use:
Routers PE1, P1, P2, P3, and PE2 run MPLS TE. We have a TE tunnel from PE1 to PE2. All routers run IOSv version 15.9(3)M4.
- Configurations
- CE1
- CE2
- P1
- P2
- P3
- PE1
- PE2
Want to take a look for yourself? Here you will find the startup configuration of each device.
Let’s take a look at our tunnel:
PE1#show mpls traffic-eng tunnels Tunnel 1
Name: PE1_t1 (Tunnel1) Destination: 6.6.6.6
Status:
Admin: up Oper: up Path: valid Signalling: connected
path option 1, type dynamic (Basis for Setup, path weight 20)
Config Parameters:
Bandwidth: 750 kbps (Global) Priority: 7 7 Affinity: 0x0/0xFFFF
Metric Type: TE (default)
AutoRoute: disabled LockDown: disabled Loadshare: 750 bw-based
auto-bw: disabled
Active Path Option Parameters:
State: dynamic path option 1 is active
BandwidthOverride: disabled LockDown: disabled Verbatim: disabled
InLabel : -
OutLabel : GigabitEthernet0/1, 26
RSVP Signalling Info:
Src 2.2.2.2, Dst 6.6.6.6, Tun_Id 1, Tun_Instance 18
RSVP Path Info:
My Address: 192.168.23.2
Explicit Route: 192.168.23.3 192.168.36.3 192.168.36.6 6.6.6.6
Record Route: NONE
Tspec: ave rate=750 kbits, burst=1000 bytes, peak rate=750 kbits
RSVP Resv Info:
Record Route: NONE
Fspec: ave rate=750 kbits, burst=1000 bytes, peak rate=750 kbits
Shortest Unconstrained Path Info:
Path Weight: 20 (TE)
Explicit Route: 192.168.23.2 192.168.23.3 192.168.36.3 192.168.36.6
6.6.6.6
History:
Tunnel:
Time since created: 4 minutes
Time since path change: 3 minutes, 7 seconds
Number of LSP IDs (Tun_Instances) used: 18
Current LSP:
Uptime: 3 minutes, 7 seconds
The tunnel is up and running and shows up as connected. The tunnel goes through P1. Let’s check our routing table:
PE1#show ip route
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
a - application route
+ - replicated route, % - next hop override, p - overrides from PfR
Gateway of last resort is not set
1.0.0.0/32 is subnetted, 1 subnets
i L2 1.1.1.1 [115/20] via 192.168.12.1, 00:06:10, GigabitEthernet0/0
2.0.0.0/32 is subnetted, 1 subnets
C 2.2.2.2 is directly connected, Loopback0
3.0.0.0/32 is subnetted, 1 subnets
i L2 3.3.3.3 [115/20] via 192.168.23.3, 00:05:46, GigabitEthernet0/1
4.0.0.0/32 is subnetted, 1 subnets
i L2 4.4.4.4 [115/20] via 192.168.24.4, 00:06:10, GigabitEthernet0/2
5.0.0.0/32 is subnetted, 1 subnets
i L2 5.5.5.5 [115/30] via 192.168.24.4, 00:06:00, GigabitEthernet0/2
6.0.0.0/32 is subnetted, 1 subnets
i L2 6.6.6.6 [115/30] via 192.168.23.3, 00:05:19, GigabitEthernet0/1
7.0.0.0/32 is subnetted, 1 subnets
i L2 7.7.7.7 [115/40] via 192.168.23.3, 00:05:19, GigabitEthernet0/1
192.168.12.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.12.0/24 is directly connected, GigabitEthernet0/0
L 192.168.12.2/32 is directly connected, GigabitEthernet0/0
192.168.23.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.23.0/24 is directly connected, GigabitEthernet0/1
L 192.168.23.2/32 is directly connected, GigabitEthernet0/1
192.168.24.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.24.0/24 is directly connected, GigabitEthernet0/2
L 192.168.24.2/32 is directly connected, GigabitEthernet0/2
i L2 192.168.36.0/24 [115/20] via 192.168.23.3, 00:05:46, GigabitEthernet0/1
i L2 192.168.45.0/24 [115/20] via 192.168.24.4, 00:06:10, GigabitEthernet0/2
i L2 192.168.56.0/24 [115/30] via 192.168.24.4, 00:05:19, GigabitEthernet0/2
[115/30] via 192.168.23.3, 00:05:19, GigabitEthernet0/1
i L2 192.168.67.0/24 [115/30] via 192.168.23.3, 00:05:19, GigabitEthernet0/1
At the moment, we don’t use this tunnel at all. Let’s say I want to reach the loopback interface of CE2. We can create a static route like this:
PE1(config)#ip route 7.7.7.7 255.255.255.255 Tunnel 1
That’s all there is to it.
Verification
Let’s verify our work. First, we’ll look at the routing table:
PE1#show ip route 7.7.7.7
Routing entry for 7.7.7.7/32
Known via "static", distance 1, metric 0 (connected)
Routing Descriptor Blocks:
* directly connected, via Tunnel1
Route metric is 0, traffic share count is 1
This looks good. Traffic destined for 7.7.7.7 goes through the tunnel. If you want to see all destinations that use the tunnel, then you can use the show mpls forwarding-table
command:
PE1#show mpls forwarding-table
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16 No Label 1.1.1.1/32 0 Gi0/0 192.168.12.1
17 Pop Label 4.4.4.4/32 0 Gi0/2 192.168.24.4
18 Pop Label 192.168.45.0/24 0 Gi0/2 192.168.24.4
19 22 5.5.5.5/32 0 Gi0/2 192.168.24.4
20 25 192.168.56.0/24 0 Gi0/1 192.168.23.3
23 192.168.56.0/24 0 Gi0/2 192.168.24.4
21 Pop Label 3.3.3.3/32 0 Gi0/1 192.168.23.3
22 Pop Label 192.168.36.0/24 0 Gi0/1 192.168.23.3
23 27 6.6.6.6/32 0 Gi0/1 192.168.23.3
24 [T] Pop Label 7.7.7.7/32 0 Tu1 point2point
25 29 192.168.67.0/24 0 Gi0/1 192.168.23.3
[T] Forwarding through a LSP tunnel.
View additional labelling info with the 'detail' option
The [T]
tells us that we reach 7.7.7.7 through the tunnel. If you want to see some detail, add the detail
parameter:
PE1#show mpls forwarding-table 7.7.7.7 detail
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
24 Pop Label 7.7.7.7/32 0 Tu1 point2point
MAC/Encaps=14/18, MRU=1500, Label Stack{26}, via Gi0/1
5254001A70435254001F16328847 0001A000
No output feature configured
The output above tells us we use the tunnel interface. You can also look at the CEF table directly:
PE1#show ip cef 7.7.7.7 detail
7.7.7.7/32, epoch 0, flags [attached]
dflt local label info: global/24 [0x1]
attached to Tunnel1
Let’s try a trace:
PE1#traceroute 7.7.7.7 source Loopback 0 numeric probe 1
Type escape sequence to abort.
Tracing the route to 7.7.7.7
VRF info: (vrf in name/id, vrf out name/id)
1 192.168.23.3 [MPLS: Label 26 Exp 0] 4 msec
2 192.168.36.6 4 msec
3 192.168.67.7 6 msec
Or send some pings:
PE1#ping 7.7.7.7 repeat 100
Type escape sequence to abort.
Sending 100, 100-byte ICMP Echos to 7.7.7.7, timeout is 2 seconds:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
If you look at the tunnel, you can see the number of sent packets:
PE1#show interfaces Tunnel 1 | include output
Last input never, output 00:00:02, output hang never
Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0
5 minute output rate 1000 bits/sec, 1 packets/sec
130 packets output, 11341 bytes, 0 underruns
0 output errors, 0 collisions, 0 interface resets
0 output buffer failures, 0 output buffers swapped out
That’s all there is to it. Once your tunnel is up and running, a static route works the same as for any other interface.
- Configurations
- CE1
- CE2
- P1
- P2
- P3
- PE1
- PE2
Want to take a look for yourself? Here you will find the final configuration of each device.
Conclusion
You have learned that you can use a static route to send traffic down an MPLS TE tunnel. This can be a simple solution if you want to send specific traffic to a specific destination down the TE tunnel. If you have any questions, please leave a comment.
- Unit 1: Introduction
- Unit 2: LDP (Label Distribution Protocol)
- Unit 3: MPLS VPN
- VRFs (Virtual Routing and Forwarding)
- MPLS L3 VPN Explained
- MPLS L3 VPN Configuration
- MPLS L3 VPN BGP Allow AS in
- MPLS L3 VPN BGP AS Override
- MPLS L3 VPN PE-CE RIP
- MPLS L3 VPN PE-CE EIGRP
- MPLS L3 VPN PE-CE OSPF
- MPLS L3 VPN PE-CE OSPF Default Route
- MPLS L3 VPN PE-CE OSPF Global Default Route
- MPLS L3 VPN PE-CE OSPF Sham Link
- VRF Lite Route Leaking
- MPLS VPN Extranet Route Leaking
- MPLS VPN VRF Export Map
- MPLS VPN VRF Import Map
- MPLS over FlexVPN
- Unit 4: MPLS L2 Encapsulation
- Unit 5: IPv6 MPLS
- Unit 6: MPLS Traffic Engineering (TE)
- Introduction to MPLS Traffic Engineering (TE)
- MPLS Traffic Engineering (TE) IS-IS Configuration
- MPLS Traffic Engineering (TE) OSPF Configuration
- MPLS TE RSVP-TE
- MPLS TE Static Routes
- MPLS TE Policy Based Routing (PBR)
- MPLS TE Autoroute Announce
- MPLS TE Autoroute Destination
- MPLS TE Autoroute Metric
- MPLS TE Unequal Cost Load Balancing
- MPLS TE Load Balancing between IGP and TE
- MPLS TE Forwarding Adjacency
- MPLS TE Path Options Explicit
- MPLS TE Class-Based Tunnel Selection (CBTS)
- MPLS TE Metric
- MPLS TE Setup and Hold Priority
- MPLS TE Attribute Flag and Affinity
- MPLS TE Reoptimization
- MPLS TE Fast Reroute (FRR)
- MPLS TE Fast Reroute Path Link Protection
- MPLS TE Fast Reroute Path Node Protection
- MPLS TE FRR RSVP Hello Support
- MPLS TE DiffServ Aware (DS-TE) Traditional
- MPLS TE Diffserv-Aware (DS-TE) IETF Mode
- MPLS VPN over MPLS TE Tunnels
- MPLS TE Per VRF TE tunnel