====== EIGRP - Enhaced Interior Gateway Routing Protocol ======
//(Cisco)//
* Full updates - posílají se jen poprvé při objevování sousedů
* Partial updates - když už o sobě sousedi vědí, posílají si jen částečné updaty
Update messages
* multicast 224.0.0.10
* IP protocol type 88
* RTP (Reliable Transport Protocol)
* Updaty obsahují masku => podpora VLSM
* Neighbor table
* Topology table
* Routing table
===== Metrika =====
* Bandwidth
* Delay
* (interface load)
* (onterface reliability)
* Metric = ((10na7 / nejnižší rychlost) + celkové-zpoždění) * 256
* nejnižší-rychlost (Kbps)
* celkové-zpoždění (desítky microsekund)
* Lze ovlivnit příkazy:
* R(config-if)# **bandwidth**
* R(config-if)# **delay**
===== Hello/Hold Timers =====
Defaultně Hello=5s, Hold=15s. Doporučen je poměr 1:3 - pro orientaci, nemusí však platit. Hello však nesmí být větší než Hold !!!
Timery se nastavují per-interface:
* Hello timer - jak často se budou odesílat hello zprávy z interfacu
* Hold timer - jaký si má můj soused (sousedi na LAN) nastavit Hold timer pro výměnu Hello zpráv se mnou. Není-li během holdtime přijato Hello, je soused považován jako nedostupný.
Příklad nastavení Hello=2s, Hold=6s pro AS=9:
interface Fastethernet0/1
ip hello-interval eigrp 9 2 //odesílám Hello každé 2 sekundy (z int. fa0/1)
ip hold-time eigrp 9 6 //soused bude čekat na každé další Hello ode mě 6 sekund
{{:wiki:site:cisco:eigrp_timers.png|}}
* **show ip eigrp interface** //type number// **detail** (zde lze zjistit Hello timer)
* **show running config**
* **show ip eigrp neighbor** (zde lze zjistit aktuální stavy Hold timerů pro jednotlivé sousedy)
R1#show ip eigrp interfaces detail fa0/1
IP-EIGRP interfaces for process 9
Xmit Queue Mean Pacing Time Multicast Pending
Interface Peers Un/Reliable SRTT Un/Reliable Flow Timer Routes
Fa0/1 3 0/0 535 0/1 50 0
Hello interval is 2 sec <---------------------------------------------------------------- ZDE JE HELLO TIMER
Next xmit serial
Un/reliable mcasts: 0/1 Un/reliable ucasts: 4/9
Mcast exceptions: 1 CR packets: 1 ACKs suppressed: 1
Retransmissions sent: 2 Out-of-sequence rcvd: 0
Authentication mode is not set
Use multicast
R2#show ip eigrp neighbors
IP-EIGRP neighbors for process 9
H Address Interface Hold Uptime SRTT RTO Q Seq
(sec) (ms) Cnt Num
2 172.16.1.4 Fa0/1 11 00:03:36 4 200 0 6
1 172.16.1.3 Fa0/1 11 00:05:40 12 200 0 4
0 172.16.1.1 Fa0/1 4 00:09:22 1 200 0 2
Ve sloupci Hold jsou zbývající časy Hold timerů pro jednotlivé sousedy.
Číslo 4 v posledním řádku znamená, že za 4 sekundy vyprší Hold timer pro tohoto souseda.
Opakováním tohoto show příkazu lze v User režimu routeru zjistit v jakém rozsahu jsou Hold timery.
===== Passive interfaces =====
Máme-li na např. na jednom interfacu routeru síť, kterou chceme mít v EIGRP procesu, ale víme že v této síti už nebude žádný Neighbor, máme dvě možnosti, jak zabránit posílání Hello zpráv z tohoto interfacu.
**1)** Pomocí **network** příkazu aktivovat EIGRP na interfacu.
* Všechny interfejsy jsou **defaultně** pasivní:
router eigrp 1
passive-interface default
no Passive-interface serial0/0/0
no Passive-interface serial0/0/1
...
* Pasivní interfejsy jsou jen vyjmenované interfacy:
router eigrp 1
passive-interface serial0/0/0
passive-interface serial0/0/1
...
**2)** Nezapínat EIGRP na interfacu, ale použít příkaz **redistribute connected**
**Show příkazy**
* **show ip eigrp interfaces** //-vypíše jen aktivní interfacy//
* **show ip protocols** //-ve výpise jsou přímo vypsány pasivní interfacy//
===== EIGRP Authentication =====
Slouží k authentikaci zpráv mezi sousedy, zprávy NEjsou šifrovány.
Vytvoření (sady) klíčů:
* R(config)#**key chain** //name//
* R(config-keychain)#**key** //1//
* R(config-keychain-key)#**key-string** //string//
Zapnutí MD5 authentikace na interfejsu:
* R(config-if)#**ip authentication mode eigrp** //asn// **md5**
* R(config-if)#**ip authentication key-chain eigrp** //asn name_of_chain//
==== Nastavení doby platnosti klíčů ====
* Odesílané EIGRP zprávy - použije se jen **první** aktuálně platný klíč (nejmenší ID)
* Přijímané EIGRP zprávy - přijatá zpráva se ověřuje proti **všem** aktuálně platným klíčům
{{:wiki:site:cisco:eigrp_keys.png|}}
V případě použití časově omezených klíčů se doporučuje, aby všechny prvky měly synchronizovaný čas - nejlépe pomocí NTP.
key chain klice
key 1
key-string petr
accept-lifetime 08:00:00 Feb 11 2009 08:00:00 Mar 11 2009
send-lifetime 08:00:00 Feb 11 2009 08:00:00 Mar 11 2009
key 2
key-string pavel
accept-lifetime 08:00:00 Mar 11 2009 08:00:00 Apr 11 2009
send-lifetime 08:00:00 Mar 11 2009 08:00:00 Apr 11 2009
* #**show ip eigrp neighbors** - //přehled sousedů//
* #**show key chain** - //přehled klíčů a jejich platností//
* #**debug eigrp packet** - //debug výměny zpráv a jejich autentikace//
* #**show clock** - //kontrola času na obou routerech//
===== Neigborship - Statické nastavení =====
EIGRP umožňuje nastavit sousedy staticky (místo dynamického zjišťování). Tím lze snížit provoz, který je generován multicastovými Hello zprávami. Výhodné je to zejména u Frame Relay. Představme si, že máme na jednom interfacu ukončených 10 PVC, ale jen na dvou z nich jsou sousedi. Defaultně se multicast pošle do všech deseti okruhů, při statické konfiguraci se Hello pošle konkrétním sousedům unicastem.
Konfigurace
* R(config)# **router eigrp** //10//
* R(config-router)# **neighbor** //192.168.1.1 Serial0/0.1//
* 192.168.1.1 = IP adresa souseda (musí být ve stejném subnetu jako lokální int.)
* Ser0/0.1 = lokální interface, přes tento interface už nemohou být navázány sousedské vztahy dynamicky!!!
* #**show ip eigrp neighbors detail**
* #sh ip eigrp neighbors - nevypisuje zda jsou sousedi Static
!!! Pozor !!! Nastavím-li statického souseda např. na fa0/0, který je připojen k LAN, kde jsou další sousedé s dynamickou konfigurací, nelze s těmito sousedy navázat sousedství, protože interfejs nakonfigurovaný jako static neposílá ani nezpracovává multicasty. Je možné mít interface jako Static a zároveň přidaný do EIGRP příkazem **network** => funguje statické sousedství a zároveň se posílají a zpracovávají multicasty => ale to postrádá smysl...
===== Konfigurace EIGRP metriky (K-values) =====
>str. 47
Pomocí K hodnot lze nastavit výpočet metriky pro EIGRP (např. podle spolehlivosti linky nwbo jejího vytížení. Používají se k tomu hodnoty K1, K2, K3, K4, K5. Nedoporučuje se je ale měnit.
Jestliže dva routery nemají K hodnoty nastavené stejně => nemohou se stát sousedy.
* #**metric weights 0** //k1 k2 k3 k4 k5//
===== EIGRP Router-ID =====
Určování RID:
- Příkazem R(config-router)#**eigrp router-id** //a.b.c.d//
- Použije se nejvyšší IPv4 adresa loopbacku (musí být up)
- Použije se nejvyšší IPv4 adresa interfacu (musí být up)
Routery se mohou stát sousedy i když mají **stejné RID**, problém nastává v situaci, když se do EIGRP redistribují externí routy => RID by mělo být unikátní!
>str.57