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

Some basic commands for MPLS Traffic Engineering in IOS XR and IOS

I would like share some basic commands for MPLS Traffic Engineering in IOS XR and IOS

First of all While planning to implement MPLS Traffic Engineering there is a check list which you need to fill.

Your LDP neighbor relation ship between the routers.

Your IGP must be ready(MPLS traffic engineering currently supports only a single IS-IS level or OSPF area)

You should have enabled the MPLS traffic engineering globally and on the interfaces(IOS)

MPLS Traffic Engineering Tunnel


This document includes only basic commands of MPLS Traffic Engineering and the ain intension is to show how traffic engineering can be configured on IOS XR and IOS

Here are the commands for IOS

ip cef


mpls traffic-eng tunnels

mpls label protocol ldp


interface Loopback0

ip address X.X.X.X

ip router isis  (or) ip ospf 1 area 0

interface Ethernet1/0

ip address X.X.X.Y

ip router isis  (or) ip ospf 1 area 0

mpls ip (MPLS LDP neighbor relation ship, here which I have used is default and non cisco proprietory protocol ldp)

mpls label protocol ldp

mpls traffic-eng tunnels (Enabling MPLS traffic engineering)

ip rsvp bandwidth 25000(RSVP can be enabled on interfaces with this command)

// It goes similarly all the required interfaces//

router isis               //Making ISIS ready for Traffic Engineering//

net 47.0001.0000.0000.0005.00

is-type level-1(Here I am Using ISIS level 1 as I have all my routers in same area)

metric-style wide (for carrying traffic engineering tlvs)


address-family ipv6



mpls traffic-eng router-id Loopback0

mpls traffic-eng level-1             //as my isis is level 1//

mpls traffic-eng multicast-intact // If you are already running the multicasting this command is necesary//

for ospf

router ospf 1

mpls traffic-eng router-id Loopback0

mpls traffic-eng area 0

mpls traffic-eng multicast-intact

I am using Explicit path (here you should mention the ip address of the interfaces for traffic engineering tunnel to traverse)

ip explicit-path name XYZ enable

next-address X.X.X.Y

next-address Y.Y.Y.Z

next-address Z.Z.Z.Z


Now the tunnel

interface Tunnel26

ip unnumbered Loopback0 (I used loopback 0 ip as tunnel ip)

tunnel mode mpls traffic-eng (making the mode as mpls traffic engineering)

tunnel destination Z.Z.Z.Z (Tail end Routers loopback IP)

tunnel mpls traffic-eng priority 7 7 (default priority)

tunnel mpls traffic-eng bandwidth 20000 (If required)

tunnel mpls traffic-eng path-option 10 explicit name 26 (You may also use auto route announce and other options)

Now you can route as if you would like to..

I am using a static route for the specific destination to travel

Ip route z.z.z.z tunnel XYZ


rsvp (for enabling RSVP)
int gig 0/0
bandwidth 25000
int gig 0/1
bandwidth 25000

mpls traffic-eng
int gig 0/0.2

int gig 0/0.5

router isis isp //ISIS//
metric-style wide
add ipv4
mpls traffic-engineering router-id loopback 0
mpls traffic-engineering level-1
mpls  traffic-engmulticast-intact


router ospf 1

router-id 192.168.X.X

mpls traffic-eng router-id loopback 0

area 0

mpls traffic-eng

mpls traffic-eng multicast-intact

int tunnel-te 2
ipv4 unnumbered loopback 0
destinaton c.c.c.c (Tail end loopback ip)
signalling bandwidth 5000
path-option 1 explicit name p2

explicit-path name p2
index 10 next-address strict ipv4 unicast x.x.x.y
index 20 next-address strict ipv4 unicast y.y.y.z
index 10 next-address strict ipv4 unicast z.z.z.z

router static
add ipv4 uni
z.z.z.p/32 tunnel-te2