Monday, October 20, 2014

Lab 3 - MPLS Label Filtering

MPLS labels are localy significant, 4 byte identifiers attached as header to an IP packet and used to create a Forwarding Equivalency Class. A Forwarding Equivalency Class or FEC is a set of MPLS packets which have similar characteristics and are forwarded over the same path. Since MPLS labels are use to ultimately create a FIB and populate CEF, filtering what labels are advertised and received help achieve efficiency as well as assist with traffic engineering tasks. Today's lab will look at filter LDP MPLS labels.

Concepts tested
  • Enable LDP and establish basic LDP peering
  • limit advertisement of MPLS labels 
  • Ensure full reach-ability over the MPLS VPN for the unfiltered labels.
Topology





Lab Tasks

  • Configure LDP peering between all routers using their directly connected interfaces as their transport interface.
  • Ensure the LDP router-id for each router is its loopback0 address
  • Ensure the MPLS forwarding table for each router only sees FEC's for R1 and R4 loopback addresses.
  • R1 and R4 should be able to ping each others loopback interfaces over the MPLS VPN when sourced from their respective loopback's.


GNS3 configuration file, requires IOS v15 for the 7200 router: Link


Solution

R1 Configuration

R1(config)#mpls ip
R1(config)#mpls ldp router-id loopback 0 force
R1(config)#int g0/0
R1(config-if)#mpls ldp discovery transport-address interface
R1(config-if)#mpls ip

R2 Configuration

R2(config)#mpls ip
R2(config)#mpls ldp router-id loopback 0 force
R2(config)#int g0/0
R2(config-if)#mpls ldp discovery transport-address interface
R2(config-if)#mpls ip
R2(config-if)#int g1/0
R2(config-if)#mpls ldp discovery transport-address interface
R2(config-if)#mpls ip


R3 Configuration

R3(config)#mpls ip
R3(config)#mpls ldp router-id loopback 0 force
R3(config)#int g0/0
R3(config-if)#mpls ldp discovery transport-address interface
R3(config-if)#mpls ip
R3(config-if)#int g1/0
R3(config-if)#mpls ldp discovery transport-address interface
R3(config-if)#mpls ip


R4 Configuration

R4(config)#mpls ip
R4(config)#int g0/0
R4(config-if)#mpls ldp discovery transport-address interface
R4(config-if)#mpls ip


With the configuration above in place we see we have a full mpls forwarding table.













But the lab tasks call for only R1 and R4's loopback addresses to have labels or a Forwarding Equivalency Class. So we need to filter the other prefixes.

R1 configuration

R1(config)#access-list 1 permit 11.0.0.0 0.0.255.255
R1(config)#access-list 1 permit 44.0.0.0 0.0.255.255
R1(config)#!
R1(config)#no mpls ldp advertise-labels
R1(config)#mpls ldp advertise-labels for 1

R2 configuration

R2(config)#access-list 1 permit 11.0.0.0 0.0.255.255
R2(config)#access-list 1 permit 44.0.0.0 0.0.255.255
R2(config)#!
R2(config)#no mpls ldp advertise-labels
R2(config)#mpls ldp advertise-labels for 1

R3 configuration

R3(config)#access-list 1 permit 11.0.0.0 0.0.255.255
R3(config)#access-list 1 permit 44.0.0.0 0.0.255.255
R3(config)#!
R3(config)#no mpls ldp advertise-labels
R3(config)#mpls ldp advertise-labels for 1

R4 configuration

R4(config)#access-list 1 permit 11.0.0.0 0.0.255.255
R4(config)#access-list 1 permit 44.0.0.0 0.0.255.255
R4(config)#!
R4(config)#no mpls ldp advertise-labels
R4(config)#mpls ldp advertise-labels for 1

R1 verification



















R4 verification









With the added filter to the mpls ldp advertisements we only see labels associated with R4 and R1 loopback prefixes


No comments:

Post a Comment