This article continues the examination of IOS XR’s technical fundamentals and provides you a very straight forward way to deal with prefix suppression over IOS XR platform. This article assumes that you have some basic access level knowledge of Cisco IOS XR (if not then you can take the reference from my previous posts on IOS XR). As we already discussed, “IOS XR is one of the best IOS platforms from the house of Cisco Systems and used widely on high-end carrier routers such as the CRS-1, 12000, and ASR9000 series. IOS XR works as a distributed operating system to provide modularity and memory protection between processes. Cisco’s self-healing feature provide a functionality to restart a failed process without disturbing others.”

CCNA Training – Resources (Intense)

This article will provide a hands-on approach of prefix suppression over EIGRP, OSPF, and BGP with IOS XR command line configuration examples. We already discussed the neighbor relationship developments for various routing protocols on IOS XR platform so this time we will configure prefix summarisation on the following topologies. The very first topology as shown in Fig. 1 will be used for EIGRP route summarization:

Note: Following set of commands are preconfigured on both routers:

Router xr1:

Tue MAR 31 09:44:21.043 UTC
Building configuration...
!! IOS XR Configuration 5.1.1
!! Last configuration change at Mon MAR 30 13:25:12 2015 by nitin
!
hostname xr1 
cdp
!
interface Loopback1
 ipv4 address 10.1.1.1 255.255.255.0
!
interface Loopback2
 ipv4 address 10.1.2.1 255.255.255.0
!
interface Loopback3
 ipv4 address 10.1.3.1 255.255.255.0
!
interface Loopback4
 ipv4 address 10.1.4.1 255.255.255.0
!
interface MgmtEth0/0/CPU0/0
 cdp
 ipv4 address 192.168.12.1 255.255.255.252
!
End

Router xr2:

Tue MAR 31 09:44:21.043 UTC
Building configuration...
!! IOS XR Configuration 5.1.1
!! Last configuration change at Mon MAR 30 13:25:12 2015 by nitin
!
hostname xr2 
cdp
!
interface MgmtEth0/0/CPU0/0
 cdp
 ipv4 address 192.168.12.2 255.255.255.252
!
End

Objective for EIGRP route summarisation (refer Fig.1): Router xr1 must advertise an aggregated network prefix of 10.X.X.X/X to its neighbour router xr2. Router xr1 must suppress all component prefixes of this summary prefix.

Let’s start with EIGRP route summarization on Cisco IOS XR platform.

In traditional Cisco IOS, EIGRP route summarization applies on interface using command

“ip summary-address eigrp <process-id> < aggregated network-id> <subnet-mask>”.

But IOS XR does not support the above command, so you have to execute “summary-address” command under respective address family’s interface prompt “(config -eigrp-af-if)” as per following syntax;

(config)# router eigrp 
(config -eigrp)# address-family     /* to enable IPv4 or IPv6 address-family
(config -eigrp-af)# interface    /* to enable interface under EIGRP routing
(config -eigrp-af-if)# summary-address X.X.X.X/subnet-length  /* to configure summarised route on this interface
(config -eigrp-af-if)# exit

Before applying route summarization, EIGRP neighbor relationship must be proper between router xr1 and xr2. You can take the reference to establish EIGRP neighbor relationship from my previously published article “Routing Fundamentals with IOS XR“.

The following set of commands will be used to configure summarization on router xr1 to fulfil the objective’s need.

Router xr1:

RP/0/0/CPU0:xr1(config)# router eigrp 10
RP/0/0/CPU0:xr1(config -eigrp)# address-family ipv4
RP/0/0/CPU0:xr1(config -eigrp-af)# interface MgmtEth0/0/CPU0/0
RP/0/0/CPU0:xr1(config -eigrp-af-if)# summary-address 10.1.0.0/21
RP/0/0/CPU0:xr1(config -eigrp-af-if)# exit
RP/0/0/CPU0:xr1(config)#commit  /* do not forget to commit

After configuring the above commands you will see an aggregated prefix on router xr2, as shown in Fig. 2 below:

So, performing EIGRP route summarisation is not a tough task; now let’s break the IOS XR summarisation code for OSPF.

OSPF Route Summarisation: We already know that OSPF supports two types of route summarization; area based (or Inter-Area) and External (redistributed) route summarization. You can refer to our previously published IOS based articles to learn the more technical aspects of OPSF routing protocol. So let’s start to examine both OSPF summarization techniques:

Objective for OSPF Inter-area route summarisation (refer Fig.3):Router xr2 must advertise an aggregate network prefix of 10.X.X.X/X originating from area 0 to its neighbour areas so that xr3 can receive an aggregated prefix of 10.X.X.X/X to maintain its network feasibility. Router xr2 must suppress all component prefixes of this summary prefix.

As we already discussed in previous articles, IOS XR does not support traditional “network” command to establish IGP neighbor-ship or to advertise networks, so first you will have to enable required interfaces to form OSPF adjacency and network advertisement as per the given topology (as shown in Fig. 3). You can enable OSPF on interfaces under an area only, meaning first you will have to define an area id under routing process then under OSPF area prompt “(config-ospf-ar)#” you will have to define respective interfaces.

OSPF Inter-area route summarisation can be configured using “range” command and this command is always applied on ABRs.The following set of commands can be used to configure OSPF Inter-area route summarisation on an IOS XR based router:

Syntax to configure OSPF Inter Area Route Summarisation

(config)# router ospf      /* OSPF process id is locally significant
(config-ospf)# area 
(config-ospf-ar)# range    
(config-ospf-ar)#exit

I hope you have found it easy. The following configuration will be required on ABR router xr2 to fulfil objective’s need:

Router xr2:

RP/0/0/CPU0:xr2(config)# router ospf 1
RP/0/0/CPU0:xr2(config-ospf)# area 0
RP/0/0/CPU0:xr2(config-ospf-ar)# range 10.1.0.0/21
RP/0/0/CPU0:xr2(config –ospf-ar)# root       /* back to config mode
RP/0/0/CPU0:xr2(config)# commit                 /* to save above configuration to running-config 

I am sure you will see the same output as it showing an aggregated prefix marked with “O IA” in fig. 4 below:

Now let’s have a quick look over OPSF external route summarization. To understand this type of route summarization, first we have to redistribute some network prefixes into OSPF domain. Figure 5 can be the simplest design to perform OSPF external route summarization.

Objective for OSPF External route summarisation (refer Fig.5):Router xr2 must advertise an aggregate network prefix of 10.X.X.X/X originating from different protocol (EIGRP in my topology) to its OSPF neighbours so that xr3 can receive an aggregated prefix of 10.X.X.X/X to maintain its network feasibility. Router xr2 must suppress all component prefixes of this summary prefix.

OSPF External route summarisation can be configured using “summary-prefix” command which is replaced by IOS based command “summary-address” under OSPF process and “summary-prefix” command is always applied on ASBRs. The following set of commands can be used to configure OSPF external route summarisation on an IOS XR based router:

Syntax to configure OSPF External Route Summarisation

(config)# router ospf      /* process id is locally significant
(config-ospf)# summary-prefix     
(config-ospf)#exit

The following configuration will be required on ASBR router to fulfil objective’s need:

Router xr2:

RP/0/0/CPU0:xr2(config)# router ospf 1
RP/0/0/CPU0:xr2(config-ospf)# summary-prefix 10.1.0.0/21
RP/0/0/CPU0:xr2(config –ospf)# root            /* back to config mode
RP/0/0/CPU0:xr2(config)# commit                 /* to save above configuration to running-config 
RP/0/0/CPU0:xr3# show  route  //** you will definitely get an OE2 aggregated prefix  in xr3’s routing table, as it showing in fig. 6 below

BGP Route summarisation (refer fig.7): Now let’s learn “how to configure BGP route summarization” which is very important in respect to its vast industrial use. You already know that automatic summarisation is disabled by default so no need to execute “no auto-summary” under BGP process. BGP route summarization is supported by both iBGP and eBGP peers and command is also the same for both neighbor types. To configure route summarization in BGP, we have to use same traditional IOS command “aggregate-address” but under respective address-family only.

Objective for BGP route summarisation (refer Fig.7):Router xr1 must advertise an aggregate network prefix of 10.X.X.X/X to its BGP peers so that xr2 can receive an aggregated prefix of 10.X.X.X/X. Router xr1 must suppress all component prefixes of this summary prefix so don’t forget to use summary-only with aggregation.

Syntax to configure BGP Route Summarisation:

(config)# router bgp 
 (config-bgp)#address-family          
(config-bgp-af)# aggregate-address X.X.X.X/X summary-only
(config-bgp-af)#exit

Before applying route summarisation in BGP, a neighbor relationship must be established between xr1 and xr2. You can take the reference to establish BGP neighbor relationship from my previously published article “Routing Fundamentals with IOS XR part II“.

The following set of commands will be applied on router xr1 to achieve objective’s need.

Router xr1:

RP/0/0/CPU0:xr1(config)# router bgp 10
RP/0/0/CPU0:xr1(config-bgp)# address-family ipv4 unicast
RP/0/0/CPU0:xr1(config-bgp-af)# aggregate-address 10.1.0.0/21 summary-only
RP/0/0/CPU0:xr1(config –bgp-af)# root
RP/0/0/CPU0:xr1(config)#commit

Figure 8 displays the output result of “show route” command on router xr2 (“show bgp ipv4 unicast” command can also be used to check BGP learned prefixes), you can see an entry of aggregated network prefix as 10.1.0. 0/21 in given output as shown in figure 8.

Believe me; IOS XR is very handy to work if you follow some simple guidelines and I will continue my IOS XR journey with some more technical specifications but I also want to read your feedbacks and your Intenseschool.com experience at comment section.

And don’t forget to spread the link of this article on your Facebook, Twitter & LinkedIn so that the maximum number of people can get this exclusive piece of information. Keep reading @ Instanseschool.com and you can join our Facebook group, http://www.facebook.com/intenseschool, to get updates on new posts.

References: Apart from my work experience & knowledge, the following sources helped me a lot to design this exclusive content.