This entire series on routing was created when I was preparing for the Cisco 642-901 BSCI test, as my notes. I then made a simple edit and published the text. If you think something essential is missing, something is not described correctly or is not entirely clear, I will welcome your information in the comments.
The article was edited based on the feedback from Tomfi. Thank you.
EIGRP Properties
- a proprietary Cisco protocol, an extension of the older IGRP, it is an Advanced Distance-Vector Routing Protocol and also contains some characteristics of a link-state routing protocol
- uses the DUAL algorithm - Diffusing Update based algorithm
- compared to IGRP - faster convergence, greater scalability, loops are almost eliminated (thanks to the DUAL algorithm) - it only sends changes, non-periodically
- it is a classless protocol, using CIDR and VLSM (variable length subnet masks) - it sends the prefix length for each target subnet as the mask
- establishes relationships with neighbors called adjacency, discovers neighbors using Hello packets, which are sent every 5s on fast and 60s on slow links
- for two routers to become neighbors, they must be members of the same AS (Autonomous System) and have the same K values (constants for metric calculation), also the same EIGRP version (not yet used), interface on the same subnet, the same MD5 hash
- by default, it uses auto-summarization across classful boundaries - ensures that routing tables are as compact as possible, we can turn off
no auto-summary, which is necessary when we have a non-contiguous address space (during summarization, addresses outside our network would be included) - we can use manual summarization per interface, with Null0 set as the destination
- supports IP, IPv6, IPX, AppleTalk
- at most it will take (by default) 50% of the interface throughput (it gets the data from bandwidth)
- metric is using 32-bit values, usually only bandwidth and delay are used
metric = ([(K1 * bandwidth) + [(K2 * bandwidth) ÷ (256 - load)] + (K3 * delay)] * [K5 ÷ (reliability + K4)]) * 256 = roughly = (bandwidth + delay) * 256- if the router has no feasible successor, it switches to the active state and queries its neighbors
- Stuck In Active (SIA) - a state where the path is in the active state, the router sends a Query and in a certain state does not receive a response, in which case EIGRP will exclude these neighbors
- routing tables (update routing information) are passed using multicast to
224.0.0.10, if possible, otherwise unicast is used (retransmission of an unconfirmed update, interface without multicast support, manually configured neighbors) - unequal cost path load balancing - uses the
variancevariable, by default the path with the smallest metric (FD) is chosen, if there are multiple such paths (have the same FD), then equal load balancing is used; if we set the variance, all paths with a metric less than variance*minimum metric to the destination (metric <= variance*FD) will be used. However, only paths that are feasible successors, for whichRD<FDholds (=the path from the neighbor to the destination is less than the shortest path), are used.
Basic EIGRP Terms
- Successor - the primary route to the destination, stored in the routing table, there can be multiple successors to the same destination
- Feasible Successor - a backup route, stored in the topology table, there can be multiple feasible successors to the same destination, its RD is less than the FD of the current best path
- Reported Distance (RD) - or also Advertised Distance (AD), is the lowest total metric (distance) along the path to the destination network (through successors) sent by the neighbor
- Feasible Distance (FD) - is RD + the cost to reach the neighbor who sent the RD
- Feasibility Condition (FC) - is a sufficient condition to reach a network without loops, it is used when selecting a successor and feasible successor, it says that if
RD < FDfor a particular destination, then it lies on a loop-free path
Packets Sent in EIGRP
- Hello - multicast, sent unreliably (no confirmation required), discovering neighbors (discover), identifying non-functional routers, sent (interval) every 5s on fast links or every 60s, the hold time for the hello packet is 3 x hello interval
- Acknowledgement - unicast, unreliable, hello without data with a confirmation number
- Query - multicast, delivered reliably, sent when switching to the active state
- Reply - unicast, delivered reliably, response to a query
- Update - multicast, delivered reliably (reliably), conveys availability, the neighbor uses them to build the topology table
Tables for EIGRP
- routing - the best routes to destinations
- topology - routing records for all destinations
- neighbors - information about neighboring routers (adjacent)
Stub Routing
- used for Hub and Spoke topology (wheel model - hub of the wheel and spokes, a star topology equivalent)
- stub is configured only on remote routers (spoke)
- the stub router's neighbors should be only EIGRP hub routers (distribution)
- reduces resource usage, increases network stability and simplifies stub router configuration
- Stub router routes packets only to the network it explicitly advertised, so the Hub router doesn't send it Queries
- the stub router announces (advertised) only summary and connected routes
- we don't ask the stub router about its routes

Cisco IOS Commands for Configuring EIGRP
ROUTER(config)#router eigrp 100 // enabling EIGRP, 100 = AS number ROUTER(config-router)#network 10.1.10.0 0.0.0.255 // which interfaces will participate in EIGRP (by network number), wildcard mask is used for the mask ROUTER(config-router)#no auto-summary // disable auto-summarization ROUTER(config-router)#variance number // unequal cost path load balancing, accepts everything < min_metric*variance ROUTER(config-router)#distance eigrp 80 130 // change AD, used to prevent loops between multiple AS with multi-path redistribution, 80 = internal-distance, 130 = external-distance ROUTER(config-router)#passive-interface serial0/0 // does not announce routing information on the given interface - stops sending and receiving hello packets (i.e., routing updates) ROUTER(config-router)#eigrp stub // sends summary and directly connected routes ROUTER(config-router)#eigrp stub receive-only // sends nothing ROUTER(config-router)#eigrp stub connected // sends only directly connected routes ROUTER(config-router)#eigrp stub static // sends only static routes ROUTER(config-router)#eigrp stub summary // sends only summarized routes ROUTER(config-if)#ip summary-address eigrp 100 192.1.0.0 255.255.0.0 // manual definition of summarization, 100 = AS number ROUTER(config-if)#bandwidth 56 // max. kbits data flow per interface, for metric determination ROUTER(config-if)#ip bandwidth-percent eigrp 1 200 // what percentage EIGRP can use, AS = 1, 200% (calculated from bandwidth) ROUTER(config-if)#ip authentication mode eigrp 1 md5 // Authentication for EIGRP on the interface (keys still need to be defined) ROUTER(config-if)#ip authentication key-chain eigrp 1 name ROUTER#show ip eigrp traffic // EIGRP packet statistics ROUTER#show ip eigrp topology // displays records from the topology table
Celkom pekne zhrnutie,myslim ze je super ze pises tieto clanky zaroven ako sa pripravujes na skusky,urcite sa to tak lepsie pamata, a aby som nezabudol gratulujem k zladnutiu examu :),este mas pred sebou ISCW?
respond to [1]Thead: Děkuju, uvidíme jestli tam tomfi nenajde nějaké základní nesrovnalosti :-).
BSCI byla první zkouška, na kterou jsem šel. Už nějakou dobu se chystám na BCMSN, která mi nepřijde tak těžká (jsou to věci, kterým se denně věnuju), jen si chci zopáknout některé poznámky, ale pořád není čas. No a pak ještě ISCW a ONT.
respond to [2]Samuraj: Aj ja som mal prave minuly tyzden skusku BCMSN ta bola zase moja prva, :) ak ti mozem poradit tak velmi dobre materialy su student guidy 1/2 mne velmi pomohli na exame,aj poznamky si robim z nich (bullet-point). Teraz sa pomaly chystam na BSCI, ale velmi ma zaujima aj archtektura (ARCH) ale teraz na to nemam velmi cas :(.
Dakujem za clanky
Díky moc za tyhle články - k maturitě mi přijdou vhod :D K vypracování otázek stačej skoro dokonle - vyhledávám si jen minimum dalších informací :)
Jak je hned v úvodu článku, tak není náhodou proprietárním protokolem Cisca IGRP?
EIGRP je otevřený, ne?
[8] Slova otevřený a proprietární se nevylučují ;-). Každopádně oba jsou to protokoly vytvořené firmou Cisco a nejsou standardizované.