EIGRP – Quick note on backup routes

EIGRP can store a backup route in its topology table, incase of the primary route being removed from the routing table.

The primary route of EIGRP is known as the successor route, and the backup route the feasable successor.

One condition needs to be met for a route to become a feasible successor:

The Reported Distance (RD) of the feasible successor needs to be lower than the Feasible Distance (FD) of the successor in the topology table.

R1# sh ip eigrp topology
IP-EIGRP Topology Table for AS(2014)/ID(1.1.1.1)

Codes: P – Passive, A – Active, U – Update, Q – Query, R – Reply,
r – reply Status, s – sia Status
P 3.3.3.0/24, 1 successors, FD is 409600
via 192.168.13.3 (409600/128256), FastEthernet0/1   ————–> Successor route FD
via 192.168.12.2 (412160/156160), FastEthernet0/0 —————-> Feasible successor RD

This is just something that needs to be memorized.

EIGRP Basics Part 4 – Metric Calculation

In this post I am going to explore how EIGRP calculates is metrics for routes.

Below is the HUGE equation used to calculate EIGRPs metric value, don’t panic, it can be simpified!!!

EIGRP Metric = 256*((K1*Bw) + (K2*Bw)/(256-Load) + K3*Delay)*(K5/(Reliability + K4)))

  • Bw = minimum bandwidth from beginning to end
  • delay = Accumulative delay from beginning to end (Calculated on each receivers interface)

K-values

Are used to scale the calculation. Once inserted into the equation they will manipulate the outcome (Best practice is to leave them default).

Default K-vlaues

K1 – 1 | K2 – 0 | K3 – 1 | K4 – 0 | K5 – 0

If the K values are left default the equation can be simplified to this:

EIGRP Metric = 256*((10,000,000 / min. Bw) + Delay)

Much better!!!

Lets have a look at a topology

EIGRP_Metric_Calculation

 

We will calculatig the metric of route 3.3.3.3 on R1 from R3 using the default K-values.

EIGRP Metric = 256*((10,000,000 / min bw = 1544) + (Delay=(loopback -10 + R2 F0/1 – 1000 + R1 S1/0 – 10)

EIGRP Metric = 256*((10,000,000 / 1544) + 1020) = 1918976

Verify

R1#sh ip route
Codes: 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

Gateway of last resort is not set

C 192.168.12.0/24 is directly connected, Serial1/0
D 3.0.0.0/8 [90/1918976] via 192.168.12.2, 00:10:05, Serial1/0
D 192.168.23.0/24 [90/1916416] via 192.168.12.2, 00:10:05, Serial1/0

 

Victory 🙂

EIGRP Basics Part 3 – Query

This post I am going to have a look at the EIGRP Query message. This will probably be a short post, but what the hell 🙂

EIGRP will initiate a query message when a route to a network becomes unavailable, for a number of reasons: next hop neighbor went down or a neighbor lost a valid path to the network.

As we have seen with the Hello and Update messages, EIGRP will send the query message to the destination multicast address of 224.0.0.10 and ask its neighbors if the have a path to the network that became unavailable.

Sample packet capture:

EIGRP_Query

 

Notice in the screenshot above that the query message is asking the multicast group 224.0.0.10 for a route to the 2.0.0.0/8 network.

EIGRP Basics Part 2 – Updates

Neighbor Updates

So how do the routers running EIGRP know about the rest of the networks that are not directly connected to them?

After the routers have formed an adjacency they “tell” each other about networks that are connected to them or learned from other neighbors. These are called Update messages.

Full Update messages are sent after the adjacency forms to provide the new neighbor with all the network details.

Lets see what they look like

EIGRP_Update

You will notice that the destination address, of the update message, is addressed to 224.0.0.10. This updates all neighbors listening, by means of mutlicasting. All neighbors on the same segment register with this multicast group.

If the sender of the update message does not receive an acknowledgement of the message, relayed back to the senders uni-cast address, the sender will update the neighbor with an update destined to the intended receivers uni-cast address.

Partial Updates

Partial updates occur only when there is a change in the network ie. A new network is attached and advertised into the EIGRP domain. The partial update messages will only contain the changes that have occured.

 

These have been pretty high level explainations, because I feel if you are chasing your CCIE cert then you probably have this knowledge already. So it is intended as a recap 🙂

 

 

 

 

EIGRP Basics Part 1 – Neighbor Adjacency

Every network engineer, these days, working in a Cisco environment has come across EIGRP in a network. In this post I am going to briefly cover what it takes to establish a neighbor

Lets start with with the facts of EIGRP:

  • IP protocol number 88
  • Updates are full or partial
  • Supports MD5 Authentication
  • Classless
  • Route summarisation can occur anywhere in the EIGRP network
  • It is, of coarse, a Distance Vector routing protocol. Which means each EIGRP instance on a router/switch only knows network infomation given by it’s neighboring devices.

Forming Neighbor Adjacency

A few criteria need to match in order for a neighbor-ship to form

  1.  Authentication must pass
  2. K values have to match (I will cover what these values mean in a followup post)
  3. Autonomous system number must be the same
  4. Hellos must originate from the same subnet as the receiving interface

Lets take a look at a simple scenario:

EIGRP neighbors

Below is minimum configuration needed to establish the neighbors with authentication.

Router 1 config

key chain LAB
key 1
key-string cisco
!
interface FastEthernet0/0
ip address 192.168.0.1 255.255.255.0
ip authentication mode eigrp 2014 md5
ip authentication key-chain eigrp 2014 LAB
duplex auto
speed auto
!
router eigrp 2014
network 192.168.0.0
no auto-summary

Router 2 config

key chain LAB
key 1
key-string cisco
!
interface FastEthernet0/0
ip address 192.168.0.2 255.255.255.0
ip authentication mode eigrp 2014 md5
ip authentication key-chain eigrp 2014 LAB
duplex auto
speed auto
!
router eigrp 2014
network 192.168.0.0
no auto-summary

Lets have a look at a packet capture of a Hello message sent from one router to the other, but just the EIGRP field.

The highlighted fields HAVE to match or you will find the neighbors not forming.

EIGRP_Hello_Packet

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Verifying a correctly formed neighbor relationship using show ip eigrp neighbors in privileged mode.

R2#sh ip eigrp neighbors
IP-EIGRP neighbors for process 2014
H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq
(sec)         (ms)       Cnt Num
0   192.168.0.1             Fa0/0             14 00:47:04   28   200  0  54

Neighbor Discovery

EIGRP Hellos are are sent using the destination multicast address 224.0.0.10 (Reserved for EIGRP), which all potential EIGRP neighbors listen to for Hello messages.

Once a pair of EIGRP routers/switches have heard eachothers Hello and all the above fields match, they will form an adjacency.

 

If you have any feedback for me please do comment 🙂 I intend this blog to assist others and for assistance from others.

Introduction

So today is the day that I start my blog to aid in my path towards the CCIE R&S certification.

To be honest, at this stage, I am completely overwhelmed by the amount of work and commitment that is required to go all the way.

I have been in networking now for about 5 years. It wasn’t a planned career move, but rather a necessity at the time. You see I came from a telephony background, mostly doing analogue and digital PBX systems. The need to move into networking came from the VoIP boom and traditional PBX systems suddenly relying on network infrastructure to operate.  I am in no way unhappy with the transistion, in fact I fell in love with networking!

Enough rambling. The purpose of this blog is actually to assist me with recording ideas and study notes in my adventure towards my CCIE #. Perhaps it can assist others whom are in the same boat aswell 🙂