Implementing Mikrotik MPLS vpls setup for three offices

This lab demonstrates how to connect mutiple branch offices to the HQ on Mikrotik routerOS, using MPLS with VPLS. One of the requirements that service providers get is to provide transparent connectivity between offices. MPLS forwarding allows service providers to speed up packet forwarding on their networks. The use of Virtual Private LAN Service (VPLS) removes the need for the encapsulation of ethernet frame forwarding in IP, thereby further increasing the efficiency of ethernet frame forwarding. This LAB requires that there should be no hops between all bracnhes.

Network topology

Mikrotik mpls vpls circuit image
Image showing three offices connected via mpls

Scope of work

  • All networks depicted in network diagram will be configured and advertised on the core and all PE routers using OSPF to provide full convergence and reachability among provider edge routers.
  • Loopback interfaces will be created on the core and all PE routers for LDP connection.
  • On PE routers, no IP addresses will be assigned to interfaces connecting to the customers.

Implementation

On the core router: IP address assignment

First of all, create a loopback interface and assign an IP to it:

/interface bridge add name=lobridge

/ip address add address=4.4.4.2/32 interface=lobridge

Then, assign IP addresses to interfaces connecting to PE routers:

/ip address add address=1.1.1.1/24 interface=ether1 comment=”connection-to-NY”

/ip address add address=2.2.2.1/24 interface=ether2 comment=”connection-to-CA”

/ip address add address=3.3.3.1/24 interface=ether3 comment=”connection-to-TX”

On the core router: OSPF advertisement

/routing ospf instance set redistribute-connected=as-type-1

/routing ospf network add area=backbone network=1.1.1.0/24

/routing ospf network add area=backbone network=2.2.2.0/24

/routing ospf network add area=backbone network=3.3.3.0/24

/routing ospf network add area=backbone network=4.4.4.2/32

On NY PE: IP address assignment

/interface bridge add name=lobridge

/ip address add address=4.4.4.1/32 interface=lobridge

Then, assign IP addresses to interfaces connecting to PE routers:

/ip address add address=1.1.1.2/24 interface=ether1 comment=”connection-to-Core”

On the NY PE: OSPF advertisement

/routing ospf instance set redistribute-connected=as-type-1

/routing ospf network add area=backbone network=1.1.1.0/24

/routing ospf network add area=backbone network=4.4.4.1/32

On CA PE: IP address assignment

/interface bridge add name=lobridge

/ip address add address=4.4.4.3/32 interface=lobridge

Then, assign IP addresses to interfaces connecting to PE routers:

/ip address add address=2.2.2.2/24 interface=ether1 comment=”connection-to-Core”

On CA PE: OSPF advertisement

/routing ospf instance set redistribute-connected=as-type-1

/routing ospf network add area=backbone network=2.2.2.0/24

/routing ospf network add area=backbone network=4.4.4.3/32

On TX PE: IP address assignment

/interface bridge add name=lobridge

/ip address add address=4.4.4.4/32 interface=lobridge

Then, assign IP addresses to interfaces connecting to PE routers:

/ip address add address=3.3.3.2/24 interface=ether1 comment=”connection-to-Core”

On TX PE: OSPF advertisement

/routing ospf instance set redistribute-connected=as-type-1

/routing ospf network add area=backbone network=3.3.3.0/24

/routing ospf network add area=backbone network=4.4.4.4/32

At this point, we should have reachability to all loopback IPs from all PE routers. Next, we will enable MPLS label distribution protocol (LDP) on the core and all PE routers and add participating interfaces. LDP transport address will be set to the loopback address configured on each router. The reason for this is because we do not want interface status to affect LDP neighbor relationship. Also, because we do not want change in addressing should not affect mpls setup.

You may also like:  How to configure Cisco l2tpv3 to connect two offices using GNS3

 

MPLS LDP configuration on the core

/mpls interface

set [ find default=yes ] interface=ether1

add interface=ether2

add interface=ether3

 

/mpls ldp set enabled=yes lsr-id=4.4.4.2 transport-address=4.4.4.2

 

/mpls ldp interface

add interface=ether1

add interface=ether2

add interface=ether3

 

/mpls ldp neighbor

add transport=4.4.4.1

add transport=4.4.4.3

add transport=4.4.4.4

MPLS LDP configuration on the NY PE

/mpls interface

set [ find default=yes ] interface=ether1

 

/mpls ldp set enabled=yes lsr-id=4.4.4.1 transport-address=4.4.4.1

 

/mpls ldp interface

add interface=ether1

 

/mpls ldp neighbor

add transport=4.4.4.2

MPLS LDP configuration on the CA PE

/mpls interface

set [ find default=yes ] interface=ether1

 

/mpls ldp set enabled=yes lsr-id=4.4.4.3 transport-address=4.4.4.3

 

/mpls ldp interface

add interface=ether1

 

/mpls ldp neighbor

add transport=4.4.4.2

MPLS LDP configuration on the TX PE

/mpls interface

set [ find default=yes ] interface=ether1

 

/mpls ldp set enabled=yes lsr-id=4.4.4.4 transport-address=4.4.4.4

 

/mpls ldp interface

add interface=ether1

 

/mpls ldp neighbor

add transport=4.4.4.2

At this point, we have a fully configured MPLS cloud. Next, we implement VPLS mapping to connect branches together. On each PE router, there will be two VPLS mapping to reach two other locations.

VPLS configuration on NY PE

interface vpls

add comment=”NYtoCA” disabled=no l2mtu=1500 name=”NYtoCA” remote-peer=4.4.4.3 vpls-id=10

add comment=”NYtoTX” disabled=no l2mtu=1500 name=”NYtoTX” remote-peer=4.4.4.4 vpls-id=10

/interface bridge add name=NY-Bridge

/interface bridge port add bridge=NY-Bridge interface=ether2

/interface bridge port add bridge=NY-Bridge interface=NYtoCA

/interface bridge port add bridge=NY-Bridge interface=NYtoTX

VPLS configuration on CA PE

interface vpls

add comment=”NYtoCA” disabled=no l2mtu=1500 name=”CAtoNY” remote-peer=4.4.4.1 vpls-id=10

add comment=”NYtoTX” disabled=no l2mtu=1500 name=”CAtoTX” remote-peer=4.4.4.4 vpls-id=10

/interface bridge add name=CA-Bridge

/interface bridge port add bridge=CA-Bridge interface=ether2

/interface bridge port add bridge=CA-Bridge interface=CAtoNY

/interface bridge port add bridge=CA-Bridge interface=CAtoTX

VPLS configuration on TX PE

interface vpls

add comment=”TXtoNY” disabled=no l2mtu=1500 name=”TXtoNY” remote-peer=4.4.4.1 vpls-id=10

add comment=”TXtoCA” disabled=no l2mtu=1500 name=”TXtoCA” remote-peer=4.4.4.3 vpls-id=10

/interface bridge add name=TX-Bridge

/interface bridge port add bridge=TX-Bridge interface=ether2

/interface bridge port add bridge=TX-Bridge interface=TXtoNY

/interface bridge port add bridge=TX-Bridge interface=TXtoTXtoCA

Spread the love

Leave a Comment