Tuesday, April 15, 2014

EIGRP "Named Mode" First Thoughts!!

When I started to read about this new operational mode for Cisco which is called EIGRP Mode, I keep telling my self what is the point here Cisco, i don't see any benefits but typing more commands!, but bear with me :)

According to Cisco this mode is available on 15.0(1)M - 12.2(33)SRE - 12.2(33)XNE - Cisco IOS XE Release 2.5 which is pretty new one.

Cisco now called our old EIGRP configuration "Classic Mode" which we used to type AS number, now by this new configuration we won't type AS Number but instead we are going to type "Virtual-Instance Name"!,
Cisco aims by this new config to get what is called "Unified Configuration Solution" to provide ONE place to configure all of EIGRP and to provide ONE common way to define a feature , so let's take a look at our usual Basic topology and I am going to configure R1 with the old Classic Mode and R2 with the new Config Named Mode just to show how differences are but with the same overall final result.







R1#sh ver | in IOS
Cisco IOS Software, 7200 Software (C7200-ADVIPSERVICESK9-M), Version 15.1(4)M2, RELEASE SOFTWARE (fc1)
R1#sh ip int br | ex una
Interface                  IP-Address      OK? Method Status                Protocol
FastEthernet0/0            12.0.0.1        YES manual up                    up
Loopback0                  1.1.1.1         YES manual up                    up


R2#sh ver | in IOS
Cisco IOS Software, 7200 Software (C7200-ADVIPSERVICESK9-M), Version 15.1(4)M2, RELEASE SOFTWARE (fc1)
R2#sh ip int br | ex una
Interface                  IP-Address      OK? Method Status                Protocol
FastEthernet0/0            12.0.0.2        YES manual up                    up
Loopback0                  2.2.2.2         YES manual up                    up


so let's start configuring with AS 1 :


R1(config)#router ei 1
R1(config-router)#no auto
R1(config-router)#net 12.0.0.0 0.0.0.255
R1(config-router)#net 1.1.1.1 0.0.0.0

to when we go for R2 we will pick EIGRP Virtual-Instance Name and will will call it "Ciscobits" for our blog name :D

R2(config)#router ei ?
  <1-65535>  Autonomous System
  WORD       EIGRP Virtual-Instance Name

R2(config)#router ei Ciscobits
R2(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

well, if take a good look here you won't see any thing but "address-family" and here is the new EIGRP config mode commands will live, so let go for it to identify our AS number.

R2(config-router)#address-family ipv4 unicast autonomous-system 1
R2(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 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


well , i think now it's time for network command to enable the process on the interfaces and this time i will use 0.0.0.0 to catch all ipv4 interfaces here.

R2(config-router-af)#net 0.0.0.0
R2(config-router-af)#
*Apr 15 17:39:33.659: %DUAL-5-NBRCHANGE: EIGRP-IPv4 1: Neighbor 12.0.0.1 (FastEthernet0/0) is up: new adjacency
R2(config-router-af)#

Cool, we have new adjacency now, so let's do some verifications here:

R2(config-router-af)#do sh ip ei nei
EIGRP-IPv4 VR(Ciscobits) Address-Family Neighbors for AS(1)
H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq
                                            (sec)         (ms)       Cnt Num
0   12.0.0.1                Fa0/0             14 00:01:11  121   726  0  3
R2(config-router-af)#do sh ip route ei
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
       + - replicated route, % - next hop override

Gateway of last resort is not set

      1.0.0.0/32 is subnetted, 1 subnets
D        1.1.1.1 [90/156160] via 12.0.0.1, 00:01:27, FastEthernet0/0
R2(config-router-af)#do ping 1.1.1.1 so lo0
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 1.1.1.1, timeout is 2 seconds:
Packet sent with a source address of 2.2.2.2
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 40/64/80 ms
R2(config-router-af)#


if we use the new way for verification , we will get the same results:

R2#sh eigrp address-family ipv4 1 neighbors
EIGRP-IPv4 VR(Ciscobits) Address-Family Neighbors for AS(1)
H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq
                                            (sec)         (ms)       Cnt Num
0   12.0.0.1                Fa0/0             12 00:03:31  121   726  0  3

so now let's add another interface to our topology which is fa0/1 which also belongs to 21.0.0.0/24 subnet

R1#sh ip int br | ex una
Interface                  IP-Address      OK? Method Status                Protocol
FastEthernet0/0            12.0.0.1        YES manual up                    up
FastEthernet0/1            21.0.0.1        YES manual up                    up
Loopback0                  1.1.1.1         YES manual up                    up

R2#sh ip int br | ex una
Interface                  IP-Address      OK? Method Status                Protocol
FastEthernet0/0            12.0.0.2        YES manual up                    up
FastEthernet0/1            21.0.0.2        YES manual up                    up
Loopback0                  2.2.2.2         YES manual up                    up

Now let's enable EIGRP process for new subnet on R1 (Remember we will not do any further config for this subnet on R2 because 0.0.0.0 will catch it dynamically) :

R1(config)#router ei 1
R1(config-router)#net 21.0.0.1 0.0.0.0
R1(config-router)#
*Apr 15 17:51:22.531: %DUAL-5-NBRCHANGE: EIGRP-IPv4 1: Neighbor 21.0.0.2 (FastEthernet0/1) is up: new adjacency
R1(config-router)#do sh ip ei nei
EIGRP-IPv4 Neighbors for AS(1)
H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq
                                            (sec)         (ms)       Cnt Num
1   21.0.0.2                Fa0/1             11 00:00:45 1564  5000  0  8
0   12.0.0.2                Fa0/0             14 00:12:44  135   810  0  7

Now let's add MD5 authentication between the two routers using Key chain config , so i will just create it on R1 and paste it on R2 it should be the same using CISCO as password :

R1(config)#do sh run | se key chain
key chain AUTH_MD5
 key 1
  key-string CISCO
R1(config)#do sh key chain
Key-chain AUTH_MD5:
    key 1 -- text "CISCO"
        accept lifetime (always valid) - (always valid) [valid now]
        send lifetime (always valid) - (always valid) [valid now]

Now here is the difference in applying the MD5 Authentication between the two modes (Classic&Named),
in our old classic mode we use to apply these config under the interfaces directly:

R1(config-if)#do sh run int fa0/0
Building configuration...

Current configuration : 175 bytes
!
interface FastEthernet0/0
 ip address 12.0.0.1 255.255.255.0
 ip authentication mode eigrp 1 md5
 ip authentication key-chain eigrp 1 AUTH_MD5
 duplex auto
 speed auto
end

R1(config-if)#do sh run int fa0/1
Building configuration...

Current configuration : 175 bytes
!
interface FastEthernet0/1
 ip address 21.0.0.1 255.255.255.0
 ip authentication mode eigrp 1 md5
 ip authentication key-chain eigrp 1 AUTH_MD5
 duplex auto
 speed auto
end

But now in Named Mode here it starts to make sense as Cisco Unified Configuration Solution come in handy we will go for af-interface default to configure both interfaces all at once:

R2(config)#router ei Ciscobits
R2(config-router)#add ipv4 uni auto 1
R2(config-router-af)#af-interface default
R2(config-router-af-interface)#authentication mode md5
R2(config-router-af-interface)#authentication key-chain AUTH_MD5
R2(config-router-af-interface)#
*Apr 15 18:05:17.843: %DUAL-5-NBRCHANGE: EIGRP-IPv4 1: Neighbor 12.0.0.1 (FastEthernet0/0) is up: new adjacency
R2(config-router-af-interface)#
*Apr 15 18:05:21.083: %DUAL-5-NBRCHANGE: EIGRP-IPv4 1: Neighbor 21.0.0.1 (FastEthernet0/1) is up: new adjacency

Now let's see out full config here:

R2(config-router-af-interface)#do sh run | se router eigrp
router eigrp Ciscobits
 !
 address-family ipv4 unicast autonomous-system 1
  !
  af-interface default
   authentication mode md5
   authentication key-chain AUTH_MD5
  exit-af-interface
  !
  topology base
  exit-af-topology
  network 0.0.0.0
 exit-address-family

Now you see we have all config under ONE instance of EIGRP, pretty neat hah :), your next logical place after that is topology configuration mode:

R2(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 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    <=====

here you will see a technology called Multi-Topology Routing , may be you wanna read more about it :P :P, but for now our basic config will go topology base mode which applies to global or default routing table, and here you will find all the magic about distribute-list and redistribution,etc....

R2(config-router-af)#topology base
R2(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
  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

Not bad Cisco for inventing this mode , In my opinion if it prove something here I think Cisco may apply it for other Routing protocols.

See you later...










1 comment: