By Thomas
You’re studying your Cisco technologies, preparing to run the gauntlet of certification exams that stand between you and certification. You’re feeling pretty confident in your understanding of the requisite technologies and how they work. You’re particularly confident in your grasp of Cisco’s Enhanced Interior Gateway Routing Protocol (EIGRP), but then somebody mentions something called EIGRP named mode configuration, or possibly even Named EIGRP, and suddenly you’re all like ZOINKS!?!?
Although EIGRP named mode has been around in various degrees of implementation for a number of years, it wasn’t until the most recent incarnation of the Cisco Certified Network Professional (CCNP) curriculum that certification candidates need concern themselves with it. Now, every aspiring CCNP candidate is required to have at least a passing knowledge of EIGRP named mode and how it differs from classic EIGRP.
Classic EIGRP, which is also referred to as EIGRP Autonomous System (AS) mode, is how most people think of EIGRP. A simple classic EIGRP configuration begins with the ever-familiar router eigrp autonomous-system command, where autonomous-system is a value between 1 and 65535. You can use the context-sensitive help functionality in IOS to confirm the command syntax as shown below:
R12.4(config)#router eigrp ?
<1-65535> Autonomous system number
The output in the previous example is from a router running IOS 12.4. As you can see, this particular version of IOS supports EIGRP configuration only by using EIGRP AS mode. By contrast, the context-sensitive help on a router that supports Named EIGRP configuration provides slightly different output, as shown below:
R15.2(config)#router eigrp ?
<1-65535> Autonomous System
WORD EIGRP Virtual-Instance Name
The output above is from a router running IOS 15.2. As you can see, this particular IOS version has an additional parameter available for the router eigrp command. The virtual-instance-name parameter lets you identify an EIGRP process by its virtual instance name instead of its AS number. When you refer to the EIGRP process by name, you tell the router to enter Named EIGRP configuration mode. It is important to note that the virtual instance name is case sensitive.
Whether a router supports named mode depends on the version of IOS that is running on the router. Even if the IOS version shows support for Named EIGRP, the implementation may be incomplete or may function only in an experimental capacity. It is generally a good idea to avoid using Named EIGRP unless you’re running a very recent IOS revision with solid Named EIGRP implementation, such as version 15.2 or later.
Let’s continue our classic EIGRP example. Typically, after entering router configuration mode, the first thing you want to do is make sure that the EIGRP automatic summarization behavior is set to whatever you expect it to be. Cisco has been pretty inconsistent with the default behavior of this feature on various platforms over the years. Additionally, it is best practice to manually configure a setting so that the default behavior does not surprise you later. The no auto-summary command disables the automatic route summarization feature, which is typically the desired behavior. Next, use the network ip-address [wildcard-mask] command to specify one or more router interfaces that the EIGRP routing process should use to advertise and receive routing updates. For example, the following commands would disable automatic route summarization and enable EIGRP on an interface with the IP address 1.1.1.1 and the network mask of 255.255.255.0:
R12.4(config-router)#no auto-summary
R12.4(config-router)#network 1.1.1.1 0.0.0.255
You can use the context-sensitive help feature to see additional commands that are available in EIGRP router configuration mode:
R12.4(config-router)#?
Router configuration commands:
address-family Enter Address Family command mode
auto-summary Enable automatic network number summarization
bfd BFD configuration commands
default Set a command to its defaults
default-information Control distribution of default information
default-metric Set metric of redistributed routes
distance Define an administrative distance
distribute-list Filter networks in routing updates
eigrp EIGRP specific commands
exit Exit from routing protocol configuration mode
help Description of the interactive help system
maximum-paths Forward packets over multiple paths
metric Modify EIGRP routing metrics and parameters
neighbor Specify a neighbor router
network Enable routing on an IP network
no Negate a command or set its defaults
offset-list Add or subtract offset from RIP metrics
passive-interface Suppress routing updates on an interface
redistribute Redistribute information from another routing protocol
timers Adjust routing timers
traffic-share How to compute traffic share over alternate paths
variance Control load balancing variance
As you can see, the EIGRP routing process offers quite a few configurable options. However, what if you wanted to adjust the Hello or hold timer intervals, or enable MD5 authentication? There don’t seem to be any commands in router configuration mode that let you achieve those tasks. Of course, if you’re familiar with classic EIGRP configurations, you well know that those options are all available in interface configuration mode. Thus you’ll need to leave router configuration mode and enter interface configuration mode to make those changes. Additionally, none of the interface configuration mode changes will be stored in the EIGRP section of the running configuration; instead, they’ll all be bunched up under the appropriate interface to which each respective command refers. This scattered configuration can make it difficult to view all of the EIGRP configuration parameters in the appropriate context, and that can quickly lead to configuration errors.
Named EIGRP is Cisco’s attempt to improve the way you configure EIGRP. With Named EIGRP, all of the EIGRP routing process parameters reside in a single, hierarchical section of the running configuration. No longer are EIGRP commands scattered throughout the running configuration. Named EIGRP also provides consistency between the IPv4 and IPv6 EIGRP commands and their parameters. Let’s take a look at a simple Named EIGRP configuration:
router eigrp BOSON
!
address-family ipv4 unicast autonomous-system 10
!
af-interface FastEthernet0/0.1
passive-interface
exit-af-interface
!
topology base
auto-summary
exit-af-topology
network 172.16.64.0 0.0.0.3
network 172.16.64.32 0.0.0.31
exit-address-family
The first thing you might notice in the output above is that the EIGRP process is assigned a name, BOSON in this case. As you will see, Named EIGRP enables you to configure both an IPv4 address family and an IPv6 address family under the same process (using different AS numbers, of course). In our example, an IPv4 address family is defined and associated with AS number 10. Within that address family are contained all of the parameters which affect the operation of the EIGRP for IPv4 process. In our example, we have foolishly enabled automatic route summarization, declared interface Fa0/0.1 as a passive interface, and enabled EIGRP on interfaces in the 172.16.64.0/30 and 172.16.64.32/27 network range.
The equivalent classic EIGRP configuration would be as follows:
router eigrp 10
passive-interface FastEthernet0/0.1
network 172.16.64.0 0.0.0.3
network 172.16.64.32 0.0.0.31
auto-summary
At this point, you might be thinking “The classic EIGRP configuration is so much easier to grok, why would I use Named EIGRP at all?” The answer becomes more evident when we add additional configuration parameters. Let’s take authentication for example. The following output shows the Named EIGRP configuration modified to enable MD5 authentication on interface Fa0/0.2:
router eigrp BOSON
!
address-family ipv4 unicast autonomous-system 10
!
af-interface FastEthernet0/0.1
passive-interface
exit-af-interface
!
af-interface FastEthernet0/0.2
authentication mode md5
authentication key-chain SOMEKEY
exit-af-interface
!
topology base
auto-summary
exit-af-topology
network 172.16.64.0 0.0.0.3
network 172.16.64.32 0.0.0.31
exit-address-family
The equivalent classic EIGRP configuration would have the authentication commands clustered in the interface section of the running configuration, as shown in the following example:
!<LOTS OF OTHER CONFIG STUFF>
interface FastEthernet0/0.2
encapsulation dot1Q 2
ip address 172.16.64.81 255.255.255.240
ip authentication mode eigrp 10 md5
ip authentication key-chain eigrp 10 SOMEKEY
!
!<LOTS OF OTHER CONFIG STUFF>
!
router eigrp 10
passive-interface FastEthernet0/0.1
network 172.16.64.0 0.0.0.3
network 172.16.64.32 0.0.0.31
auto-summary
I’ve done you the favor of snipping out the bits of the running configuration between the relevant interface section and the EIGRP section. You might notice that not only is the classic EIGRP authentication code clustered in a different section from the rest of the EIGRP configuration, the classic mode commands also contain potential mistake-enabling complexity. For example, the inclusion of the AS in the authentication commands is necessary for the router to tie the commands back to the appropriate routing process, but they can also be easily overlooked or misread when parsed by a human. As an EIGRP configuration grows more complex, the hierarchical structure of a Named EIGRP configuration makes the overall configuration easier to grok, even if it might seem more convoluted at first glance when using a simple configuration as an example.
Now that you’ve had a rough comparison between a Named EIGRP configuration and a classic EIGRP configuration, let’s take a look at the basics of EIGRP named configuration mode. As you saw in a previous example, you can issue the router eigrp virtual-name command to enter EIGRP named configuration mode, where virtual-name is the name you want to assign to the routing process. On routers that support EIGRP named mode configurations, you will see the following output when using context-sensitive help:
R15.2(config)#router eigrp ?
<1-65535> Autonomous System
WORD EIGRP Virtual-Instance Name
Once you have entered EIGRP named configuration mode, you’ll see that the number of options you have available seem significantly fewer than those available in a classic EIGRP configuration. Context-sensitive help shows the following options:
R15.2(config-router)#?
Router configuration commands:
address-family Enter Address Family command mode
default Set a command to its defaults
exit Exit from routing protocol configuration mode
no Negate a command or set its defaults
service-family Enter Service Family command mode
shutdown Shutdown this instance of EIGRP
Because EIGRP named mode uses a hierarchical command structure, the majority of commands that you might be accustomed to using in an EIGRP configuration are grouped into three main sections: address family configuration mode, address family interface configuration mode, and address family topology configuration mode. Let’s start with address family configuration mode.
You can issue the address-family command to enter address family configuration mode. The syntax for the address-family command is address-family { ipv4 | ipv6 } [multicast | unicast] [ vrf vrf-name ] autonomous-system autonomous-system-number. Once you’ve entered address family configuration mode, you’ll see a few more of the EIGRP parameters you might have been expecting in EIGRP router configuration mode:
R15.2(config-router-af)#?
Address Family configuration commands:
af-interface Enter Address Family interface configuration
default Set a command to its defaults
eigrp EIGRP Address Family specific commands
exit-address-family Exit Address Family configuration mode
help Description of the interactive help system
maximum-prefix Maximum number of prefixes acceptable in aggregate
metric Modify metrics and parameters for address advertisement
neighbor Specify an IPv4 neighbor router
network Enable routing on an IP network
no Negate a command or set its defaults
shutdown Shutdown address family
timers Adjust peering based timers
topology Topology configuration mode
The sample router output above is from the IPv4 address family we used as an example earlier in this post. The commands would be almost identical for an IPv6 address family, with the exception of the network command. In an IPv6 address family, EIGRP is enabled automatically for every IPv6 enabled interface. Therefore, the network command is not necessary (although the passive-interface command may suddenly have significantly greater importance =-).
From within address family configuration mode, you can issue the af-interface { default | interface-type interface-number } command to access address family interface configuration mode. This mode enables you to configure interface specific EIGRP parameters, such as route summarization, split-horizon, or a passive interface. The following output shows the available commands in address family interface configuration mode:
R15.2(config-router-af-interface)#?
Address Family Interfaces configuration commands:
authentication authentication subcommands
bandwidth-percent Set percentage of bandwidth percentage limit
bfd Enable Bidirectional Forwarding Detection
dampening-change Percent interface metric must change to cause update
dampening-interval Time in seconds to check interface metrics
default Set a command to its defaults
exit-af-interface Exit from Address Family Interface configuration mode
hello-interval Configures hello interval
hold-time Configures hold time
next-hop-self Configures EIGRP next-hop-self
no Negate a command or set its defaults
passive-interface Suppress address updates on an interface
shutdown Disable Address-Family on interface
split-horizon Perform split horizon
summary-address Perform address summarization
Likewise, you can issue the topology { base | topology-name tid number } command from within address family configuration mode to access address family topology configuration mode. This mode enables you to configure topology specific EIGRP parameters such as redistribution, default information origination, load balancing, and metric (K-value) values. The following output shows the available commands in address family topology configuration mode:
R15.2(config-router-af-topology)#?
Address Family Topology configuration commands:
auto-summary Enable automatic network number summarization
default Set a command to its defaults
default-information Control distribution of default information
default-metric Set metric of redistributed routes
distance Define an administrative distance
distribute-list Filter entries in eigrp updates
eigrp EIGRP specific commands
exit-af-topology Exit from Address Family Topology configuration mode
fast-reroute Configure Fast-Reroute
maximum-paths Forward packets over multiple paths
metric Modify metrics and parameters for advertisement
no Negate a command or set its defaults
offset-list Add or subtract offset from EIGRP metrics
redistribute Redistribute IPv4 routes from another routing protocol
snmp Modify snmp parameters
summary-metric Specify summary to apply metric/filtering
timers Adjust topology specific timers
traffic-share How to compute traffic share over alternate paths
variance Control load balancing variance
With these three modes, you should be able to configure an EIGRP named mode implementation just as smoothly as you might have once implemented a classic EIGRP configuration. In fact, you might find it even easier to configure than a class configuration because now all of the EIGRP commands you might need for your implementation are grouped in an easy to grok, hierarchical fashion.
To make things even easier, Cisco provides a utility, the eigrp upgrade-cli command, which automagically converts classic EIGRP configurations into Named EIGRP configurations with a single command and without an interruption in service. Naturally, this convenient command is not available on all versions of IOS, much like Named EIGRP itself is not available on all versions of IOS. However, if you happen to be running IOS version 15.4 or higher, you might want to give the conversion utility a glance and see how well it can parse your existing classic EIGRP configuration into a shiny new EIGRP named mode configuration.
Studying for a Cisco certification exam? Try our NetSim and Practice Exam demos!