Configuring EIGRP - Named Mode

Configuring EIGRP - Named Mode

May 25, 2017·Ryan
Ryan

From its older brother IGRP which was developed in 1980s to overcome the limitations of RIP, EIGRP was an “Enhanced” IGRP protocol. The main purpose of EIGRP was to  overcome the limitations of classful networks and make EIGRP a classless routing protocol. During designing of this protocol a different convergence algorithm was used making EIGRP that “hybrid” between distance-vector and link-state routing protocols. In this post we’ll go over a basic design and setup for EIGRP, however instead of using the “classic way” let’s look at configuring EIGRP using named mode which is available in Cisco IOS starting in version 15.2

This topology is pretty simple, I have three routers and each them is connected to the other two routers.

All routers have been setup with their local addresses and can ping any network that is locally attached to them. There are two ways to configure EIGRP we could configure it the “classic way” or use named mode. Nothing has changed with EIGRP itself so you could have one router use classic and another router use named mode and the protocol would exchange routing information between the two. The change is to simplify the configuration into one spot, which is under the router EIGRP process instead of having some EIGRP configuration under each interface. Let’s get started.

Create a named EIGRP process on all routers:

R1(config)#router eigrp CISCOSKILLS
R2(config)#router eigrp CISCOSKILLS
R3(config)#router eigrp CISCOSKILLS

Note: The named EIGRP process does not have match on all routers to exchange routes.

Create an autonomous system for all routers:

R1(config-router)# address-family ipv4 unicast autonomous-system 1
R2(config-router)# address-family ipv4 unicast autonomous-system 1
R3(config-router)# address-family ipv4 unicast autonomous-system 1

Note: This has to match on all routers if you want EIGRP to exchange routes with.

We’ll want to configure a passive interface on the LAN side of each router so we don’t send EIGRP neighbor adjacencies into LAN side of the network.

R1(config-router-af)#af-interface GigabitEthernet0/1
R1(config-router-af-interface)#passive-interface
R1(config-router-af-interface)#exit-af-interface
 
R2(config-router-af)#af-interface GigabitEthernet0/3
R2(config-router-af-interface)#passive-interface
R2(config-router-af-interface)#exit-af-interface
 
R3(config-router-af)#af-interface GigabitEthernet0/3
R3(config-router-af-interface)#passive-interface
R3(config-router-af-interface)#exit-af-interface

Next we need to configure what networks we want EIGRP to advertise as well as the router-id this configuration will depend on each router:

R1(config-router-af)#network 10.0.1.2 0.0.0.0
R1(config-router-af)#network 10.0.1.10 0.0.0.0
R1(config-router-af)#network 10.1.1.1 0.0.0.0
R1(config-router-af)#eigrp router-id 10.1.1.1
R1(config-router-af)#exit-address-family
 
R2(config-router-af)#network 10.0.1.6 0.0.0.0
R2(config-router-af)#network 10.0.1.9 0.0.0.0
R2(config-router-af)#network 10.2.1.1 0.0.0.0
R2(config-router-af)#eigrp router-id 10.2.1.1
R2(config-router-af)#exit-address-family
 
R3(config-router-af)#network 10.0.1.1 0.0.0.0
R3(config-router-af)#network 10.0.1.5 0.0.0.0
R3(config-router-af)#network 10.3.1.1 0.0.0.0
R3(config-router-af)#eigrp router-id 10.3.1.1
R3(config-router-af)#exit-address-family

If everything went to plan we should have some log messages notifying us that adjacencies have been made on each router and we should be able ping/connect to each PC in this network. Using the command show ip route confirms this on all three routers:

R1#show ip route
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       a - application route
       + - replicated route, % - next hop override, p - overrides from PfR
 
Gateway of last resort is not set
 
      10.0.0.0/8 is variably subnetted, 9 subnets, 3 masks
C        10.0.1.0/30 is directly connected, GigabitEthernet0/2
L        10.0.1.2/32 is directly connected, GigabitEthernet0/2
D        10.0.1.4/30 [90/15360] via 10.0.1.9, 01:08:45, GigabitEthernet0/3
                     [90/15360] via 10.0.1.1, 01:08:45, GigabitEthernet0/2
C        10.0.1.8/30 is directly connected, GigabitEthernet0/3
L        10.0.1.10/32 is directly connected, GigabitEthernet0/3
C        10.1.1.0/24 is directly connected, GigabitEthernet0/1
L        10.1.1.1/32 is directly connected, GigabitEthernet0/1
D        10.2.1.0/24 [90/15360] via 10.0.1.9, 01:08:45, GigabitEthernet0/3
D        10.3.1.0/24 [90/15360] via 10.0.1.1, 01:08:45, GigabitEthernet0/2
R1#
 
R2#show ip route
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       a - application route
       + - replicated route, % - next hop override, p - overrides from PfR
 
Gateway of last resort is not set
 
      10.0.0.0/8 is variably subnetted, 9 subnets, 3 masks
D        10.0.1.0/30 [90/15360] via 10.0.1.10, 01:08:35, GigabitEthernet0/2
                     [90/15360] via 10.0.1.5, 01:08:35, GigabitEthernet0/1
C        10.0.1.4/30 is directly connected, GigabitEthernet0/1
L        10.0.1.6/32 is directly connected, GigabitEthernet0/1
C        10.0.1.8/30 is directly connected, GigabitEthernet0/2
L        10.0.1.9/32 is directly connected, GigabitEthernet0/2
D        10.1.1.0/24 [90/15360] via 10.0.1.10, 01:08:35, GigabitEthernet0/2
C        10.2.1.0/24 is directly connected, GigabitEthernet0/3
L        10.2.1.1/32 is directly connected, GigabitEthernet0/3
D        10.3.1.0/24 [90/15360] via 10.0.1.5, 01:08:35, GigabitEthernet0/1
R2#
 
R3#show ip route
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       a - application route
       + - replicated route, % - next hop override, p - overrides from PfR
 
Gateway of last resort is not set
 
      10.0.0.0/8 is variably subnetted, 9 subnets, 3 masks
C        10.0.1.0/30 is directly connected, GigabitEthernet0/1
L        10.0.1.1/32 is directly connected, GigabitEthernet0/1
C        10.0.1.4/30 is directly connected, GigabitEthernet0/2
L        10.0.1.5/32 is directly connected, GigabitEthernet0/2
D        10.0.1.8/30 [90/15360] via 10.0.1.6, 01:08:14, GigabitEthernet0/2
                     [90/15360] via 10.0.1.2, 01:08:14, GigabitEthernet0/1
D        10.1.1.0/24 [90/15360] via 10.0.1.2, 01:08:14, GigabitEthernet0/1
D        10.2.1.0/24 [90/15360] via 10.0.1.6, 01:08:14, GigabitEthernet0/2
C        10.3.1.0/24 is directly connected, GigabitEthernet0/3
L        10.3.1.1/32 is directly connected, GigabitEthernet0/3
R3#

We can see by default in the routing table that EIGRP has already calculated the best route to each LAN and has only put in one route to reach them. If we show the EIGRP topology we notice that EIGRP has these routes ready in case if the primary route to reach these LANs fail.

R1#show ip eigrp topology all-links
EIGRP-IPv4 VR(CISCOSKILLS) Topology Table for AS(1)/ID(10.1.1.1)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
      r - reply Status, s - sia Status 

P 10.0.1.0/30, 1 successors, FD is 1310720, serno 1
       via Connected, GigabitEthernet0/2
P 10.0.1.4/30, 2 successors, FD is 1966080, serno 6
       via 10.0.1.1 (1966080/1310720), GigabitEthernet0/2
       via 10.0.1.9 (1966080/1310720), GigabitEthernet0/3
P 10.0.1.8/30, 1 successors, FD is 1310720, serno 5
       via Connected, GigabitEthernet0/3
P 10.2.1.0/24, 1 successors, FD is 1966080, serno 7
       via 10.0.1.9 (1966080/1310720), GigabitEthernet0/3
       via 10.0.1.1 (2621440/1966080), GigabitEthernet0/2
P 10.1.1.0/24, 1 successors, FD is 1310720, serno 8
       via Connected, GigabitEthernet0/1
P 10.3.1.0/24, 1 successors, FD is 1966080, serno 3
       via 10.0.1.1 (1966080/1310720), GigabitEthernet0/2
       via 10.0.1.9 (2621440/1966080), GigabitEthernet0/3

R2#show ip eigrp topology all-links
EIGRP-IPv4 VR(CISCOSKILLS) Topology Table for AS(1)/ID(10.2.1.1)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
      r - reply Status, s - sia Status 

P 10.0.1.0/30, 2 successors, FD is 1966080, serno 16
       via 10.0.1.5 (1966080/1310720), GigabitEthernet0/1
       via 10.0.1.10 (1966080/1310720), GigabitEthernet0/2
P 10.0.1.4/30, 1 successors, FD is 1310720, serno 1
       via Connected, GigabitEthernet0/1
P 10.0.1.8/30, 1 successors, FD is 1310720, serno 2
       via Connected, GigabitEthernet0/2
P 10.2.1.0/24, 1 successors, FD is 1310720, serno 3
       via Connected, GigabitEthernet0/3
P 10.1.1.0/24, 1 successors, FD is 1966080, serno 17
       via 10.0.1.10 (1966080/1310720), GigabitEthernet0/2
       via 10.0.1.5 (2621440/1966080), GigabitEthernet0/1
P 10.3.1.0/24, 1 successors, FD is 1966080, serno 7
       via 10.0.1.5 (1966080/1310720), GigabitEthernet0/1
       via 10.0.1.10 (2621440/1966080), GigabitEthernet0/2

R3#show ip eigrp topology all-links
EIGRP-IPv4 VR(CISCOSKILLS) Topology Table for AS(1)/ID(10.3.1.1)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
      r - reply Status, s - sia Status 

P 10.0.1.0/30, 1 successors, FD is 1310720, serno 1
       via Connected, GigabitEthernet0/1
P 10.0.1.4/30, 1 successors, FD is 1310720, serno 2
       via Connected, GigabitEthernet0/2
P 10.0.1.8/30, 2 successors, FD is 1966080, serno 17
       via 10.0.1.2 (1966080/1310720), GigabitEthernet0/1
       via 10.0.1.6 (1966080/1310720), GigabitEthernet0/2
P 10.2.1.0/24, 1 successors, FD is 1966080, serno 8
       via 10.0.1.6 (1966080/1310720), GigabitEthernet0/2
       via 10.0.1.2 (2621440/1966080), GigabitEthernet0/1
P 10.1.1.0/24, 1 successors, FD is 1966080, serno 18
       via 10.0.1.2 (1966080/1310720), GigabitEthernet0/1
       via 10.0.1.6 (2621440/1966080), GigabitEthernet0/2
P 10.3.1.0/24, 1 successors, FD is 1310720, serno 3
       via Connected, GigabitEthernet0/3

That’s all I got for now for a basic configuration of EIGRP name mode and I hope this helpful. If you are using Cisco VIRL you can find the project I was referencing using this link Github. There is a subtype that is added in this configuration which was the Windows XP image I was working with. You can find more information about import Windows VMs and other 3rd Party systems into VIRL by checking out a previous post: Cisco VIRL and Windows VMs

What about if you are already running the classic mode of EIGRP and want to migrate over to EIGRP name mode? First check your IOS release and if its 15.4 or higher you likely have a command available that will do the migration for you, instead of removing the classic configuration manaully. Go into your existing EIGRP configuration and type eigrp upgrade-cli followed by the name you want. Voila!

R3(config)#router eigrp 30
R3(config-router)#eigrp upgrade-cli ?
  WORD  EIGRP Virtual-Instance Name