Configuring Basic EoMPLS on Cisco ASR901

Posted by

I recently had an opportunity to play with a couple of Cisco ASR901 routers in our lab. Great low cost cell backhaul router with support for MPLS, TE, T1 backhaul, and pseudowires. This router provides layer 3 routing features all the way out into the access layer.

Cisco ASR901 Front View:

The bank of 16 ports on the left-hand side of the image are T1 ports and the 16 ports on the right-hand side of the image are Ethernet ports. The 4 right-most copper ports and the 4 left-most SFP ports are combo (either-or) ports configurable in IOS.

On the far left in the image is the DC power input. This 24V to 60V DC which will work in nearlier every cell site I’ve run across.

Cisco ASR901 Rear View:

The back is pretty boring, grounding lug and serial # stickers.

The Cisco ASR901 runs Cisco IOS and is built around the EVC model, similar to the ES cards in the 7600 platform. This model allows flexible VLAN reuse and a mix of layer 2, layer 3, and pseudowire features on each interface.

In the lab I created a simple point-to-point network between the two ASR901 routers, configured MPLS/LDP between the routers, and created a pseudowire from one interface on the first ASR901 to an interface on the second ASR901. Configuration consisted of:

  • Configuration of Loopback interface
  • Configuration of interfaces between the two routers
  • Enabled OSPF routing
  • Enabled MPLS/LDP
  • Configuration client interface and pseudowire

The first step is to create a loopback interface on each of the routers. This is used for identifying the router as well for creation of pseudowires. Here is the output from R2 in my lab:

interface Loopback0
 ip address

Once the loopback is created we need to get the two routers talking. On each of the routers we enable the physical interface towards the other router. In this case we did a standard service instance with no VLAN tagging and tied it to a bridge domain. (This is where the configuration feels a little odd, but it actually makes sense.)

interface GigabitEthernet0/5
 no negotiation auto
 service instance 1 ethernet
  encapsulation untagged
  bridge-domain 1

We then define layer 3 information on the SVI on each side.

interface Vlan1
 ip address

Now that we can ping between the routers we need to enabled OSPF for route distribution.

router ospf 12
 network area 0
 network area 0

Set the id and include the loopback network as well as the network between the two routers.

Verify the configuration by pinging between the loopback interfaces. Once verified, it is time to enable MPLS/LDP for label distribution.

mpls label protocol ldp
mpls ldp router-id Loopback0

int Vlan1
 mtu 9216
 mpls ip

LDP neighborship should then be established and the system ready for service creation. I used a simple pseudowire between a couple of interfaces and verified using an Ethernet test kit.

interface GigabitEthernet0/6
 no negotiation auto
 service instance 1 ethernet
  encapsulation dot1q 1-4094
  xconnect 100 encapsulation mpls

Thats it, pretty basic setup, but should get you started.



  1. Hello,
    It’s a very nice website you have here. it’s well explained and this helps guys like me a lot.
    I have a question about the ppp over Ethernet. I was wondering if you could share the configuration case of pppoe on a gigabitethernet interface of the ASR 901. It has been days I’m trying to configure it.

    Thanks !

  2. Actually that’s what I feared about because in many tutorials in configuring PPPoE server, it is specified a “pppoe enable” interface command. But with the ASR 901 interface commands, it is not available. Maybe that functionality has been withdrawn from releases because in cisco 1841 Router, PPPoE server is available.
    Well Thanks anyway and please let me know if you find some configuration with ASR 901.

  3. Is it possible to use an ASR901 between 2 ISR’s? Like tunneling from a Cisco 4451 to the ASR901 then out over a microwave connection to a Cisco 2901 on a different subnet? Seems like I’ve tried everything.

    1. it was the largest value the interface supported. Typically in MPLS designs I go this route as it allows any number of MPLS labels in the label stack.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s