The document discusses configuring static MPLS LSPs across a network topology consisting of routers in Jakarta, Semarang, Surabaya, Denpasar, Bandung and Makasar. MPLS is configured to establish a unidirectional LSP from Jakarta to Makasar via Semarang, Surabaya and Denpasar, and a returning LSP from Makasar to Jakarta via Denpasar and Bandung. Each router performs label imposition or swapping operations to propagate the MPLS labels across the network, as seen in the traceroute outputs. OSPF is also configured for IGP routing between the routers.
1. Juniper MPLS Best Practice
Part 1
Static LSP Configuration and understanding mpls.0 table
Febrian Setiadi - 860063
2. What is MPLS?
Forwarding technique using label value
Virtual Circuit for IP
Unidirectional path
Tunel through the network
Mapping IP Prefixes to LSPs
Labels are placed between L2 header and L2
data
Label stacking is possible
3. Lab Topology
Loopbacks
Jakarta : 192.168.8.1
Bandung : 192.168.12.1
Semarang : 192.168.16.1
Surabaya : 192.168.36.1
Denpasar : 192.168.40.1
Makasar : 192.168.44.1
4. IGP Configuration
After IGP already converged, were ready to configure static LSP
jkt@Lab:Jakarta> show configuration protocols ospf
area 0.0.0.0 {
interface all;
}
smg@Lab:Semarang> show configuration protocols ospf
area 0.0.0.0 {
interface all;
}
sby@Lab:Surabaya> show configuration protocols ospf
area 0.0.0.0 {
interface all;
}
bdg@Lab:Bandung> show configuration protocols ospf
area 0.0.0.0 {
interface all;
}
dps@Lab:Denpasar> show configuration protocols ospf
area 0.0.0.0 {
interface all;
}
mks@Lab:Makasar> show configuration protocols ospf
area 0.0.0.0 {
interface all;
}
Preconfigured
with OSPF, all
routers belong
to area 0
5. LSP Configuration
Well setup LSP from Jakarta to Makasar, via Semarang, Surabaya and Makasar
And returning LSP path from Makasar to Jakarta via Denpasar and Bandung
6. LSP Configuration
Jakarta performs label imposition (PUSH) , this label should be received by Semarang
jkt@Lab:Jakarta> show
configuration protocols mpls
static-path inet {
192.168.44.1/32 {
next-hop 10.0.11.1;
push 1000001;
}
}
interface all;
7. LSP Configuration
Semarang performs label swapping 1000001 with 1000002
smg@Lab:Semarang> show
configuration protocols mpls
interface all;
interface em1.11 {
label-map 1000001 {
next-hop 10.0.0.2;
swap 1000002;
}
}
smg@Lab:Semarang> show route table mpls.0
mpls.0: 4 destinations, 4 routes (4 active, 0 holddown, 0
hidden)
+ = Active Route, - = Last Active, * = Both
0 *[MPLS/0] 01:51:53, metric 1
Receive
1 *[MPLS/0] 01:51:53, metric 1
Receive
2 *[MPLS/0] 01:51:53, metric 1
Receive
1000001 *[Static/5] 01:51:53
> to 10.0.0.2 via em1.0, Swap 1000002
Whats on mpls.0 table
8. LSP Configuration
Surabaya performs label swapping 100002 with 100003
sby@Lab:Surabaya> show
configuration protocols mpls
interface all;
interface em2.0 {
label-map 1000002 {
next-hop 10.0.4.2;
swap 1000003;
}
}
sby@Lab:Surabaya> show route table mpls.0
mpls.0: 4 destinations, 4 routes (4 active, 0 holddown, 0
hidden)
+ = Active Route, - = Last Active, * = Both
0 *[MPLS/0] 02:07:58, metric 1
Receive
1 *[MPLS/0] 02:07:58, metric 1
Receive
2 *[MPLS/0] 02:07:58, metric 1
Receive
1000002 *[Static/5] 01:56:46
> to 10.0.4.2 via em1.4, Swap 1000003
Whats on mpls.0 table
9. LSP Configuration
Denpasar performs label swapping 1000003 with 0 Penultimate Hop Popping
dps@Lab:Denpasar> show
configuration protocols mpls
interface all;
interface em1.60 {
label-map 1000003 {
next-hop 10.0.60.2;
swap 0;
}
}
dps@Lab:Denpasar> show route table mp
mpls.0: 6 destinations, 6 routes (6 active, 0 holddown, 0
hidden)
+ = Active Route, - = Last Active, * = Both
0 *[MPLS/0] 02:19:06, metric 1
Receive
1 *[MPLS/0] 02:19:06, metric 1
Receive
2 *[MPLS/0] 02:19:06, metric 1
Receive
1000003 *[Static/5] 02:04:06
> to 10.0.60.2 via em1.60, Swap 0
1000003(S=0) *[Static/5] 02:04:06
> to 10.0.60.2 via em1.60, Pop
Whats on mpls.0 table
10. LSP Configuration
Reachability from Jakarta
Traceroute result from Jakarta
jkt@Lab:Jakarta> show route 192.168.44.1
inet.0: 17 destinations, 18 routes (17 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
192.168.44.1/32 *[Static/5] 02:02:10
> to 10.0.11.1 via em2.11, Push 1000001
[OSPF/10] 02:55:26, metric 3
> to 10.0.80.2 via em1.80
to 10.0.11.1 via em2.11
jkt@Lab:Jakarta> traceroute 192.168.44.1
traceroute to 192.168.44.1 (192.168.44.1), 30 hops max, 40 byte packets
1 SMG (10.0.11.1) 0.817 ms 0.750 ms 0.590 ms
MPLS Label=1000001 CoS=0 TTL=1 S=1
2 SBY (10.0.0.2) 1.096 ms 1.061 ms 1.308 ms
MPLS Label=1000002 CoS=0 TTL=1 S=1
3 DPS (10.0.4.2) 1.459 ms 1.347 ms 1.286 ms
MPLS Label=1000003 CoS=0 TTL=1 S=1
4 MKS (192.168.44.1) 2.073 ms 1.642 ms 1.538 ms
11. LSP vs IGP
OSPF Reachability
Using Static LSP
jkt@Lab:Jakarta> show route 192.168.44.1
192.168.44.1/32 *[OSPF/10] 03:17:24, metric 3
> to 10.0.80.2 via em1.80
to 10.0.11.1 via em2.11
jkt@Lab:Jakarta> traceroute 192.168.44.1
traceroute to 192.168.44.1 (192.168.44.1), 30 hops max, 40 byte packets
1 BDG (10.0.80.2) 0.933 ms 0.701 ms 0.684 ms
2 DPS (10.0.70.2) 1.107 ms 1.011 ms 0.988 ms
3 MKS (192.168.44.1) 1.477 ms 1.377 ms 1.500 ms
jkt@Lab:Jakarta> traceroute 192.168.44.1
traceroute to 192.168.44.1 (192.168.44.1), 30 hops max, 40 byte packets
1 SMG (10.0.11.1) 0.817 ms 0.750 ms 0.590 ms
MPLS Label=1000001 CoS=0 TTL=1 S=1
2 SBY (10.0.0.2) 1.096 ms 1.061 ms 1.308 ms
MPLS Label=1000002 CoS=0 TTL=1 S=1
3 DPS (10.0.4.2) 1.459 ms 1.347 ms 1.286 ms
MPLS Label=1000003 CoS=0 TTL=1 S=1
4 MKS (192.168.44.1) 2.073 ms 1.642 ms 1.538 ms
12. Summary
While using IGP (OSPF)
jkt@Lab:Jakarta> show route 192.168.44.1
192.168.44.1/32 *[OSPF/10] 03:17:24, metric 3
> to 10.0.80.2 via em1.80
to 10.0.11.1 via em2.11
jkt@Lab:Jakarta> traceroute 192.168.44.1
traceroute to 192.168.44.1 (192.168.44.1), 30 hops max, 40 byte packets
1 BDG (10.0.80.2) 0.933 ms 0.701 ms 0.684 ms
2 DPS (10.0.70.2) 1.107 ms 1.011 ms 0.988 ms
3 MKS (192.168.44.1) 1.477 ms 1.377 ms 1.500 ms
Will traverse through
Bandung and Denpasar to
reach Makasar
13. Summary
LSP Configured
jkt@Lab:Jakarta> traceroute 192.168.44.1
traceroute to 192.168.44.1 (192.168.44.1), 30 hops max, 40 byte packets
1 SMG (10.0.11.1) 1.618 ms 0.807 ms 0.679 ms
MPLS Label=1000001 CoS=0 TTL=1 S=1
2 SBY (10.0.0.2) 1.088 ms 1.292 ms 1.011 ms
MPLS Label=1000002 CoS=0 TTL=1 S=1
3 DPS (10.0.4.2) 1.307 ms 1.412 ms 1.295 ms
MPLS Label=1000003 CoS=0 TTL=1 S=1
4 MKS (192.168.44.1) 1.635 ms 1.799 ms 1.592 ms
Will traverse through
Semarang, Surabaya and
Denpasar to reach Makasar
14. Summary
Returning Path (Omitting Transit Configuration)
mks@Lab:Makasar> traceroute 192.168.8.1
traceroute to 192.168.8.1 (192.168.8.1), 30 hops max, 40 byte packets
1 DPS (10.0.60.1) 1.056 ms 0.876 ms 0.805 ms
MPLS Label=1000100 CoS=0 TTL=1 S=1
2 BDG (10.0.70.1) 1.142 ms 1.160 ms 1.153 ms
MPLS Label=1000101 CoS=0 TTL=1 S=1
3 JKT (192.168.8.1) 1.619 ms 1.598 ms 1.455 ms
mks@Lab:Makasar> show
configuration protocols mpls
static-path inet {
192.168.8.1/32 {
next-hop 10.0.60.1;
push 1000100;
}
}
interface all;
15. Appendix Complete Configuration
jkt@Lab:Jakarta> show configuration
interfaces {
em1 {
unit 80 {
vlan-id 80;
family inet {
address 10.0.80.1/30;
}
family mpls;
}
}
em2 {
unit 11 {
vlan-id 11;
family inet {
address 10.0.11.2/30;
}
family mpls;
}
protocols {
mpls {
static-path inet {
192.168.44.1/32 {
next-hop 10.0.11.1;
push 1000001;
}
}
interface all;
}
ospf {
area 0.0.0.0 {
interface all;
}
}
}
16. smg@Lab:Semarang> show configuration
interfaces {
em1 {
unit 0 {
vlan-id 0;
family inet {
address 10.0.0.1/30;
}
family mpls;
}
unit 3 {
vlan-id 3;
family inet {
address 10.0.3.1/30;
}
family mpls;
}
unit 11 {
vlan-id 11;
family inet {
address 10.0.11.1/30;
}
family mpls;
protocols {
mpls {
interface all;
interface em1.11 {
label-map 1000001 {
next-hop 10.0.0.2;
swap 1000002;
}
}
}
ospf {
area 0.0.0.0 {
interface all;
}
}
}
17. bdg@Lab:Bandung> show configuration
interfaces {
em1 {
unit 70 {
vlan-id 70;
family inet {
address 10.0.70.1/30;
}
family mpls;
}
}
em2 {
unit 3 {
vlan-id 3;
family inet {
address 10.0.3.2/30;
}
family mpls;
}
unit 80 {
vlan-id 80;
family inet {
address 10.0.80.2/30;
protocols {
mpls {
interface all;
interface em1.70 {
label-map 1000101 {
next-hop 10.0.80.1;
swap 0;
}
}
}
ospf {
area 0.0.0.0 {
interface all;
}
}
}
18. sby@Lab:Surabaya> show configuration
interfaces {
em1 {
unit 4 {
vlan-id 4;
family inet {
address 10.0.4.1/30;
}
family mpls;
}
unit 9 {
vlan-id 9;
family inet {
address 10.0.9.1/30;
}
family mpls;
}
}
em2 {
unit 0 {
vlan-id 0;
family inet {
address 10.0.0.2/30;
protocols {
mpls {
interface all;
interface em2.0 {
label-map 1000002 {
next-hop 10.0.4.2;
swap 1000003;
}
}
}
ospf {
area 0.0.0.0 {
interface all;
}
}
}
19. sby@Lab:Surabaya> show configuration
interfaces {
em1 {
unit 4 {
vlan-id 4;
family inet {
address 10.0.4.1/30;
}
family mpls;
}
unit 9 {
vlan-id 9;
family inet {
address 10.0.9.1/30;
}
family mpls;
}
}
em2 {
unit 0 {
vlan-id 0;
family inet {
address 10.0.0.2/30;
protocols {
mpls {
interface all;
interface em2.0 {
label-map 1000002 {
next-hop 10.0.4.2;
swap 1000003;
}
}
}
ospf {
area 0.0.0.0 {
interface all;
}
}
}
20. dps@Lab:Denpasar> show configuration
interfaces {
em1 {
unit 60 {
vlan-id 60;
family inet {
address 10.0.60.1/30;
}
family mpls;
}
}
em2 {
unit 4 {
vlan-id 4;
family inet {
address 10.0.4.2/30;
}
family mpls;
}
unit 70 {
vlan-id 70;
family inet {
address 10.0.70.2/30;
protocols {
mpls {
interface all;
interface em1.60 {
label-map 1000003 {
next-hop 10.0.60.2;
swap 0;
}
label-map 1000100 {
next-hop 10.0.70.1;
swap 1000101;
}
}
}
ospf {
area 0.0.0.0 {
interface all;
}
}
}
21. mks@Lab:Makasar> show configuration
interfaces {
em2 {
unit 9 {
vlan-id 9;
family inet {
address 10.0.9.2/30;
}
family mpls;
}
unit 60 {
vlan-id 60;
family inet {
address 10.0.60.2/30;
}
family mpls;
}
}
lo0 {
unit 44 {
family inet {
address 192.168.44.1/32;
}
protocols {
mpls {
static-path inet {
192.168.8.1/32 {
next-hop 10.0.60.1;
push 1000100;
}
}
interface all;
}
ospf {
area 0.0.0.0 {
interface all;
}
}
}