Supported Platforms
Example: Configuring MPLS on EX Series Switches
You can configure MPLS on EX Series switches to increase transport efficiency in your network. MPLS services can be used to connect various sites to a backbone network and to ensure better performance for low-latency applications such as voice over IP (VoIP) and other business-critical functions.
To implement MPLS on the switches, you must configure two provider edge (PE) switches—an ingress PE switch and an egress PE switch— and at least one provider (transit) switch. You can configure the customer edge (CE) interfaces on the PE switches of the MPLS network as either circuit cross-connect (CCC) or IP (family inet) interfaces.
This example shows how to configure an MPLS tunnel using a simple interface as a CCC:
![]() | Note: This example shows how to configure MPLS using a simple interface as a CCC. For information on configuring a tagged VLAN interface as a CCC, see Configuring an MPLS-Based VLAN CCC Using a Layer 2 VPN (CLI Procedure) or Configuring an MPLS-Based VLAN CCC Using a Layer 2 Circuit (CLI Procedure). |
Requirements
This example uses the following hardware and software components:
- Junos OS Release 10.1 or later for EX Series switches
- Three EX Series switches
Before you begin configuring MPLS, ensure that you have configured the routing protocol (OSPF or IS-IS) on the core interface and the loopback interface on all the switches. This example includes the configuration of OSPF on all the switches. For information on configuring IS-IS as the routing protocol, see the Junos OS Routing Protocols Configuration Guide.
Overview and Topology
This example includes an ingress or local PE switch, an egress or remote PE switch, and one provider switch. It includes CCCs that tie the customer edge interface of the local PE switch (PE-1) to the customer edge interface of the remote PE switch (PE-2). It also describes how to configure the core interfaces of the PE switches and the provider switch to support the transmission of the MPLS packets. In this example, the core interfaces that connect the local PE switch and the provider switch are individual interfaces, while the core interfaces that connect the remote PE switch and the provider switch are aggregated Ethernet interfaces.
![]() |
|
Figure 1 shows the topology used in this example.
Figure 1: Configuring MPLS on EX Series Switches

Table 1 shows the MPLS configuration components used for the ingress PE switch in this example.
Table 1: Components of the Ingress PE Switch in the Topology for MPLS with Interface-Based CCC
Property | Settings | Description |
---|---|---|
Local PE switch hardware | EX Series switch | PE-1 |
Loopback address | lo0 127.1.1.1/32 | Identifies PE-1 for interswitch communications. |
Routing protocol | ospf traffic-engineering | Indicates that this switch is using OSPF as the routing protocol and that traffic engineering is enabled. |
MPLS protocol and definition of label-switched path | mpls label-switched-path lsp_to_pe2_ge1 to 127.1.13 | Indicates that this PE switch is using the MPLS protocol with the specified LSP to reach the other PE switch (specified by the loopback address). The statement must also specify the core interfaces to be used for MPLS traffic. |
RSVP | rsvp | Indicates that this switch is using RSVP. The statement must specify the loopback address and the core interfaces that will be used for the RSVP session. |
Interface family | family inet family mpls family ccc | The logical units of the core interfaces are configured to belong to both family inet and family mpls. The logical unit of the customer edge interface is configured to belong to family ccc. |
Customer edge interface | ge-0/0/1 | Interface that connects this network to devices outside the network. |
Core interfaces | ge-0/0/5.0 and ge-0/0/6.0 with IP addresses 10.1.5.1/24 and 10.1.6.1/24 | Interfaces that connect to other switches within the MPLS network. |
CCC definition | connections interface ge-0/0/1.0 transmit-lsp lsp_to_pe2_ge1 | Associates the circuit cross-connect (CCC), ge-0/0/1, with the LSPs that have been defined on the local and remote PE switches. |
Table 2 shows the MPLS configuration components used for the egress PE switch in this example.
Table 2: Components of the Egress PE Switch in the Topology for MPLS with Interface-Based CCC
Property | Settings | Description |
---|---|---|
Remote PE switch hardware | EX Series switch | PE-2 |
Loopback address | lo0 127.1.1.3/32 | Identifies PE-2 for interswitch communications. |
Routing protocol | ospf traffic-engineering | Indicates that this switch is using OSPF as the routing protocol and that traffic engineering is enabled. |
MPLS protocol and definition of label-switched path | mpls label-switched-path lsp_to_pe1_ge1 to 127.1.1.1 | Indicates that this PE switch is using the MPLS protocol with the specified label-switched path (LSP) to reach the other PE switch. The statement must also specify the core interfaces to be used for MPLS traffic. |
RSVP | rsvp | Indicates that this switch is using RSVP. The statement must specify the loopback address and the core interfaces that will be used for the RSVP session. |
Interface family | family inet family mpls family ccc | The logical unit of the core interface is configured to belong to both family inet and family mpls. The logical unit of the customer edge interface is configured to belong to family ccc. |
Customer edge interface | ge-0/0/1 | Interface that connects this network to devices outside the network. |
Core interface | ae0 with IP address 10.1.9.2/24 | Aggregated Ethernet interface on PE-2 that connects to aggregated Ethernet interface ae0 of the provider switch and belongs to family mpls. |
CCC definition | connections remote-interface-switch ge-1-to-pe1 interface ge-0/0/1.0 transmit-lsp lsp_to_pe1_ge1; | Associates the CCC, ge-0/0/1, with the LSPs that have been defined on the local and remote PE switches. |
Table 3 shows the MPLS configuration components used for the provider switch in this example.
Table 3: Components of the Provider Switch in the Topology for MPLS with Interface-Based CCC
Property | Settings | Description |
---|---|---|
Provider switch hardware | EX Series switch | Transit switch within the MPLS network configuration. |
Loopback address | lo0 127.1.1.2/32 | Identifies provider switch for interswitch communications. |
Routing protocol | ospf traffic-engineering | Indicates that this switch is using OSPF as the routing protocol and that traffic engineering is enabled. |
MPLS protocol | mpls | Indicates that this switch is using the MPLS protocol. The statement must specify the core interfaces that will be used for MPLS traffic. |
RSVP | rsvp | Indicates that this switch is using RSVP. The statement must specify the loopback and the core interfaces that will be used for the RSVP session. |
Interface family | family inet family mpls | The logical units for the loopback interface and the core interfaces belong to family inet. The logical units of the core interfaces are also configured to belong to family mpls. |
Core interfaces | ge-0/0/5.0 and ge-0/0/6.0 with IP addresses 10.1.5.1/24 and 10.1.6.1/24 | Interfaces that connect the provider switch (P) to PE-1. Aggregated Ethernet interface on P that connects to aggregated Ethernet interface ae0 of PE-2. |
Configuring the Local PE Switch
CLI Quick Configuration
To quickly configure the local ingress PE switch, copy the following commands and paste them into the switch terminal window of PE-1:
[edit]
set protocols ospf traffic-engineering
set protocols ospf area 0.0.0.0
interface lo0.0
set protocols ospf area 0.0.0.0 interface ge-0/0/5.0
set protocols
ospf area 0.0.0.0 interface ge-0/0/6.0
set protocols mpls label-switched-path
lsp_to_pe2_ge1 to 127.1.1.3
set protocols mpls interface ge-0/0/5.0
set protocols
mpls interface ge-0/0/6.0
set protocols rsvp interface lo0.0
set protocols
rsvp interface ge-0/0/5.0
set protocols rsvp interface ge-0/0/6.0
set interfaces
lo0 unit 0 family inet address 127.1.1.1/32
set interfaces ge-0/0/5 unit
0 family inet address 10.1.5.1/24
set interfaces ge-0/0/6 unit 0
family inet address 10.1.6.1/24
set interfaces ge-0/0/5 unit 0 family
mpls
set interfaces ge-0/0/6 unit 0 family mpls
set interfaces ge-0/0/1 unit
0 family ccc
set protocols connections remote-interface-switch ge-1-to-pe2
interface ge-0/0/1.0
set protocols connections remote-interface-switch
ge-1-to-pe2 transmit-lsp lsp_to_pe2_ge1
set protocols connections
remote-interface-switch ge-1-to-pe2 receive-lsp lsp_to_pe1_ge1
Step-by-Step Procedure
To configure the local ingress PE switch:
- Configure OSPF with traffic engineering enabled:
[edit protocols]
user@switchPE-1# set ospf traffic-engineering - Configure OSPF on the loopback address and the core interfaces:
[edit protocols]
user@switchPE-1# set ospf area 0.0.0.0 interface lo0.0
user@switchPE-1# set ospf area 0.0.0.0 interface ge-0/0/5.0
user@switchPE-1# set ospf area 0.0.0.0 interface ge-0/0/6.0
- Configure MPLS on this PE switch (PE-1) with a label-switched
path (LSP) to the other PE switch (PE-2):
[edit protocols]
user@switchPE-1# set mpls label-switched-path lsp_to_pe2_ge1 to 127.1.1.3
- Configure MPLS on the core interfaces:
[edit protocols]
user@switchPE-1# set mpls interface ge-0/0/5.0
user@switchPE-1# set mpls interface ge-0/0/6.0
- Configure RSVP on the loopback interface and the core
interfaces:
[edit protocols]
user@switchPE-1# set rsvp interface lo0.0
user@switchPE-1# set rsvp interface ge-0/0/5.0
user@switchPE-1# set rsvp interface ge-0/0/6.0
- Configure IP addresses for the loopback interface and
the core interfaces:
[edit]
user@switchPE-1# set interfaces lo0 unit 0 family inet address 127.1.1.1/32
user@switchPE-1# set interfaces ge-0/0/5 unit 0 family inet address 10.1.5.1/24
user@switchPE-1# set interfaces ge-0/0/6 unit 0 family inet address 10.1.6.1/24 - Configure family mpls on the logical unit of
the core interface addresses:
[edit]
user@switchPE-1# set interfaces ge-0/0/5 unit 0 family mpls
user@switchPE-1# set interfaces ge-0/0/6 unit 0 family mpls - Configure the logical unit of the customer edge interface
as a CCC:
[edit interfaces ge-0/0/1 unit 0]
-user@PE-1# set family ccc - Configure the interface-based CCC from PE-1 to PE-2:
Note: You can also configure a tagged VLAN interface as a CCC. See Configuring an MPLS-Based VLAN CCC Using a Layer 2 VPN (CLI Procedure) or Configuring an MPLS-Based VLAN CCC Using a Layer 2 Circuit (CLI Procedure).
[edit protocols]
user@PE-1# set connections remote-interface-switch ge-1-to-pe2 interface ge-0/0/1.0
user@PE-1# set connections remote-interface-switch ge-1-to-pe2 transmit-lsp lsp_to_pe2_ge1
user@PE-1# set connections remote-interface-switch ge-1-to-pe2 receive-lsp lsp_to_pe1_ge1
Results
Display the results of the configuration:
user@switchPE-1> show configuration
Configuring the Remote PE Switch
CLI Quick Configuration
To quickly configure the remote PE switch, copy the following commands and paste them into the switch terminal window of PE-2:
[edit]
set protocols ospf traffic-engineering
set protocols ospf area 0.0.0.0
interface lo0.0
set protocols ospf area 0.0.0.0 interface ae0
set protocols
mpls label-switched-path lsp_to_pe1_ge1 to 127.1.1.1
set protocols
mpls interface ae0
set protocols rsvp interface lo0.0
set protocols
rsvp interface ae0
set interfaces lo0 unit 0 family inet address
127.1.1.3/32
set interfaces ae0 unit 0 family inet address 10.1.9.2/24
set interfaces
ae0 unit 0 family mpls
set interfaces ge-0/0/1 unit 0 family ccc
set protocols
connections remote-interface-switch ge-1-to-pe1 interface ge-0/0/1.0
set protocols
connections remote-interface-switch ge-1-to-pe1 transmit-lsp lsp_to_pe1_ge1
set protocols
connections remote-interface-switch ge-1-to-pe1 receive-lsp lsp_to_pe2_ge1
Step-by-Step Procedure
To configure the remote PE switch (PE-2):
- Configure OSPF with traffic engineering enabled:
[edit protocols]
user@switchPE-2# set ospf traffic-engineering - Configure OSPF on the loopback interface and the core
interface:
[edit protocols]
user@switchPE-2# set ospf area 0.0.0.0 interface lo0.0
user@switchPE-2# set ospf area 0.0.0.0 interface ae0
- Configure MPLS on this switch (PE-2) with a label-switched
path (LSP) to the other PE switch (PE-1):
[edit protocols]
user@switchPE-2# set mpls label-switched-path lsp_to_pe1_ge1 to 127.1.1.1
- Configure MPLS on the core interface:
[edit protocols]
user@switchPE-2# set mpls interface ae0 - Configure RSVP on the loopback interface and the core
interface:
[edit protocols]
ser@switchPE-2# set rsvp interface lo0.0
user@switchPE-2# set rsvp interface ae0 - Configure IP addresses for the loopback interface and
the core interface:
[edit]
user@switchPE-2# set interfaces lo0 unit 0 family inet address 127.1.1.3/32
user@switchPE-2# set interfaces ae0 unit 0 family inet address 10.1.9.2/24 - Configure family mpls on the logical unit of
the core interface:
[edit]
user@switchPE-2# set interfaces ae0 unit 0 family mpls
- Configure the logical unit of the customer edge interface
as a CCC:
[edit interfaces ge-0/0/1 unit 0]
user@PE-2# set family ccc - Configure the interface-based CCC from PE-2 to PE-1:
[edit protocols]
user@PE-2# set connections remote-interface-switch ge-1-to-pe1 interface ge-0/0/1.0
user@PE-2# set connections remote-interface-switch ge-1-to-pe1 transmit-lsp lsp_to_pe1_ge1
user@PE-2# set connections remote-interface-switch ge-1-to-pe1 receive-lsp lsp_to_pe2_ge1
Results
Display the results of the configuration:
user@switchPE-2> show configuration
Configuring the Provider Switch
CLI Quick Configuration
To quickly configure the provider switch, copy the following commands and paste them into the switch terminal window:
[edit]
set protocols ospf traffic-engineering
set protocols ospf area 0.0.0.0
interface lo0.0
set protocols ospf area 0.0.0.0 interface ge-0/0/5.0
set protocols
ospf area 0.0.0.0 interface ge-0/0/6.0
set protocols ospf area 0.0.0.0
interface ae0
set protocols mpls interface ge-0/0/5.0
set protocols
mpls interface ge-0/0/6.0
set protocols mpls interface ae0
set protocols
rsvp interface lo0.0
set protocols rsvp interface ge-0/0/5.0
set protocols
rsvp interface ge-0/0/6.0
set protocols rsvp interface ae0
set interfaces
lo0 unit 0 family inet address 127.1.1.2/32
set interfaces ge-0/0/5 unit
0 family inet address 10.1.5.1/24
set interfaces ge-0/0/6 unit 0
family inet address 10.1.6.1/24
set interfaces ae0 unit 0 family
inet address 10.1.9.1/24
set interfaces ge-0/0/5 unit 0 family mpls
set interfaces
ge-0/0/6 unit 0 family mpls
set interfaces ae0 unit 0 family mpls
Step-by-Step Procedure
To configure the provider switch:
- Configure OSPF with traffic engineering enabled:
[edit protocols]
user@switchP# set ospf traffic-engineering - Configure OSPF on the loopback interface and the core
interfaces:
[edit protocols]
user@switchP# set ospf area 0.0.0.0 interface lo0.0
user@switchP# set ospf area 0.0.0.0 interface ge-0/0/5
user@switchP# set ospf area 0.0.0.0 interface ge-0/0/6
user@switchP# set ospf area 0.0.0.0 interface ae0 - Configure MPLS on the core interfaces on the switch:
[edit protocols]
user@switchP# set mpls interface ge-0/0/5
user@switchP# set mpls interface ge-0/0/6
user@switchP# set mpls interface ae0 - Configure RSVP on the loopback interface and the core
interfaces:
[edit protocols]
user@switchP# set rsvp interface lo0.0
user@switchP# set rsvp interface ge-0/0/5
user@switchP# set rsvp interface ge-0/0/6
user@switchP# set rsvp interface ae0
- Configure IP addresses for the loopback interface and
the core interfaces:
[edit]
user@switchP# set interfaces lo0 unit 0 family inet address 127.1.1.2/32
user@switchP# set interfaces ge-0/0/5 unit 0 family inet address 10.1.5.1/24
user@switchP# set interfaces ge-0/0/6 unit 0 family inet address 10.1.6.1/24
user@switchP# set interfaces ae0 unit 0 family inet address 10.1.9.1/24 - Configure family mpls on the logical unit of
the core interface addresses:
[edit]
user@switchP# set interfaces ge-0/0/5 unit 0 family mpls
user@switchP# set interfaces ge-0/0/6 unit 0 family mpls
user@switchP# set interfaces ae0 unit 0 family mpls
Results
Display the results of the configuration:
user@switchP> show configuration
Verification
To confirm that the configuration is working properly, perform these tasks:
- Verifying the Physical Layer on the Switches
- Verifying the Routing Protocol
- Verifying the Core Interfaces Being Used for MPLS Traffic
- Verifying the Status of the RSVP Sessions
- Verifying the Assignment of Interfaces for MPLS Label Operations
- Verifying the Status of the CCC
Verifying the Physical Layer on the Switches
Purpose
Verify that the interfaces are up. Perform this verification task on each of the switches.
Action
user@switchPE-1> show interfaces terse
Interface Admin Link Proto Local Remote ge-0/0/0 up up ge-0/0/0.0 up up eth-switch ge-0/0/1 up up ge-0/0/1.0 up up ccc ge-0/0/2 up up ge-0/0/2.0 up up eth-switch ge-0/0/3 up up ge-0/0/3.0 up up eth-switch ge-0/0/4 up up ge-0/0/4.0 up up eth-switch ge-0/0/5 up up ge-0/0/5.0 up up inet 10.1.5.1/24 mpls ge-0/0/6 up up ge-0/0/6.0 up up inet 10.1.6.1/24 mpls
Meaning
The show interfaces terse command displays status information about the Gigabit Ethernet interfaces on the switch. This output verifies that the interfaces are up. The output for the protocol family (Proto column) shows that interface ge-0/0/1.0 is configured as a circuit cross-connect. The output for the protocol family of the core interfaces (ge-0/0/5.0 and ge-0/0/6.0) shows that these interfaces are configured as both inet and mpls. The Local column for the core interfaces shows the IP address configured for these interfaces.
Verifying the Routing Protocol
Purpose
Verify the state of the configured routing protocol. Perform this verification task on each of the switches. The state must be Full.
Action
user@switchPE-1> show ospf neighbor
Address Interface State ID Pri Dead 127.1.1.2 ge—0/0/5 Full 10.10.10.10 128 39
Meaning
The show ospf neighbor command displays the status of the routing protocol. This output shows that the state is Full, meaning that the routing protocol is operating correctly—that is, hello packets are being exchanged between directly connected neighbors.
Verifying the Core Interfaces Being Used for MPLS Traffic
Purpose
Verify that the state of the MPLS interface is Up. Perform this verification task on each of the switches.
Action
user@switchPE-1>
show mpls interface
Interface State Administrative groups ge—0/0/5 Up <none>
ge—0/0/6 Up <none>
Meaning
The show mpls interface command displays the status of the core interfaces that have been configured to belong to family mpls. This output shows that the interface configured to belong to family mpls is Up.
Verifying the Status of the RSVP Sessions
Purpose
Verify the status of the RSVP sessions. Perform this verification task on each of the switches.
Action
user@switchPE-1> show rsvp session
Ingress RSVP: 1 sessions To From State Rt Style Labelin Labelout LSPname 127.1.13 127.1.1.1 Up 0 1 FF - 300064 lsp_to_pe2_ge1 Total 1 displayed, Up 1, Down 0 Egress RSVP: 1 sessions To From State Rt Style Labelin Labelout LSPname 127.1.1.1 127.1.1.3 Up 0 1 FF 299968 lsp_to_pe1_ge1 Total 1 displayed, Up 1, Down 0 Transit RSVP: 0 sessions Total 0 displayed, Up 0, Down 0
Meaning
This output confirms that the RSVP sessions are Up.
Verifying the Assignment of Interfaces for MPLS Label Operations
Purpose
Verify which interface is being used as the beginning of the CCC and which interface is being used to push the MPLS packet to the next hop. Perform this task only on the PE switches.
Action
user@switchPE-1>
show route forwarding-table family mpls
MPLS: Destination Type RtRef Next hop Type Index NhRef Netif default perm 0 dscd 50 1 0 user 0 recv 49 3 1 user 0 recv 49 3 2 user 0 recv 49 3 299776 user 0 Pop 541 2 ge-0/0/1.0 ge-0/0/1.0 (CCC) user 0 2.0.0.1 Push 299792 540 2 ge-0/0/5.0
Meaning
This output shows that the CCC has been set up on interface ge-0/0/1.0. The switch receives ingress traffic on ge-0/0/1.0 and pushes label 299792 onto the packet, which goes out through interface ge-0/0/5.0. The output also shows when the switch receives an MPLS packet with label 29976, it pops the label and sends the packet out through interface ge-0/0/1.0
After you have checked the local PE switch, run the same command on the remote PE switch.
Verifying the Status of the CCC
Purpose
Verify the status of the CCC. Perform this task only on the PE switches.
Action
user@switchPE-1>
show connections
CCC and TCC connections [Link Monitoring On] Legend for status (St) Legend for connection types UN -- uninitialized if-sw: interface switching NP -- not present rmt-if: remote interface switching WE -- wrong encapsulation lsp-sw: LSP switching DS -- disabled tx-p2mp-sw: transmit P2MP switching Dn -- down rx-p2mp-sw: receive P2MP switching -> -- only outbound conn is up <- -- only inbound conn is up Legend for circuit types Up -- operational intf -- interface RmtDn -- remote CCC down tlsp -- transmit LSP Restart -- restarting rlsp -- receive LSP Connection/Circuit Type St Time last up # Up trans ge1-to-pe2 rmt-if Up Feb 17 05:00:09 1 ge-0/0/1.0 intf Up lsp_to_pe1_ge1 tlsp Up lsp_to_pe2_ge1 rlsp Up
Meaning
The show connections command displays the status of the CCC connections. This output verifies that the CCC interface and its associated transmit and receive LSPs are Up. After you have checked the local PE switch, run the same command on the remote PE switch.