Sei sulla pagina 1di 38

Modulo 5: Enhanced Interior Gateway Routing Protocol

(EIGRP)

Introduzione
Enhanced Interior Gateway Routing Protocol (EIGRP) è un protocollo di instradamento
proprietario Cisco, basato sul protocollo IGRP. Tuttavia, mentre IGRP è un protocollo che
si basa sull'indirizzamento IP a classi (classful), EIGRP ha pieno supporto per CIDR e
VLSM (classless), consentendo così di massimizzare lo spazio di indirizzamento. Inoltre
rispetto al protocollo IGRP, EIGRP è stato notevolmente migliorato, sia sotto l'aspetto della
velocità di convergenza, sia sotto l'aspetto della gestione delle rotte.

Il protocollo EIGRP viene spesso classificato come protocollo di instradamento ibrido,


perché utilizza caratteristiche proprie sia dei protocolli di instradamento vettore distanza,
sia dei protocolli a stato del collegamento. Tecnicamente il protocollo EIGRP è un
protocollo vettore distanza avanzato, che utilizza caratteristiche comuni ai protocolli a stato
del collegamento. Ad esempio alcune delle caratteristiche migliori del protocollo OSPF,
come aggiornamenti parziali e relazioni di associazione con i nodi adiacenti, sono presenti
anche nel protocollo EIGRP. Tuttavia, per mantenere il più semplice possibile,
l'implementazione e la configurazione del protocollo EIGRP, è stato scelto di non
implementare altre caratteristiche avanzate, come ad esempio la strutturazione
gerarchica. Tali caratteristiche, sebbene importantissime, aumentano la complessità di
amministrazione. L'implementazione, nel protocollo OSPF, di aree multiple, richiede
notevoli conoscenze, sia di terminologia adottata, che di comandi da utilizzare. EIGRP, a
dispetto delle sue caratteristiche avanzate, rimane un protocollo relativamente semplice da
configurare e amministrare. E sebbene non rispecchi il progetto di OSPF, di protocollo
gerarchico, resta comunque un'ottima scelta anche in reti di grandi dimensioni,
multi-protocollo, in cui vengono utilizzati principalmente dispositivi Cisco.

5.1 I principi di base del protocollo EIGRP


5.1.1 Compatibilità tra EIGRP e IGRP

Cisco rilasciò il protocollo EIGRP nel 1994, come versione perfezionata del proprio
protocollo di instradamento IGRP. Entrambi i protocolli sono compatibili, tranne quando
vengono utilizzate alcune caratteristiche specifiche di EIGRP, come l'instradamento
multi-protocollo, che su IGRP non sono supportate.

A dispetto dell'elevata compatibilità con IGRP, EIGRP utilizza un metodo differente per il
calcolo della metrica. Praticamente EIGRP utilizza un fattore di scala di 256 rispetto alla
metrica di IGRP, questo perché mentre EIGRP calcola la metrica come valore a 32 bit, il
protocollo IGRP esegue lo stesso calcolo ma come valore a 24 bit. Comunque si può
passare semplicemente da un valore di metrica all'altro, semplicemente moltiplicando o
dividendo per 256

Metrica di EIGRP
Sia EIGRP che IGRP utilizzano la seguente espressione per calcolare la metrica di un percorso di rete:

K2⋅banda K5

metrica= K1⋅banda
256−carico
K3⋅ritardo ⋅ 
affidabilitàk4
Metrica di EIGRP

I parametri K corrispondono a costanti numeriche i cui valori predefiniti sono i seguenti:

K1 = 1 K2 = 0 K3 = 1 K4 = 0 K5 = 0

Quando le costanti K4 e K5 hanno valore pari a zero la seconda parte dell'equazione:

K5
affidabilitàk5
non viene fattorizzata nel calcolo del valore di metrica. Quindi, quanto tutte le costanti K assumono i valori
predefiniti, il calcolo della metrica per i protocolli EIGRP e IGRP, diventa:

metrica=bandaritardo
Tra la metrica IGRP e e quella EIGRP c'è un fattore di scala pari a 256. Questa differenza viene introdotta
nel momento in cui i valori di banda e ritardo vengono adattati per il calcolo della metrica. Il valore di banda
utilizzato viene calcolato rispettivamente dai due protocolli secondo queste espressioni:

10000000
bandaIGRP =
larghezza di banda

10000000
bandaEIGRP = ⋅256
larghezza di banda
stesso discorso vale per il ritardo:

ritardo reale
ritardoIGRP =
10

ritardo reale
ritardoEIGRP = ⋅256
10

Inoltre i due protocolli hanno limiti differenti sul numero massimo di nodi intermedi che
possono esserci tra due percorsi di rete. Mentre IGRP ha un limite di 255 nodi intermedi,
tale valore per EIGRP scende a 224. Tale valore è tuttavia più che sufficiente a supportare
la stragrande maggioranza delle infrastrutture di rete.

Configurare un router in modo che due protocolli di instradamento come OSPF e RIP
condividano alcune informazioni, è un'operazione abbastanza complessa e richiede
un'adeguata preparazione e conoscenza dei comandi. Questo non è vero invece tra i
protocolli EIGRP e IGRP, questi infatti ridistribuiscono automaticamente, all'interno dello
stesso sistema autonomo (AS autonomous system), i percorsi di rete appresi. La figura
precedente, mostra infatti, come il router RTB ridistribuisca automaticamente le rotte
apprese con il protocollo EIGRP verso il sistema autonomo IGRP, e viceversa.

Tabella di instradamento router RTA


RTA# show ip route

<omissis>
C 10.1.1.0 is directly connected, Serial0
D 172.16.1.0 [90/2681856] via 10.1.1.1, Serial0
D EX 192.168.1.0 [170/2681856] via 10.1.1.1, 00:00:04, Serial0

Tabella di instradamento Router RTC


RTC# show ip route

<omissis>
C 192.168.1.0 is directly connected, Serial0
I 10.0.0.0 [100/10476] via 192.168.1.1, 00:00:04, Serial0
I 172.16.0.0 [100/10476] via 192.168.1.1, 00:00:04, Serial0

Il protocollo EIGRP contrassegna le rotte apprese da protocollo IGRP o comunque da


qualsiasi altra fonte, come rotte esterne, questo per differenziarle da quelle che apprende
da router EIGRP. D'altra parte il protocollo IGRP, non è in grado di effettuare tale
differenziazione. Si osservi che il comando show ip route identifica i percorsi di reti
ottenuti con il protocollo EIGRP utilizzando la lettera “D”, mentre le rotte esterne vengono
identificate aggiungendo anche le lettere “EX”. Le tabelle precedenti mostrano i risultati
parziali del comando show ip route eseguito sui router RTA e RTC della rete
dell'esempio precedente. Si può osservare come il router RTA segnali la differenza tra le
reti apprese via EIGRP (172.16.0.0) e le reti ridistribuite con IGRP (192.168.1.0),
mentre sul router RTC tale distinzione non avviene.

Questo perché sul router RTC è in esecuzione solo il protocollo IGRP. E nonostante il fatto
che le reti 10.1.1.0 e 172.16.0.0 siano annunciata dal protocollo EIGRP, il router le
consideri provenienti da un router con IGRP.

Confronto tra i protocolli EIGRP e IGRP


IGRP EIGRP
Proprietario Cisco Proprietario Cisco
Basato su un algoritmo vettore-distanza avanzato
Basato sull'algoritmo vettore-distanza
(protocollo ibrido)
Utilizza esclusivamente l'indirizzamento IP a Classi Non basato sull'indirizzamento IP a Classi
Bilanciamento del carico su percorsi di rete con Bilanciamento del carico su percorsi di rete con
metrica differente metrica differente
Massimo 255 nodi intermedi Massimo 225 nodi intermedi
Indipendente dal protocollo di livello rete usato
Relazioni di associazione con i router adiacenti
5.1.2 Le caratteristiche di progetto del protocollo EIGRP

Sebbene il protocollo EIGRP abbia un grado di compatibilità molto elevato con IGRP, il
suo funzionamento interno è molto differente. EIGRP è un protocollo vettore-distanza
avanzato, e sotto certi aspetti funziona allo stesso modo dei protocolli a stato del
collegamento (link-state), ad esempio nel il modo in cui vengono gestiti i messaggi di
aggiornamento o amministrate le informazioni di instradamento. Rispetto ai semplici
protocolli basati su algoritmi vettore-distanza, EIGRP offre i seguenti vantaggi:

Vantaggi di EIGRP
Tempi di convergenza ridotti;
Uso efficiente della larghezza di banda;
Supporto per VLSM e CIDR;
Supporto per differenti protocolli di livello rete;
Indipendenza dal protocollo di livello rete;

Rapidità di convergenza: I router EIGRP convergono molto più rapidamente,


poiché il protocollo EIGRP si basa su un algoritmo di calcolo dei percorsi di rete
molto efficiente, chiamato DUAL che sta per Diffusing Update Algorithm. Tale
algoritmo garantisce che i percorsi di rete calcolati siano privi di anelli o loop, e
consente ai router, in caso di variazioni alla topologia di rete, di sincronizzarsi
istantaneamente;

Uso efficiente della larghezza di banda: Il protocollo EIGRP prevede l'utilizzo di


aggiornamenti parziali e mirati utilizzando così solo una minima parte della banda
disponibile quando la rete è stabile;

Aggiornamenti parziali e mirati: Piuttosto che inviare l'intera tabella di


instradamento, il protocollo EIGRP prevede l'utilizzo di messaggi di
aggiornamento parziali o incrementali. Questo comportamento è molto simile a
quello del protocollo OSPF, ma diversamente da questo, EIGRP invia gli
aggiornamenti solo ai router che necessitano realmente di tali informazioni, e
non a tutti i router appartenenti ad una determinata area. Per questa ragione gli
aggiornamenti EIGRP sono anche mirati (bounded);

Consumo minimo della banda quando la rete è stabile: Per controllare il


funzionamento dei collegamenti, e quindi verificare che la topologia di rete non
sia variata, il protocollo EIGRP prevede che i router si scambino tra loro piccoli
messaggi chiamati pacchetti di hello. Questo scambio avviene ad intervalli
regolari, ma grazie alle dimensioni estremamente contenute di tali pacchetti, il
consumo di banda è minimo;

Supporto per VLSM e CIDR: Diversamente da IGRP, il protocollo EIGRP offre


pieno supporto all'indirizzamento IP privo di Classi, grazie all'invio, nei messaggi di
aggiornamento della maschera di sottorete.

Supporto per differenti protocolli di livello rete: Il protocollo EIGRP consente di


instradare pacchetti di diversi protocolli di livello rete, grazie ad un'architettura
indipendente dal protcollo usato. Non è limitato solo al protocollo IP ma supporta
anche IPX e AppleTalk;

Indipendenza dal protocollo di livello rete: L'archietettura EIGRP, grazie a


Protocol Dependent Module, è indipendente dal protocollo routed utilizzato a livello
rete. Questa caratteristica lo rende immune dagli eventuali aggiornamenti che i
protocolli di livello rete come IP, possono subire nel tempo. Infatti un tale evento
potrebbe richiedere la riscrittura di un singolo modulo per adattarlo all'architettura
del nuovo protocollo, ma l'essenza di EIGRP rimarrebbe invariata.
5.1.3 Terminologia utilizzata nel protocollo EIGRP

I router che utilizzano il protocollo EIGRP memorizzano le informazioni topologiche e


quelle sui percorsi di rete direttamente nella memoria RAM, in modo da potervi accedere
direttamente. Allo stesso modo di OSPF, anche EIGRP utilizza diverse strutture dati o basi
di dati (database) per memorizzare le varie informazioni. Vista la complessità di EIGRP, è
necessario definire formalmente una terminologia. Il seguente elenco contiene i termini
che sono utilizzati nel protocollo EIGRP:

Nomenclatura usata in EIGRP


Neighbor table;
Topology Table;
Routing Table;
Successor;
Feasible Successor;

Neighbor table (Tabella delle adiacenze o dei vicini): Ogni router EIGRP utilizza una
tabella in cui viene memorizzato l'elenco dei router vicini o adiacenti, similmente a quanto
avviene con la base di dati della adiacenze nel protocollo OSPF. Per ognuno dei protocolli
di livello rete impostato con EIGRP il router utilizza una tabella dei vicini differente;

Topology table (Tabella topologica): Questa tabella contiene l'elenco di tutti i percorsi di
rete che il router ha appreso verso ogni destinazione. Se esistenti, tale tabella contiene
anche tutti i percorsi che il router ha appreso verso la stessa destinazione. Anche in
questo caso, per ogni protocollo di livello rete configurato con EIGRP, viene utilizzata una
tabella topologica differente;

Routing table (Tabella di instradamento): Per ogni destinazione conosciuta il router


seleziona dalla tabella topologica i percorsi migliori, cioè quelli aventi metrica più bassa,
Questi percorsi vengono inseriti nella tabella di instradamento. Come nei casi precedenti,
per ogni protocollo di livello rete configurato con EIGRP, viene utilizzata una tabella di
instradamento differente;

Successor (Successore): Questo è il nome che viene usato in EIGRP per identificare la
rotta primaria o principale che verrà utilizzata per raggiungere una particolare
destinazione. Le rotte successor vengono memorizzate nella tabella di instradamento del
router. Se esistono più rotte successor verso una stessa destinazione, il router può
inserirle tutte nella tabella di instradamento.

Feasible Successor (Possibile Successore): Questo termine viene utilizzato in EIGRP


per identificare percorsi di rete alternativi o di backup (emergenza). Questi percorsi
vengono generalmente elaborati dal router nello stesso momento in cui vengono scelti
quelli successor, ma vengono memorizzati soltanto nella tabella topologica. Se esistenti, il
router, può memorizzare nella tabella topologica differenti feasible successor verso la
stessa destinazione.
5.2 Caratteristiche del protocollo EIGRP
5.2.1 Tecnologia del protocollo EIGRP

Per l'implementazione del protocollo EIGRP sono state impiegate tutta una serie di
tecnologie all'avanguardia. Ognuna di queste ha consentito di migliorare il protocollo
EIGRP in termini di efficienza operativa, velocità di convergenza e funzionalità sia rispetto
al protocollo IGRP che ad altri protocolli di instradamento. L'implementazione di EIGRP si
basa sulle seguenti tecnologie:

Neighbor discovery and recovery – Individuazione dei dispositivi adiacenti e


ripristino;

Reliable Transport Protocol – Protocollo di trasporto affidabile;

DUAL finite-state machine – Algoritmo a stati finiti DUAL;

Protocol-specific modules – Moduli specifici per protocollo di livello rete;

5.2.2 Neighbor discovery and recovery – Individuazione dei dispositivi adiacenti e


ripristino

Come più volte detto nei moduli precedenti, i protocolli di instradamento più semplici, non
prevedono che tra i router adiacenti venga stabilità alcun tipo di relazione di vicinanza. Per
esempio, RIP e IGRP, prevedono semplicemente che i router inviino, per intero, la propria
tabella di instradamento verso un indirizzo multicast o broadcast. Invece i protocolli di
instradamento più sofisticati, come EIGRP o OSPF, prevedono che ogni router stabilisca
una cosiddetta relazione di vicinanza con i router adiacenti.

Il protocollo EIGRP prevede che le relazioni di adiacenza o di vicinanza, vengano stabilite


utilizzando piccoli messaggi chiamati pacchetti di hello. I router Cisco sono preimpostati in
modo tale che l'invio di tali pacchetti avvenga ogni 5 (cinque) secondi. Fino a quando un
router EIGRP riceve regolarmente i pacchetti di hello dai suoi vicini, presume i percorsi di
rete verso tali router siano funzionali. Una volta che un router EIGRP ha formato le
necessarie relazioni di adiacenza, è in grado di:

Apprendere dinamicamente nuovi percorsi di rete;


Identificare quei router che diventano irraggiungibili o non operativi;
Ripristinare percorsi di rete che erano stati precedente dichiarati non operativi;

Di seguito le quattro operazioni chiave del funzionamento del protocollo EIGRP

1 Definizione della tabella delle adiacenze


2 Individuazione dei percorsi di rete
3 Calcolo dei percorsi migliori
4 Amministrazione dei percorsi di rete

5.2.3 Reliable Tansport Protocol (RTP) – Protocollo di trasporto affidabile

RTP Reliable Transport Protocol (Protocollo di trasporto affidabile) è un protocollo


proprietario di livello trasporto, che garantisce la consegna e arrivo in ordine dei pacchetti
EIGRP verso i router adiacenti. Sulle reti IP, gli host utilizzano il protocollo TCP che
assicura che i pacchetti inviati arrivino a destinazione e nell'ordine in cui sono stati inviati.
Tuttavia, una delle caratteristiche di EIGRP è quella di essere indipendente del protocollo
di livello rete utilizzato, pertanto lo scambio dei pacchetti tra i router EIGRP, non può
avvenire utilizzando i protocolli TCP/IP, come invece succede nei protocolli RIP, IGRP e
OSPF. Affinché il protocollo EIGRP rimanga totalmente indipendente da IP, è necessario
l'uso di un protocollo di livello trasporto proprietario, per l'appunto il protocollo RTP
Reliable Transport Protocol che consente la trasmissione affidabile delle informazioni di
instradamento scambiate dai router.

EIGRP e il protocollo RTP


Il protocollo RTP fornisce a EIGRP due servizi di trasporto
dei pacchetti: affidabile e non affidabile;

Usando i servizi RTP il protocollo EIGRP può inviare


messaggi in multicast e unicast simultaneamente

Il protocollo RTP fornisce due tipi di servizi di trasporto delle informazioni: affidabile e
inaffidabile. Il protocollo EIGRP utilizza il servizio RTP corretto a seconda il caso. Per
esempio, per l'invio dei pacchetti di hello viene utilizzato il servizio non affidabile, questo
perché tali pacchetti vengono inviati con frequenza e devono essere di dimensioni
estremamente ridotte. Il servizio di trasporto affidabile viene invece utilizzato per l'invio di
altre informazioni di instradamento, in modo da accelerare il processo di convergenza.

Inoltre RTP, consente a EIGRP di inviare a seconda dei casi, simultaneamente messaggi
unicast o multicast ai router vicini, massimizzando così l'efficienza nell'utilizzo della banda.

5.2.4 DUAL Macchina a numero di stati finiti

Con il termine automa o macchina a numero di stati finiti si indica un'entità o sistema
dinamico1, invariante, discreto nell'avanzamento e nelle interazioni nel quale gli insiemi dei
possibili valori di ingresso, uscita e stato sono insiemi finiti. Le proprietà di una macchina a
numero di stati finiti sono quindi:

dinamico: evolve nel tempo passando da uno stato all'altro in funzione dei segnali
d'ingresso e dello stato precedente;
invariante: a parità di condizioni iniziali il comportamento del sistema è sempre lo
stesso;
discreto: le variabili d'ingresso, di stato, d'uscita, possono assumere solo valori
discreti.

Una macchina a numero di stati finiti è un modello di calcolo, un'entità astratta, non fisica,
1 Un sistema dinamico è un ente che risponde ad una azione, esercitata tramite un ingresso, con una
reazione, detta uscita. Un sistema è detto dinamico perché evolve nel tempo, indicando con questo
termine che, sia l'ingresso, sua l'uscita si sviluppano nel tempo. In generale l'uscita all'istante t di un
sistema dinamico non dipende solo dall'ingresso del sistema allo stesso istante, ma da una grandezza,
detta stato, che rappresenta la storia passata degli ingressi del sistema.
semplice rappresentabile, come un piccolo dispositivo, che mediante una testina legge
una stringa di input su un nastro e la elabora, facendo uso di un meccanismo molto
semplice di calcolo e di una memoria limitata. L'esame della stringa avviene un carattere
alla volta attraverso precisi passi computazionali che comportano l'avanzamento della
testina. In tale modello vengono definite:

Un insieme finito di possibili stati in cui FSM può evolvere nel tempo;
Un insieme finito di possibili eventi risultato dei vari stati, e che possono causare il
passaggio da uno stato all'altro;

Le macchine a di stati finiti FSM (Finite state machine) vengono utilizzate per descrivere il
comportamento di un dispositivo o di un programma in base a una serie di eventi.
L'algoritmo DUAL, cuore del protocollo EIGRP, che si basa appunto sui principi delle
macchine a numero di stati finiti, calcola e confronta i possibili percorsi attraverso la rete,
in reazione agli aggiornamenti ricevuti, cioè gli eventi in ingresso.

L'algoritmo DUAL elabora tutti i percorsi di rete dalle informazioni topologiche ricevute
tramite i messaggi di aggiornamento, inviati dai router adiacenti. Tali percorsi vengono
confrontati gli uni agli altri utilizzando una metrica composita, calcolata in base a differenti
parametri. L'algoritmo DUAL, garantisce inoltre, che i percorsi di rete siano privi di anelli. I
percorsi di rete o rotte aventi metrica migliore vengono inseriti nella tabella di
instradamento.

Come osservato in precedenza, il protocollo EIGRP, utilizza direttamente la memoria RAM


dei router per memorizzare informazioni quali percorsi di rete e informazioni topologiche.
Queste informazioni vengono rispettivamente memorizzate in due strutture dati: tabella
topologica (topology table) e tabella delle adiacenze o dei vicini (neighbor table). Tali
tabelle inoltre vengono utilizzate da DUAL per rielaborare e selezionare percorsi
alternativi, nel caso di variazioni alla topologia. Grazie a tali tabelle, infatti, l'algoritmo
DUAL, è in grado di scegliere quasi istantaneamente un percorso di rete alternativo o
feasible successor.

Il termine successor identifica un router adiacente al quale inoltrare i pacchetti diretti verso
una determinata rete. Il percorso di rete dei pacchetti instradati verso il router successor
corrisponde alla rotta di metrica migliore verso quella destinazione, che non genera un
percorso con anelli. Gli eventuali router feasible successor sono invece quelli per cui
passa la rotta alternativa, o dalla seconda metrica migliore, senza che vengano generati
anelli o loop. Le rotte feasible successor sono immediatamente disponibili e utilizzabili nel
caso in cui la rotta successor dovesse per un qualsiasi motivo andare in avaria. In questo
caso la rotta feasible successor verrebbe promossa allo stato di successor.

Si ricoda che, affinché un percorso sia eletto a feasible successor deve essere annunciato
dai router limitrofi, quindi avere distanza annunciata o advertised distance2 (AD), inferiore
a quella dell'attuale rotta successor. L'immagine seguente chiarisce quanto detto:

Nel caso particolare consideriamo il router D, che non disporre di rotta feasible successor:

Dispone di un percorso successor verso il router A, tramite il router B con metrica o


feasible distance3 (FD) pari a 2.
Il router C, gli annuncia una rotta verso il router A con metrica pari a 3, questo
valore prende il nome di distanza annunciata o advertised distance (AD);
Anche il router E, annuncia al router D un percorso verso il router A con metrica
pari a 4;

Tuttavia né il percorso che passa per il router C né quello che passa per il router E hanno
distanza riportata o advertised distance (AD) tale da essere inferiore alla feasible distance
della rotta successor, pertanto nessuno dei due router può essere considerato feasible
successor dal router D. Per il router C, invece le cose sono differenti, in questo caso infatti:

Dispone di una rotta successor verso il router A, con feasible distance pari a 3,
tramite il router B, che gli annuncia tale rotta con advertised distance pari a 1;
Il router D gli annuncia una rotta verso il router A, con distanza riportata pari a 2.
Pertanto la feasible distance sarà pari a 4;
Il router E gli annuncia una rotta verso il router A, con distanza riportata pari a 3.
Come nel caso precedente la feasible distance sarà pari a 4;

La rotta verso il router A, tramite il router D, proprio perché ha una distanza riportata
inferiore alla feasible distance della rotta successor, verrà eletta come rotta feasible
successor.

2 Questo valore viene anche chiamato distanza riportata o reported distance (RD)
3 Feasible Distance (distanza ammissibile), indica il valore di metrica più basso, calcolato per una certa
destinazione.
Per gli stessi motivi neanche il router E, dispone di feasible successor verso il router A, in
questo caso infatti la distanza riportata dal router C è uguale alla feasible distance della
rotta successor.
5.2.5 PDM – Protocol Dependent Module

Una delle caratteristiche di maggior successo del protocollo EIGRP è la tecnica di


progettazione utilizzata, completamente modulare. Tale caratteristica rende EIGRP un
protocollo molto scalabile e adattabile. Grazie a protocol dependent module (PDM), il
protocollo EIGRP supporta protocolli di livello rete (routed) quali IP, IPX e AppleTalk. In
teoria aggiungendo un nuovo modulo PDM, il protocollo EIGRP può essere adattato con
semplicità, per supportare qualsiasi nuovo protocollo o nuova versione.

Ogni modulo PDM è responsabile di svolgere tutte le funzioni specifiche del protocollo di
livello rete (routed). Per esempio il modulo IP-EIGRP è responsabile di eseguire le
seguenti funzioni:

Inviare e ricevere i pacchetti EIGRP che contengono i dati IP;


Notificare a DUAL nuove informazioni di instradamento IP che sono state ricevute;
Amministrare i risultati delle elaborazioni delle rotte, calcolati da DUAL, utilizzando
le tabelle di instradamento del protocollo IP;
Redistribuire le informazioni di instradamento apprese tramite altri protocolli di
instradamento IP;

5.3 Componenti del protocollo EIGRP


5.3.1 Messaggi utilizzati dal protocollo EIGRP

Come il OSPF, anche il protocollo EIGRP utilizza differenti tipi di pacchetti che servono sia
a popolare e mantenere le varie strutture dati utilizzate, sia per stabilire e mantenere
relazioni di adiacenza con i nodi vicini. In particolare il protocollo EIGRP prevede l'utilizzo
di 5 tipi di pacchetti differenti:

Hello Utilizzati per scoprire la presenza di nodi EIGRP nella rete


Acknowledgment (Riscontro) Utilizzati per comunicare l'avvenuta ricezione di un pacchetto quando si
utilizzano le comunicazioni affidabili
Update (Aggiornamento) Utilizzati per inviare informazioni di instradamento ai router appena
scoperti
Query (Richiesta) Utilizzati per richiedere informazioni specifiche ai router adiacenti
Reply (Risposta) Utilizzati per rispondere alle richieste di informazioni

Pacchetti di Hello

Il protocollo EIGRP utilizza i pacchetti di hello per trovare, verificare e ritrovare i nodi
adiacenti. Il termine ritrovare si riferisce a quella situazione in cui un nodo EIGRP perde la
comunicazione con un nodo adiacente, non ricevendo da questo messaggi di hello per un
periodo superiore a quello impostato nel contatore hold time, per poi ristabilirla
successivamente.

I messaggi di hello vengono inviati dai router periodicamente ad un intervallo configurabile


chiamato appunto intervallo di hello. Il valore predefinito dell'intervallo di hello dipende
dalla larghezza di banda dell'interfaccia.

Larghezza di Banda Esempio di Intervallo di Hello Intervallo di Hold


collegamento predefinito Time predefinito
1.544 Mbps Frame Relay Multipunto 60 Secondi 180 Secondi
> 1.544 Mbps T1, Ethernet 5 Secondi 15 Secondi

I pacchetti di hello sono messaggi multicast. Sulle reti IP, i nodi EIGRP inviano i pacchetti
di hello verso l'indirizzo IP multicast 224.0.0.10.

Un router EIGRP memorizza le informazioni sui router adiacenti nella tabella dei vicini
(neighbor table), tali informazioni includono l'orario in cui è stato ricevuto l'ultimo pacchetto
EIGRP valido dal router adiacente. Quest'orario viene aggiornato ogni volta che viene
ricevuto un qualsiasi pacchetto EIGRP valido dal router adiacente, sia esso un pacchetto
di hello che di altro tipo. Quando non vengono ricevuti pacchetti EIGRP da un router
adiacente per un periodo di tempo superiore all'intervallo hold time (validità), il
collegamento di rete con quel router viene considerato non più attivo (down), pertanto
dovrà essere invocato DUAL affinché riesegua i calcoli necessari per aggiornare la tabella
di instradamento. L'impostazione predefinita dell'intervallo di hold time è tre volte
l'intervallo di hello. Entrambi gli intervalli sono liberamente configurabili dall'amministratore
di rete.

Affinché si possano stabilire relazioni di adiacenza, il protocollo OSPF richiede che i router
adiacenti all'interno dell'area OSPF abbiano valori uguali sia per l'intervallo di hello che per
dead time (analogo dell'intervallo hold down di EIGRP). Tale restrizione non si applica
invece al protocollo EIGRP. Il formato del pacchetto di hello di EIGRP prevede infatti i
campi necessari affinché i router adiacenti possano apprendere i valori impostati per i
rispettivi intervalli. Questi valori vengono utilizzati per formare relazioni di adiacenza stabili
e indipendenti dagli intervalli impostati.

Pacchetti di Acknowledgment (Riscontro)

Questi pacchetti vengono utilizzati dai nodi EIGRP per confermare la ricezione di un
qualsiasi pacchetto EIGRP, durante una comunicazione affidabile. Il protocollo RTP
(Reliable Transport Protocol) consente, a due nodi EIGRP, di instaurare una
comunicazione affidabile utilizzando appunto i pacchetti di acknowledgment per
confermare l'avvenuta ricezione. I pacchetti di acknowledgment hanno un formato molto
simile a quello dei pacchetti di hello con l'unica differenza che non trasportano dati. Inoltre,
tali pacchetti, sono unicast, a differenza dei normali pacchetti di hello che invece sono
multicast. Il protocollo EIGRP prevede inoltre la possibilità di utilizzare il piggybacking per
inviare i pacchetti di acknowledgment; tale tecnica consente di inglobare in altri tipi di
pacchetto EIGRP, come ad esempio quelli di reply (risposta), un pacchetto di
acknowledgment, consentendo di aumentare l'efficienza del protocollo.

I pacchetti di hello vengono inviati sempre in modalità non affidabile, pertanto non
richiedono riscontro.
Pacchetti di Update (Aggiornamento)

Tali pacchetti vengono utilizzati quando un nodo EIGRP scopre l'esistenza di un router
adiacente. In questo caso il nodo EIGRP utilizza i pacchetti di update inviandoli verso
l'indirizzo unicast del nuovo vicino, in modo tale che questo possa aggiornare la sua
tabella topologica. Potrebbero essere necessari più pacchetti di update per trasferire al
nuovo router tutte le informazioni topologiche.

I pacchetti di update vengono anche utilizzati nel caso in cui un nodo rilevi una modifica
topologica. In questi casi il nodo che ha rilevato la modifica, invia pacchetti di update verso
un indirizzo multicast in modo tale che tutti i nodi adiacenti siano informati della variazione.

Tutti i pacchetti di update vengono scambiati in maniera affidabile.

Pacchetti di Query Reply (Richiesta e Risposta)

Ogni volta che un nodo EIGRP necessita di specifiche informazioni da uno o più nodi
adiacenti, utilizza pacchetti di query. I nodi che ricevono un pacchetto di query rispondono
utilizzando un pacchetto di reply.

Per esempio quando la rotta successor di un router EIGRP non dovesse essere più
disponibile, e non esiste una rotta feasible successor, DUAL pone questa rotta in stato di
attivo (active). A questo punto il router invia in multicast un messaggio di query a tutti i suoi
vicini, ricercando una nuova rotta successor. I router adiacenti devono rispondere alla
richiesta con un messaggio di reply, indicando che dispongono di informazioni sulla rotta
successor, oppure che non dispongono di nessuna informazione al riguardo.

I pacchetti di Query possono essere sia unicast che multicast, mentre i pacchetti di reply
sono sempre unicast. Entrambi i pacchetti vengono inviati in modalità affidabile.

5.3.2 Strutture dati utilizzate nel protocollo EIGRP

Il processo DUAL è in grado di selezionare percorsi alternativi in base al contenuto delle


strutture dati previste dal protocollo EIGRP. Praticamente si tratta di tre tabelle, tabella dei
vicini o delle adiacenze (neighbor table), tabella di instradamento (routing table) e tabella
topologica (topology table), che vengono popolate da ogni router EIGRP in base alle
informazioni scambiate con i router adiacenti. Tali tabelle consentono ad ogni router di
tener traccia di tutte le informazioni di instradamento all'interno del sistema autonomo AS.

Neighbor Table (Tabella delle adiacenze)

Questa è sicuramente la struttura dati più importante del protocollo EIGRP. In questa
tabella vengono memorizzate tutte le relazioni di adiacenza che un determinato router
crea con i suoi vicini. Tali informazioni costituiscono il punto di partenza di tutte le attività di
aggiornamento e di convergenza del protocollo EIGRP.

La tabella delle adiacenze contiene informazioni sui router EIGRP vicini. Ogni volta che
viene rilevato un nuovo router, l'indirizzo e l'interfaccia usato per raggiungerlo vengono
aggiunti a questa tabella.

La tabella delle adiacenze viene utilizzata principalmente garantire la consegna affidabile


e ordinata dei pacchetti EIGRP. Un campo di questa tabella include infatti il numero di
sequenza dell'ultimo pacchetto ricevuto dal quel particolare router adiacente. Il protocollo
EIGRP utilizza tale campo per riscontrare (acknowledge) i pacchetti inviati dai router
adiacenti e per identificare i pacchetti fuori sequenza.

Tra i campi più importati della tabella delle adiacenze troviamo:

Tabella delle Adiacenze (Neighbor Table)


Router# show ip eigrp neighbors

IP-EIGRP neighbors for process 100

H Address Interface Hold Uptime SRTT RTO Q Seq


(sec) (ms) Cnt Num
2 200.10.10.10 S1 13 00:19:09 26 200 0 10
1 200.10.10.5 S0 12 03:31:36 50 300 0 39
0 199.55.32.10 Et0 11 03:31:40 10 200 0 40

L'indirizzo del router adiacente – Address: l'indirizzo di livello rete del router
vicino;

Hold time (intervallo di validità) – Hold Uptime: L'intervallo di tempo che deve
trascorre senza che il router riceva pacchetti dal quel particolare vicino, prima di
considerare il collegamento non funzionante. La versione originaria di EIGRP
prevedeva che tale contatore venisse azzerato solo alla ricezione di un pacchetto di
hello. Nelle versioni più recenti del protocollo EIGRP tale comportamento è stato
variato, e il contatore hold time viene azzerato alla ricezione di qualsiasi pacchetto
EIGRP valido;

Smooth Round-Trip Timer (tempo di invio/ricezione) – SRTT: Il tempo medio


necessario ad inviare e ricevere un pacchetto dal router vicino. Questo contatore
viene utilizzato per determinare l'intervallo di ritrasmissione RTO (retransmit
interval);

Queue count (pacchetti in coda) – Q Cnt: Il numero di pacchetti accodati che


attendono di essere inviati. Se questo numero è costantemente maggiore di 0
(zero), potrebbero esserci problemi di congestione sul router. Quando questo
contatore è zero significa che non ci sono pacchetti EIGRP in attesa di essere
inviati;

si osservi che un router EIGRP può utilizzare più tabelle delle adiacente, una per ogni
modulo PDM (Protocol Dependent Module) in esecuzione. In pratica se il router è
configurato per instradare tramite EIGRP i protocolli IP, IPX e Apple-Talk, utilizzerà tre
tabelle delle adiacenze. Inoltre per ogni protocollo instradato sul router dovrà essere
configurato un processo EIGRP separato.

Router# show ip route eigrp

D 32.0.0.0/8 [90/2195456] via 200.10.10.10, 00:49:08, Seriall


D 170.32.0.0/16 [90/2195456] via 199.55.32.10, 00:34:09, Ethernet0
200.10.10.0/24 is variably subnetted, 5 subnets, 3 masks
D 200.10.10.12/30 [90/2681856] via 200.10.10.10, 00:38:39, Serial1
D 205.205.205.0/24 [90/2221056] via 199.55.32.10, 00:31:42, Ethernet0
Topology Table (Tabella Topologica)

Il protocollo EIGRP utilizza la tabella topologica per memorizzare tutte le informazioni


necessarie a calcolare distanze e direzioni (vettori) verso tutte le destinazioni raggiungibili.
Per ognuno dei protocolli di livello rete da instradare (routed) viene utilzzata una tabella
differente.

La tabella topologica è costituita dall'insieme di tutte le tabelle di instradamento all'interno


del sistema autonomo (AS – Autonomous System). Utilizzando le informazioni presenti in
tale tabella il protocollo EIGRP può velocemente selezionare un percorso alternativo. Tra i
campi più importanti della tabella topologica troviamo:
Router# show ip eigrp topology
IP-EIGRP Topology Table for process 100
Codes: P - Passive, A - Active, U - Update, Q - Query, R Reply
r - Reply status

P 32.0.0.0/8, 1 successors, FD is 2195456


via 200.10.10.10 (2195456/281600), Serial1
P 170.32.0.0/16, 1 successors, FD is 2195456
via 199.55.32.10 (2195456/2169856), Ethernet0
via 200.10.10.5 (2681856/2169856), Serial0
P 200.10.10.8/30, 1 successors, FD is 2169856
via Connected, Serial1
P 200.10.10.12/30, 1 successors, FD is 2681856
via 200.10.10.10 (2681856/2169856), Serial1
P 200.10.10.0/24, 1 successors, FD is 2169856
via Summary (2169856/0), Null0
P 200.10.10.4/30, 1 successors, FD is 2169856
via Connected, Serial0
P 205.205.205.0/24, 1 successors, FD is 2221056
via 199.55.32.10 (2221056/2195456), Ethernet0
via 200.10.10.5 (2707456/2195456), Serial0

Feasible distance (Distanza Ammissibile) – FD is xxxx: La feasible distance


(FD) rappresente il valore di metrica più basso, calcolato per ognuna delle
destinazioni. L'esempio della tabella precedente riporta per la rete 32.0.0.0 una
feasible distance pari a 2195456 indicandola con FD.

Route source (Sorgente della rotta) – by way of xxx.xxx.xxx.xxx:


L'indirizzo del del router che originariamente ha annunciato la rotta. Questo campo
è popolato esclusivamente per quei percorsi di rete che sono stati appresi
esternamente al sistema autonomo EIGRP. La caratteristica di Route tagging
(contrassegno delle rotte) è particolarmente utile nel cosiddetto instradamento
policy-based, cioè quell'instradamento in cui i percorsi di rete vengono
prevalentemente stabiliti in base a politiche aziendali, piuttosto in base a regole
strettamente matematiche come appunto il calcolo del percoso più breve. Sempre
nell'esempio riportato nella tabella precedente, si può osservare come la rotta
32.0.0.0 i pacchetti vadano instradati verso 200.10.10.10 tramite l'interfaccia
Serial0.

Reported distance (Distanza Riportata) – CD/RD: La reported distance (RD) o


distanza riportata è il valore di metrica con cui è stato annunciato il percorso di rete
verso una specifica destinazione dal router adiacente. In pratica è la metrica per
una determinata rotta calcolata dal router adiacente. Sempre nell'esempio
precedente la distanza riportata verso la rete 32.0.0.0 è 281600 come indicato
dalla coppia 2195456/281600. Il primo valore di questa coppia è invece la metrica
calcolata dal router attuale, cioè la distanza calcolata o computed distance (CD),
questo valore corrisponde anche con la FD quando la rotta in questione è anche la
successor.

Oltre ai precedenti campi per ogni voce della tabella topologica vengono riportati anche
l'interfaccia sulla quale inoltrare i pacchetti per raggiungere le reti di destinazione.

Il protocollo EIGRP ordina le voci della tabella topologica cosicché per ognuna delle
destinazioni vengano elencate per prime le rotte successor, seguite dalle rotte feasible
successor. Le rotte elencate alla fine sono quelle che secondo le elaborazioni effettuate
dall'algoritmo DUAL hanno elevata probabilità di generare percorsi con anelli o loop .

Ma in che maniera un router EIGRP determina quali vicini sono successor e quali feasible
successor. Supponiamo che la tabella di instradamento del router RTA includa una rotta
verso la rete Z tramite RTB. Dal punto di vista del router RTA, il router RTB è il successor
verso la rete Z. Pertanto il router RTA inoltrerà i pacchetti diretti alla rete Z verso il router
RTB. Il router RTA deve avere almeno un successor per la rete Z affinché l'algoritmo
DUAL possa inserire una rotta per tale rete nella tabella di instradamento.

Il router RTA può avere inoltre più di una rotta successor verso la rete Z. Supponiamo
infatti che anche il router C annunci una rotta verso la rete Z con la stessa metrica del
router RTB. In questo caso il router RTA considera il router RTC come un altro router
successor. L'algoritmo DUAL inserirà una seconda rotta per la rete Z, attraverso il router
C.

Qualsiasi altro vicino del router RTA, che annuncia una rotta priva di anelli (loop) verso la
rete Z, con distanza riportata (reported distance) inferiore a quella della rotta successor,
ma che ha una metrica superiore, verrà identificato come feasible successor ed inserito
nella tabella topologica.

Un router considera il feasible successor come quel router adiacente più vicino di quanto
non lo sia lui stesso a una determinata rete. Se la rotta successor dovesse fallire, DUAL, è
in grado di identificare un feasible successor dalla tabella topologica, ed installare una
nuova rotta verso quella destinazione. Se non esiste alcun feasible successor, DUAL pone
quel determinato percorso in stato attivo e interroga i router vicini per ricercare nuove
informazioni. Le voci della tabella topologica possono essere in uno dei seguenti stati:
attivo o passivo. Questi due stati identificano la condizione in cui si trova una certa rotta, e
vengono indicate come voci piuttosto che come lo stato della voce stessa.

Una rotta è passiva quando è stabile e disponibile per essere utilizzata. Una rotta è invece
attiva quando è bloccata da DUAL affinché la rielabori. L'algoritmo DUAL deve rielaborare
una rotta ogni volta che avviene un cambiamento lungo il percorso di rete, e non esiste un
feasible successor. In queste circostanze, il router deve interrogare i suoi vicini per trovare
una rotta alternativa, priva di anelli (loop). I router adiacenti sono obbligati a rispondere a
un messaggio di reply (richiesta), sia se disponga o meno delle informazioni sul percorso
di rete richiesto Nel primo caso il router adiacente risponderà con un messaggio di reply
contenente le informazioni sul router successor per quella rotta. Nel secondo caso sempre
utilizzando un messaggio di reply risponderà che non dispone delle informazioni richieste.

Un eccessivo numero di rielaborazioni dei percorsi di rete da parte di DUAL, è un sintomo


di instabilità della rete, che ha, tra l'altro, un effetto negativo sulle prestazioni. Per
eliminare problemi di convergenza, DUAL, cerca sempre, prima di procedere ad una
rielaborazione della rotta, di identificare tra i percorsi di rete presenti nella tabella
topologica un feasible successor. Se il feasible successor è disponibile viene
immediatamente utilizzato e installato nella tabella di instradamento del router evitando
così di dover rielaborare il percorso.

Rotte “Stuck in Active”

Se uno o più router a cui viene inviato un messaggio di query, non risponde con un
mesaggio di reply entro 180 secondi (3 minuti), la rotta o le rotte, in questione vengono
poste in stato "stuck in active". Quando ciò capita, EIGRP cancella i router adiacenti che
non hanno inviato il messaggio di reply e aggiorna il log registrando lo stato d'errore "stuck
in active" per le rispettive rotte.

5.3.3 Identificazione delle rotte (route tagging) con EIGRP

La tabella topologica ha il compito di tener traccia delle informazioni riguardanti lo stato di


un determinato percorso di rete. Alcune di queste informazioni consentono al protocollo
EIGRP di classificare i percorsi di rete o rotte come interni o esterni. In pratica viene
utilizzato un processo chiamato route tagging (marcatura delle rotte) per classificare ogni
singolo percorso di rete. Questo processo consente appunto di poter identificare una rotta
come esterna o interna.

Le rotte interne sono quelle che si originano all'interno del sistema autonomo (AS) EIGRP.
Le rotte esterne invece sono quelle che si originano al di fuori dell'AS EIGRP. Le rotte
apprese (ridistribuite) da altri protocolli di instradamento, come RIP, OSPF o IGRP sono
rotte esterne. Le rotte statiche che si originano al di fuori dell'AS EIGRP sono anch'esse
esterne.

Tutte le rotte esterne (external routes) vengono inserite nella tabella topologica (topology
table) e vengono contrassegnate (tagged) con le seguenti informazioni:

Il numero di identificazione (identification number) del router EIGRP, detto anche


router ID che ha ridistribuito le informazioni riguardanti la rotta all'interno della rete
EIGRP;
Il numero che rappresenta il sistema autonomo (AS);
Il protocollo di instradamento utilizzato su quella rete esterna;
Il costo o metrica ricevuta dal protocollo esterno;
Il contenuto dell'administrator tag, il cui valore è configurabile;

La seguente tabella mostra una specifica voce riguardante una rotta esterna di una
tabella topologica.

RTX# show ip eigrp topology 204.100.50.0

IP-EIGRP topology entry for 204.100.50.0/24


State is Passive, Query origin flag is 1,
1 Successor(s), FD is 2297856

Routing Descriptor Blocks: 10.1.0.1


(Serial0), from 10.1.0.1, Send flag is 0x0
Composite metric is (2297856/128256), Route is External

Vector metric:
Minimum bandwidth is 1544 Kbit
Total delay is 25000 microseconds
Reliability is 255/255
Load is 1/255
Minimum MTU is 1500
Hop count is 1

External data:
Originating router is 192.168.1.1
AS number of route is 0
External protocol is Connected, external metric is 0
Administrator tag is 0 (0x00000000)

Grazie al modo in cui vengono contrassegnate le rotte esterne, e in particolare


all'administrator tag, è possibile sviluppare particolari e precise politiche di instradamento.
Il campo amministratore (administrator tag) può essere un qualsiasi numero compreso tra
0 e 255. Questo valore è completamente personalizzabile e consente come detto di
implementare speciali politiche di instradamento. Le rotte esterne (external routes)
possono essere accettate, rifiutate, o propagate, in base ai valori di uno qualsiasi dei
campi utilizzati per contrassegnarle, incluso il campo dell'amministratore (administrator
tag), consentendo così un elevato grado di controllo. Questo livello di precisione e di
flessibilità nel controllare la propagazione delle rotte, si rivela particolarmente utile nel
momento in cui il una rete in cui viene utilizzato il protocollo EIGRP interagisce con una in
cui viene utilizzato il protocollo BGP, che per l'appunto è un protocollo di instradamento
quasi interamente basato su regole per così dire politiche (policy-based). Ci occuperemo
del protocollo BGP nel modulo 9.

5.4 Funzionamento del protocollo EIGRP


5.4.1 Convergenza del protocollo EIGRP

L'algoritmo DUAL utilizzato nel protocollo EIGRP permette tempi di convergenza


rapidissimi. Per meglio capire il funzionamento della convergenza in DUAL, si consideri lo
scenario rappresentato nella seguente figura. In particolare si osservi che il router RTA è
in grado di raggiungere la rete 24 tramite tre differenti router e cioè: RTX, RTY o RTZ.
Nell'esempio la metrica composita, usata dal protocollo EIGRP, è stata, per semplificare i
calcoli, sostituita da un semplice valore che rappresenta il costo del collegamento. La
tabella topologica (topology table) del router RTA comprende l'elenco di tutti i percorsi di
rete annunciati dai router adiacenti. Insieme a ognuna delle reti conosciute il router RTA,
memorizza anche: il costo reale, calcolato, per poterla raggiungere, il costo con cui il
router adiacente ha annunciato la quella rotta, quest'ultimo valore prende il nome di
distanza riportata (reported distance).

Router Adiacente Costo per la rete 24 Distanza riportata per la rete 24


RTY 31 21
RTZ 230 220
RTX 40 30

In virtù minor costo calcolato, il router RTY è per quello RTA il successor verso la rete 24.
Il valore di metrica più basso calcolato dal router RTA verso la rete 24 è 31. Questo valore
rappresenta la FD distanza ammissibile (feasible distance) per la rete 24.

Ma cosa avviene nel momento in cui il router successor di RTA verso la rete 24 non
dovesse più essere disponibile?
In questo caso il router RTA segue un processo che consta di tre passi per selezionare
una rotta feasible successor (FS) affinché diventi la nuova rotta successor per la rete 24.

1. Viene determinato quale dei router adiacenti ancora attivi abbia una distanza
riportata (reported distances – RD) verso la rete 24, inferiore all'attuale FD (feasible
distance). Nell'esempio il router RTA ha una FD verso la rete 24 pari a 31. La RD
dal router RTX è pari a 30, mentre quella dal router RTZ è 220. Pertanto la RD dal
router RTX è inferiore all'attuale FD, ciò non è vero per quella dal router RTZ.

2. Utilizzando le rotte disponibili, il router determina il nuovo miglior valore di metrica


verso la rete 24. Nel caso in esempio, il costo tramite il router RTX è 40, mentre
tramite il router RTZ è 230, pertanto la rotta tramite il router RTX è quella di minor
costo calcolato.

3. Viene determinato se esiste un altro router che, soddisfando i requisiti del punto
uno, soddisfi anche i requisiti del punto due. Poiché il router RTX li soddisfa
entrambi, diventa il nuovo FS feasible successor (successore ammissibile).

In questo caso, nel momento in cui il router RTY non fosse più disponibile, il router RTA è
in grado di utilizzare immediatamente il router RTX come nuovo feasible successor; su
tale nuova rotta verranno immediatamente instradati i pacchetti diretti verso la rete24. La
caratteristica di utilizzare immediatamente una rotta alternativa, nel caso di problemi alla
rotta principale, rende il protocollo EIGRP estremamente rapido nel convergere.

Osservando ancora l'esempio, è possibile domandarsi cosa accadrebbe se, anche la rotta
tramite il router RTX, non fosse più disponibile. In questo caso, potrebbe essere il router
RTZ il feasible successor (successore ammissibile) per la rete 24?

Usando lo stesso processo visto in precedenza, il router RTA esaminando la rotta verso la
rete 24, tramite il router RTZ, osserverebbe che il valore della reported distance (RD) è
pari a 220, superiore all'attuale feasible distance (FD) pari a 31. Pertanto al momento, il
router RTZ, non può essere un feasible successor. Il valore della feasible distance viene
variato esclusivamente quando una rotta subisce una transizione dallo stato di attivo a
passivo (cioè nel momento in cui DUAL ha terminato le elaborazioni su una rotta e la
rende nuovamente disponibile). Al momento la rotta in questione è ancora in stato passivo
e pertanto la sua FD è ancora pari a 31. Nel momento in cui la rotta verso la rete 24
tramite il router RTX non è più disponibile, prima che la rotta venga messa in stato attivo,
viene invocato l'algoritmo DUAL affinché, con una computazione locale (local
computation), cioè il processo visto in precedenza, provi a trovare un feasible successor.

Come detto, nell'esempio in oggetto, non esiste alcun router, nella tabella topologica che
possa diventare un successore ammissibile. In questa condizione DUAL è costretto a
porre la rotta per la rete 24 in stato attivo (quindi viene eseguita la transizione
passivo/attivo), e a inviare verso tutti i router adiacenti messaggi di query per ottenere
nuove informazioni sulla rete 24. Tale processo è chiamato diffusing computation (calcolo
diffusivo). Nel momento in cui la rotta verso la rete 24 è in stato attivo il rispettivo valore
della FD distanza ammissibile (feasible distance) viene azzerato. Ciò consente al router
RTA di accettare, in ultima analisi, il router RTA come successor per la rete 24.

5.5 Configurazione del protocollo EIGRP


5.5.1 Configurazione del protocollo EIGRP su reti IP

Nonostante la complessità dell'algoritmo DUAL, la configurazione del protocollo EIGRP


può essere relativamente semplice. I comandi da utilizzare per configurare il protocollo
EIGRP variano in base al protocollo che deve essere instradato. Un esempio è
rappresentato dai protocolli IP, IPX, o AppleTalk. In questa sezione vedremo i comandi di
configurazione del protocollo EIGRP per ognuno dei precedenti protocolli, ci occuperemo
anche dei controlli particolari necessari per IPX SAP.

La configurazione di base del protocollo EIGRP avviene eseguendo i seguenti passi:

1. Abilitare il processo EIGRP, specificando il sistema autonomo (AS):


Router(config)# router eigrp numero-sistema-autonomo

Il parametro numero-sistema-autonomo rappresenta appunto il numero che


identifica il sistema autonomo. Questo valore è utilizzato per identificare tutti i router
all'interno dell'inter-rete (internetwork), che sono cioè sottoposti alla stessa autorità
amministrativa, e deve essere uguale su ognuno di questi;

2. Indicare quali reti all'interno del sistema autonomo sono direttamente collegate al
router locale:

Router(config-router)# network numero-rete

Il parametro numero-rete determina quale interfaccia del router deve essere


inclusa nel processo EIGRP e quindi quale rete dovrà essere annunciata dal router;

Il comando network viene utilizzato per configurare esclusivamente le reti


direttamente collegate alle interfacce del router. Per esempio la rete 3.1.0.0,
all'estrema sinistra dell'immagine precedente, non è direttamente collegata al router
A, di conseguenza non farà parte della configurazione di questo router.

3. Quando vengo configurati collegamenti seriali, utilizzando EIGRP, è importante


impostare sull'interfaccia in questione la larghezza di banda (bandwidth) di tale
collegamento. Se la banda non viene specificata, il protocollo EIGRP utilizza, in
base al tipo di interfaccia, un valore predefinito e non la velocità reale del
collegamento. In questo caso, potrebbe accadere che il router non riesca a
convergere, a causa del fatto che i messaggi di aggiornamento potrebbero andare
perduti, oppure potrebbe essere utilizzato un percorso non ottimale per instradare i
pacchetti.

Router(config-if)# bandwidth kilobits


Il valore kilobits indica appunto la larghezza di banda del collegamento
espressa in chilo bit per secondo. Per le interfacce seriali generiche che utilizzano
protocolli quali PPP o HDLC, è sufficiente impostare tale valore alla velocità della
linea seriale.

Oltre ai precedenti comandi, Cisco, raccomanda anche di aggiungere alla configurazione


di EIGRP, il comando:

Router(config-router)# eigrp log-neighbor-changes

Che consente al router di generare le informazioni di log ogni volta che vengono rilevati
cambiamenti sulle relazioni di adiacenza con i router limitrofi, che permettono di verificare
e controllare la stabilità del processo di instradamento aiutando così a risolvere eventuali
problemi.

5.5.2 Utilizzo del comando bandwidth nel protocollo EIGRP

Quando è necessario configurare il protocollo EIGRP su una rete NBMA (non broadcast
multi accesso) come ad esempio nel caso di una nuvola Frame Relay è necessario
seguire le seguenti regole:

● Il traffico EIGRP non deve superare il valore CIR Committed Information Rate4
stabilito per il circuito virtuale (VC);
● Il traffico aggregato che il protocollo EIGRP genera sul circuito virtuale, non deve
4 CIR (Committed Information Rate) rappresenta la quantità di dati che il fornitore del servizio si impegna a
trasferire nell'unità di tempo (throughput) e che la rete si impegna a servire. Il CIR si misura in bit/s (o in
un suo multiplo, comunemente kbit/s). A ogni Circuito Virtuale è associato un CIR. Nel caso di un PVC,
circuito virtuale permanente, questo valore è stabilito all'atto del contratto.
eccedere la velocità della linea di accesso dell'interfaccia;
● La larghezza di banda allocata per EIGRP su ogni circuito virtuale, deve essere
uguale per ogni direzione.

Se le precedenti regole vengono capite e seguite, il protocollo EIGRP funzionerà


correttamente anche sul collegamento WAN, il rischio è quello che il traffico generato dal
protocollo crei problemi di congestione.

Configurazione della larghezza di banda (Bandwidth) su una rete multi-punto


(Multipoint )

La configurazione del corretto valore di larghezza di banda nel comando bandwidth, nel
caso di una nuvola NBMA (non broadcast multi accesso) dipende dal tipo di circuito
dall'architettura dei VC stessi. Se sulla stessa linea seriale sono presenti differenti VC, in
una configurazione multi-punto, e tutti i circuiti virtuali condividono equamente la stessa
larghezza di banda, è necessario impostare come larghezza di banda il valore dato dalla
somma di tutti i CIR di ogni singolo VC. Nella figura seguente, il valore di CIR di ognuno
dei circuiti virtuali è pari a 56 Kbps. Pertanto il valore di larghezza di banda per l'interfaccia
del router C deve essere impostato a 224 (4 x 56).

Configurazione della larghezza di banda (Bandwidth) su una rete multi-punto ibrida


(Hybrid Multipoint)

Nel caso precedente si era nella situazione in cui ogni circuito virtuale condivide
equamente la stessa larghezza di banda, tale configurazione prende il nome di rete
multi-punto pura. Nel caso in cui invece le velocità dei singoli circuiti virtuali vengono
allocate in modo differente, è necessario utilizzare una soluzione più complessa. Per
risolvere il problema è possibile utilizzare due approcci differenti:

● Prendere il valore più piccolo del CIR, moltiplicarlo per il numero dei circuiti virtuali e
usare il valore risultante come parametro del comando bandwidth sull'interfaccia
fisica. Questa soluzione è certamente molto semplice, tuttavia ha lo svantaggio di
sotto-utilizzare i circuiti virtuali con velocità più elevate,

● Utilizzare le sotto-interfacce. É possibile utilizzare il comando bandwidth anche in


modalità sotto-interfaccia; in questo modo è possibile associare ai circuiti virtuali
che hanno valori di CIR unici una singola sotto-interfaccia, che a sua volta viene
configurata con il corretto valore di larghezza di banda per quel circuito virtuale. I
circuiti virtuali che invece condividono lo stesso CIR vengono associati ad un'unica
sotto-interfaccia che riflette un valore di larghezza di banda pari alla somma dei CIR
dei singoli circuiti virtuali. Nell'esempio della figura seguente ci sono tre VC che
hanno CIR pari a 256 Kbps. Tali VC vengono raggruppati insieme sulla
sotto-interfaccia punto-multiplo serial 0/0.1 definita con il parametro
multipoint per indicare appunto che si tratta di un'interfacia multi-puntohe. Il VC
rimanente, che ha CIR più basso rispetto agli altri, pari 56 Kbps, viene assegnato
alla sotto-interfaccia punto punto (point-to-point) serial 0/0.2;

5.5.3 Il comando bandwidth percent

Il comando bandwidth-percent consente di configurare la percentuale di larghezza di


banda di un'interfaccia che può essere utilizzata dal protocollo EIGRP. L'impostazione
predefinita, prevede che il protocollo EIGRP utilizzi fino al 50% dell'intera larghezza di
banda per scambiarsi le informazioni di instradamento su un'interfaccia. Per poter
quantificare il valore di tale percentuale, comando bandwidth-percent, utilizza il valore
impostato con il comando bandwidth, o se non impostato il valore predefinito in base
all'interfaccia.

É possibile utilizzare il comando bandwidth-percent quando il valore della larghezza di


banda di un collegamento non riflette la sua reale velocità. Il valore di larghezza di banda
impostato su un'interfaccia può essere artificiosamente inferiore alla velocità reale del
collegamento per una varietà di ragioni; ad esempio per manipolare il valore di metrica
calcolato per i percorsi di rete o per bilanciare una configurazione Frame-Relay
multi-punto sottoscritta in eccesso. In tutti i casi, indipendentemente dalla ragione, con tale
comando è possibile aggirare questo tipo di impostazioni artificiose, specificando un valore
in percentuale elevato. In alcuni casi possono anche essere utilizzati valori maggiori di
100.

Per chiarire meglio il concetto,supponiamo che la banda reale di un collegamento seriale


di un router sia 64kbps, ma con il comando bandwidth sia stato artificiosamente
impostato un valore inferiore, pari a 32 Kbps.

L'immagine mostra come fare in modo che il il traffico dovuto allo scambio di messaggi di
instradamento del protocollo EIGRP, non superi il 50% della banda reale del
collegamento. Utilizzando il comando bandwidth-percent viene impostato un utilizzo
della banda pari al 100% sull'interfaccia serial0/0 per il processo EIGRP sull'AS 24.
Giacché il 100% di 32 kbps è 32, tale impostazione consente di utilizzare al protocollo
EIGRP fino a 32Kbps, che è appunto la metà di 64 Kbps, cioè la banda reale
dell'interfaccia.

Quando EIGRP viene utilizzato con il protocollo IP, il comando bandwidth-percent,


può essere sostituito dal comando: ip bandwidth-percent eigrp.

5.5.4 Aggregazione delle rotte nel protocollo EIGRP: no auto-summary

Il protocollo EIGRP aggrega automaticamente le rotte al numero di rete della classe di


appartenenza, secondo il metodo di suddivisione a classi originario del protocollo IP.
Come si nota nell'immagine precedente, questo comportamento, fa in modo che il router
RTC, sebbene collegato alla sottorete 2.1.1.0/24, annunci agli altri router che è
connesso a una rete di classe A 2.0.0.0/8. In molti casi la caratteristica di EIGRP di
auto-aggregare i percorsi di rete risulta vantaggiosa in quanto riduce la dimensione delle
tabelle di instradamento.
Tuttavia, in presenza di sottoreti discontinue, l'auto-aggregazione deve essere disattivata
affinché il processo di instradamento funzioni correttamente.

Per disattivare l'auto-aggregazione è necessario utilizzare il comando:

Router(config-router)# no auto-summary

5.5.5 Aggregazione delle rotte nel protocollo EIGRP: Aggregazione sull'interfaccia

Il protocollo EIGRP consente di configurare un prefisso per aggregare manualmente i


percorsi di rete. Tale configurazione viene effettuata specificando l'interfaccia sulla quale
aggregare i percorsi di rete. In pratica dovrà prima essere selezonata l'interfaccia sulla
quale verrà annunciata la super-rete aggregata, quindi dovrà essere definita la super-rete
utilizzando il comando ip summary-address eigrp, che ha la seguente sintassi:

Router(config-if)# ip summary-address eigrp numero-as indirizzo-ip


maschera distanza-amministrativa
Se il parametro distanza-amministrativa è un valore compreso tra 1 e 255, quando
non viene specificato viene utilizzato il valore predefinito di 5.

Il router RTC nella figura precedente, è stato configurato utilizzando i seguenti comandi:

RTC(config)# router eigrp 2446


RTC(config-router)# no auto-summary
RTC(config-router)# exit
RTC(config)# interface serial0/0
RTC(config-if)# ip summary-address eigrp 2446 2.1.0.0 255.255.0.0

La precedente configurazione farà in modo che il router RTC aggiunga alla propria tabella
di instradamento la seguente voce:

D 2.1.0.0/16 is a summary, 00:00:22, Null0

Si osservi che la rotta aggregata ha come sorgente Null0, che sta ad indicare che viene
utilizzata unicamente per essere annunciata, sull'interfaccia specificata, agli altri router.
Per il router RTC, non rappresenta un percorso di rete utilizzabile, e ha una distanza
amministrativa paria a 5. Null0, non rappresenta alcuna interfaccia.

Sempre nella figura precedente, il router RTD accettando i messaggi di aggiornamento dal
router RTC è del tutto inconsapevole che la rotta verso 2.1.0.0/16 rappresenta un
insieme di rotte aggregate, e assegna a tale rotta la distanza amministrativa di una
"normale" rotta EIGRP, cioè 90. Si osservi inoltre Nella configurazione del router RTC,
l'aggregazione automatica è stata disattivata con il comando no auto-summary. In
questo modo si impedisce al router RTC di annunciare sull'interfaccia due rotte; una,
quella aggregata manualmente, verso la rete 2.1.0.0/16 e l'altra, quella aggregata
automaticamente al prefisso di classe A, verso la rete 2.0.0.0/8.

Nella maggior parte dei casi, quando viene utilizzata l'aggregazione manuale, è
necessario disattivare l'aggregazione automatica, con il comando no auto-summary.

5.6 Supervisione e controllo del protocollo EIGRP


5.6.1 Verifica del funzionamento del protocollo EIGRP

Per tutto questo modulo abbiamo già usato alcuni comandi show per verificare il
funzionamento del protocollo EIGRP. La tabella seguente mostra un riepilogo di tali
comandi, seguiti da una breve descrizione sul loro funzionamento:

Comando Descrizione
show ip eigrp neighbors Visualizza la tabella delle adiacenze (neighbor table). Utilizzare i
[tipo numero] [details] parametri tipo e numero per specificare un'interfaccia. La parola
chiave details visualizza un numero maggiore di informazioni.
show ip eigrp interfaces Visualizza informazioni sulle interfacce del router utilizzate dal
[tipo numero] [numero-as] protocollo EIGRP. I parametri consentono di limitare il risultato a una
[details] specifica interfaccia o sistema autonomo. La parola chiave details
visualizza un numero maggiore di informazioni.
show ip eigrp topology Visualizza tutti i router alternativi (feasible successor) presenti nella
[numero-as | tabella topologica. I parametri opzionali consentono di limitare il risulato
[[indirizzo-ip] in base al sistema autonomo, o indirizzo di rete.
maschera]]
show ip eigrp topology In base alla parola chiave specificata, il comando consente di
[active | pending | visualizzate tutti i percorsi di rete, nella tabella topologica, che sono
zero-successors] rispettivamente: attivi (active), in attesa (pending) o senza
successori (zero-successors).
show ip eigrp topology Visualizza tutti i percorsi di rete, non solo quelli alternativi o successori
all-links ammissibili (feasible successor) presenti nella tabella topologica
EIGRP
show ip eigrp traffic Visualizza il numero di pacchetti EIGRP inviati e ricevuti. Usando il
Comando Descrizione
[numero-as] parametro opzionale è possibile limitare il risultato ad uno specifico
sistema autonomo.

Il sistema operativo IOS presente nei router Cisco dispone anche di tutta una serie di
comandi debug per una verifica più approfondita del protocollo EIGRP.

Comando Descrizione
debug eigrp fsm Questo comando consente di osservare con maggior comodità, l'attività dei
router EIGRP alternativi o feasible successor, e quindi di determinare se gli
aggiornamenti vengono correttamente interpretati dal processo di
instradamento.
debug eigrp packet Questo comando visualizza l'invio e la ricezione dei pacchetti EIGRP. I
pacchetti possono essere hello, update, request, query o reply. Viene anche
visualizzati i numeri di sequenza e di riscontro (acknowledgment) utilizzati dal
protocollo RTP reliable transport protocol.

2.1 Esercizi di configurazione del protocollo EIGRP

2.1.1 Instradamento tra RIP v1 e RIP v2

Scenario

In questa esercitazione configureremo il protocollo EIGRP sui collegamenti WAN di tre router Cisco presenti
nella rete dell'ITA Agenzia Turistica Internazionale. Osserveremo tra l'altro il comportamento di base del
protocollo.

L'ITA, Agenzia Turistica Internazionale, ha la necessità di implementare tra le sue filiali d'oltre oceano e le
sedi principale nel Nord America, il protocollo EIGRP. E' necessario che la configurazione venga fatta nelle
tre locazioni, in modo tale che le due sedi principali, di SanJose1 e SanJose2, possano comunicare tra loro.

Passo 1. Costruire la rete come in figura, senza configurare il protocollo EIGRP, verificare usando il
comando ping, la connettività tra le interfacce seriali dei router. Tra i router SanJose1 e
SanJose2, non saranno in grado di comunicare prima che il protocollo EIGRP sia correttamente
configurato.
Passo 2. Configurare il protocollo EIGRP, in modo tale che venga utilizzato il sistema autonomo AS 100
su tutti i router, utilizzando i seguenti comandi:

SanJose1(config)# router eigrp 100


SanJose1(config-router)# network 192.168.100.0
SanJose1(config-router)# network 172.16.0.0

Westasman(config)# router eigrp 100


Westasman(config-router)# network 172.16.0.0

SanJose2(config)# router eigrp 100


SanJose2(config-router)# network 192.168.200.0
SanJose2(config-router)# network 172.16.0.0

Passo 3. Dopo aver configurato il protocollo EIGRP sui router, verificarne il funzionamento, sul router
Westasman, visualizzando la tabella di instradamento con il comando show ip route. Il
router Westasman dovrebbe avere le rotte verso tutte le destinazioni della rete.

Westasman# show ip route

Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B – BGP


D - EIGRP, EX - EIGRP external, 0 - OSPF, IA - OSPF inter area
Nl - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
El - OSPF external type 1, E2 - OSPF external type 2, E – EGP
i - IS-IS, LI - IS-IS level-1, L2 - IS-IS level-2, * - candidate default
U - per-user static route, o – ODR

Gateway of last resort is not set

172.16.0.0/30 is subnetted, 2 subnets


C 172.16.224.4 is directly connected, Serial0/1
C 172.16.224.0 is directly connected, Serial0/0
D 192.168.200.0/24 [90/2297856] via 172.16.224.5, 00:00:00, Serial0/1
D 192.168.100.0/24 [90/2297856] via 172.16.224.1, 00:00:03, Serial0/0

1. In particolare il router Westasman dovrebbe aver appreso i percorsi verso le reti interne al
dominio EIGRP, cioè le reti 192.168.100.0 e 192.168.200.0. Tali rotte vengono
indicate con la lettera D, che denota appunto il protocollo EIGRP;

2. La distanza amministrativa delle rotte EIGRP esterne è pari a 170 mentre quella delle rotte
EIGRP interne è 90.

Passo 4. Adesso che il protocollo EIGRP è configurato e funzionante, utilizziamo i comandi show per
visualizzare la tabella delle adiacenze (neighbors table) e la tabella topologica (topology table)
del router Westasman.

Dal router Westasman, utilizzare il comando:

Westasman# show ip eigrp neighbors

Westasman# show ip eigrp neighbors

IP-EIGRP neighbors for process 100


H Address Interface Hold Uptime SRTT RTO Q Seq
(sec) (ms) Cnt Num
1 172.16.224.5 Se0/1 12 00:03:16 1008 5000 0 2
0 172.16.224.1 Se0/0 12 00:03:19 1265 5000 0 3

Dovrebbero essere indicati i due router adiacenti SanJose1 e SanJose2

Per visualizzare la tabella topologica, utilizzare il comando

Westasman# show ip eigrp topology all-links

Westasman# show ip eigrp topology all-links


IP-EIGRP Topology Table for process 100

Codes: P - Passive, A - Active, U - Update, Q - Query, R – Reply,


r - Reply status

P 192.168.100.0/24, 1 successors, FD is 2297856, serno 3


via 172.16.224.1 (2297856/128256), Serial0/0

P 172.16.224.4/30, 1 successors, FD is 2169856, serno 2


via Connected, Serial0/1

P 172.16.224.0/30, 1 successors, FD is 2169856, serno 1


via Connected, Serial0/0

P 192.168.200.0/24, 1 successors, FD is 2297856, serno 4


via 172.16.224.5 (2297856/128256), Serial0/1

Una rotta viene indicata come passiva (passive) quando è stabile e disponibile per essere
impiegata. In questo caso le quattro rotte sono tutte in stato passivo.

Nella precedente tabella la prima e l'ultima voce rappresentano gli indirizzi delle reti LAN
(indirizzi di loopback) appresi dai router SanJose1 e SanJose2. Osservando queste voci i
numeri tra parantesi rappresentano la coppia CD/RD cioè il valore di metrica calcolato dal
router Westasman (computed distance) e il valore di metrica riportato dal router adiacente per
quella rotta (reported distance).

Per visualizzare informazioni più specifiche su una particolare voce della tabella topologica,
usare il comando show ip eigrp topology seguito dall'indirizzo della rotta per la quale si
vogliono ottenere altre informazioni:

Westasman# show ip eigrp topology 192.168.200.0

Westasman# show ip eigrp topology

192.168.200.0 IP-EIGRP topology entry for 192.168.200.0/24


State is Passive, Query origin flag is 1, 1 Successor(s), FD is 2297856
Routing Descriptor Blocks:
172.16.224.5 (Serial0/1), from 172.16.224.5, Send flag is 0x0
Composite metric is (2297856/128256), Route is Internal
Vector metric:
Minimum bandwidth is 1544 Kbit
Total delay is 25000 microseconds
Reliability is 255/255
Load is 1/255
Minimum MTU is 1500
Hop count is 1

Usiamo ora i comandi show per visualizzare le statistiche principali disponibili per il protocollo
EIGRP. Sempre sul router Westasman, eseguire il comando show ip eigrp traffic per
visualizzare i tipi di pacchetti EIGRP.

Westasman# show ip eigrp traffic


IP-EIGRP Traffic Statistics for process 100
Hellos sent/received: 114/114
Updates sent/received: 5/8
Queries sent/received: 0/0
Replies sent/received: 0/0
Acks sent/received: 5/3
Input queue high water mark 2, 0 drops

Quindi utilizzare il comado show ip eigrp interfaces. Per visualizzare le statistiche in


dettaglio per ogni insterfaccia che partecipa al processo EIGRP:

Westasman# show ip eigrp interfaces

IP-EIGRP interfaces for process 100

Xmit Queue Mean Pacing Time Multicast Pending


Interface Peers Un/Reliable SRTT Un/Reliable Flow Timer Routes
Se0/0 1 0/0 1265 0/15 6319 0
Se0/1 1 0/0 1008 0/15 5039 0
2.1.2 Utilizzo di rotte ridondanti (fault tollerance) usando il protocollo EIGRP

Scenario

In questa esercitazione dovrà essere configurato e verificato, su una rete WAN magliata chiusa (full mesh), il
protocollo EIGRP. Si dovrà inoltre osservare, simulando un guasto ad uno dei collegamenti, come l'algoritmo
DUAL rimpiazza il router successor con il feasible successor.
L'ITA, agenzia turistica internazionale, vuole che il protocollo EIGRP venga configurato, a livello Core, tra i
collegamenti WAN dei router di filiale e regionali. Il protocollo EIRRP dovrà essere configurato e verificato in
modo tale che installi un percorso alternativo in caso di problemi a un collegamento.

Passo 1. Costruire la rete come in figura. Impostare su ogni interfaccia seriale, usando il comando
bandwidth la corretta larghezza di banda in modo da riflettere lo schema precedente.
Utilizzare il comando show interface per verificare la corretta configurazione. Usare quindi il
comando ping, per verificare la connettività tra le interfacce seriali e ethernet dei router.

Passo 2. Configurare il protocollo EIGRP per il sistema autonomo 100 come visto nella precedente
configurazione.

Passo 3. Verificare che il protollo EIGRP mantenga tutti i percorsi di rete nella tabella topologica.
Dal router SandJose2, eseguire il comando show ip eigrp topology all-links:

SanJose2# show ip eigrp topology all-links

IP-EIGRP Topology Table for process 100


Codes: P - Passive, A - Active, U - Update, Q - Query, R – Reply,
r - Reply status

P 192.168.72.0/24, 1 successors, FD is 2195456, serno 21


via 192.168.64.6 (2195456/281600), Serial0/0
via 192.168.1.1 (2221056/2195456), FastEthernet0/0

P 192.168.64.0/30, 1 successors, FD is 2681856, serno 20


via 192.168.64.6 (2681856/2169856), Serial0/0

P 192.168.64.0/24, 1 successors, FD is 2169856, serno 19


via Summary (2169856/0), Null0
via 192.168.1.1 (2195456/2169856), FastEthernet0/0

P 192.168.64.4/30, 1 successors, FD is 2169856, serno 18


via Connected, Serial0/0

P 192.168.1.0/24, 1 successors, FD is 281600, serno 22


via Connected, FastEthernet0/0

La tabella topologica del router SanJose2 include due percorsi verso la rete 192.168.72.0.
Ovviamente il percorso con distanza calcolata uguale alla distanza ammissibile (CD = FD) è
anche quello successor, e quindi quello che verrà installato nella tabella di instradamento. Per
verificare quanto detto usare il comando show ip route per determinare quale dei due
percorsi è stato installato nella tabella di instradamento:
SanJose2# show ip route

*** Omissis ***

Gateway of last resort is not set


D 192.168.72.0/24 [90/2195456] via 192.168.64.6, 00:00:29, Serial0/0
192.168.64.0/24 is variably subnetted, 3 subnets, 2 masks
D 192.168.64.0/30 [90/2681856] via 192.168.64.6, 00:00:30, Serial0/0
D 192.168.64.0/24 is a summary, 00:00:32, Null0
C 192.168.64.4/30 is directly connected, Serial0/0
C 192.168.1.0/24 is directly connected, FastEthernet0/0

Si osservi come il router SanJose2, instradi i pacchetti diretti verso la LAN del router
Westasman tramite la propria interfaccia seriale, questo perché la metrica calcolata è inferiore a
quella dell'altra rotta. In questo caso la FD è pari a 21956 che è lo stesso valore di CD (distanza
calcolata) vista nella tabella topologica per la rotta verso la rete 192.168.72.0 via 192.168.64.6,
cioè il router Westamastan, adiacente all'interfaccia seriale del router SanJose2.

Passo 4. Per visualizzare le informazioni di debug sulla metrica del router feasible successor (FSM -
feasible successor metrics) e osservare come il protocollo EIGRP reagisce alla perdita di
comunicazione con un router successor, utilizzare il comando debug eigrp fsm sul router
SanJose2; quindi simulare un problema di collegamento tra i router SanJose2 e Westasman
disattivando la seriale di uno dei due router con il comando shut oppure staccare il
collegamento fisico tra questi. Questo causerà sul router SanJose2 la perdita della rotta
preferita verso 192.168.72.0 tramite 192.168.64.6. Esaminare adesso le informazioni
visualizzate dal comando debug eigrp fsm sulla rotta 192.168.72.0, come mostrato nel
seguente esempio:

SanJose2# debug eigrp fsm

*** Omissis ***

01:26:42: %LINK-3-UPDOWN: Interface Serial0/0, changed state to down

*** Omissis ***

01:26:42: DUAL: Destination 192.168.72.0/24


01:26:42: DUAL: Find FS for dest 192.168.72.0/24. FD is 2195456, RD is 2195456
01:26:42: DUAL: 192.168.64.6 metric 4294967295/4294967295
01:26:42: DUAL: 192.168.1.1 metric 2221056/2195456 not found Dmin is 2221056
01:26:42: DUAL: Dest 192.168.72.0/24 entering active state.
01:26:42: DUAL: Set reply-status table. Count is 1.

*** Omissis ***

01:26:43: DUAL: dual_rcvreply(): 192.168.72.0/24 via 192.168.1.1 metric 2221056/2195456


01:26:43: DUAL: Count is 1
01:26:43: DUAL: Clearing handle 1, count is now 0
01:26:43: DUAL: Freeing reply status table
01:26:43: DUAL: Find FS for dest 192.168.72.0/24. FD is 4294967295, RD is 4294967295
found
01:26:43: DUAL: Removing dest 192.168.72.0/24, nexthop 192.168.64.6
01:26:43: DUAL: RT installed 192.168.72.0/24 via 192.168.1.1
01:26:43: DUAL: Send update about 192.168.72.0/24. Reason: metric chg
01:26:43: DUAL: Send update about 192.168.72.0/24. Reason: new if

*** Omissis ***

Passo 5. Le porzioni evidenziate, mostrano come DUAL cerchi di localizzare un feasible successor per la
rete 192.168.72.0. Nel caso in oggetto, DUAL non riesce a trovare un feasible successor,
pertanto pone la rotta in stato di attivo. Dopo aver inviato verso i router adiacenti messaggi di
query, il router SanJose2 trova e installa una rotta per la rete 192.168.72.0/24 tramite
192.168.1.1.

Passo 6. Verificare infine che la nuova rotta sia stata installata correttamente nella tabella di
instradamento, utilizzando il comando show ip route:

SanJose2# show ip route

*** Omissis ***


Gateway of last resort is not set
D 192.168.72.0/24 [90/2221056] via 192.168.1.1, 00:00:16, FastEthernet0/0
D 192.168.64.0/24 [90/2195456] via 192.168.1.1, 00:00:16, FastEthernet0/0
C 192.168.1.0/24 is directly connected, FastEthernet0/0

Passo 7. Riattivare la seriale precedentemente disattivata i ricollegare il cavo, la rotta tramite


192.168.64.6, verso la rete 192.168.72.0, sarà ripristinata come preferita:

SanJose2# show ip route

*** Omissis ***

01:27:44: %LINK-3-UPDOWN: Interface Serial0, changed state to up

*** Omissis ***

Gateway of last resort is not set

D 192.168.72.0/24 [90/2195456] via 192.168.64.6, 00:00:08, Serial0/0


192.168.64.0/24 is variably subnetted, 3 subnets, 2 masks
D 192.168.64.0/30 [90/2681856] via 192.168.64.6, 00:00:09, Serial0/0
D 192.168.64.0/24 is a summary, 00:00:10, Null0
C 192.168.64.4/30 is directly connected, Serial0/0
C 192.168.1.0/24 is directly connected, FastEthernet0/0

2.1.3 Configurare l'aggregazione delle rotte manuale in EIGRP

Scenario

In questa esercitazione il protocollo EIGRP verrà configurato e verificato su sottoreti discontinue,


disabilitando l'aggregazione automatica. Si ha una situazione di sottoreti discontinue quando le sottoreti
stesse sono disposte in maniera disordinata, cioè non numericamente in ordinate. Infine, il protocollo EIGRP
verrà configurato manualmente per utilizzare una specifica rotta aggregata.

L'ITA, utilizza la tecnica delle maschere di sottorete a lunghezza variabile, VLSM, per minimizzare lo spreco
di indirizzi IP. Tutte le reti LAN vengono indirizzate utilizzando sottoreti contigue; tuttavia, per avere dei
riferimenti utili in futuro, la società vuole esaminare il comportamento della rete, e nel caso particolare del
protocollo EIGRP, nel caso in cui venissero utilizzate sottoreti discontinue.

Nell'esercitazione in oggetto la presenza di sottoreti verrà simulata utilizzando le interfacce di loopback,


router Westasman. I collegamenti WAN verranno indirizzati utilizzando la rete di classe C 192.168.64.0
con una maschera a 30 bit.

Poiché lo schema in questione crea sottoreti discontinue, la caratteristica del protocollo EIGRP di aggregare
automaticamente i percorsi di rete, crea problemi, portando alla creazione di tabelle di instradamento non
complete. Questo problema viene risolto disabilitando l'aggregazione automatica su tutti i router e
aggregando manualmente sul router Westasman.
Passo 1. Costruire la rete come in figura. Aggiungere le necessarie interfacce di loopback. Questa
configurazione richiede l'utilizzo della sottorete 0, pertanto è necessario accertarsi che il
comando ip subnet-zero sia presente nella configurazione dei router (in base alla verisione
di IOS utilizzata). Configurare quindi il router Westasman con le otto interfacce di loopback, e i
rispettivi indirizzi IP, come nel diagramma. Queste interfacce servono, come detto, per simulare
la presenza di sottoreti differenti sottoreti, collegate al router Westasman. Fatta questa
operazione, attivare il protocollo EIGRP sui router utilizzando come numero di AS 100. Usare il
comando ping, per verificare la connettività tra le interfacce dei router.

Passo 2. Si osservi che fino a quando non verrà configurata correttamente l'aggregazione delle rotte, le
tabelle di instradamento dei router saranno incomplete, nel senso che alcune reti non saranno
visualizzate. Per verificare quanto detto, utilizzare il comando show ip route sia sul router
SanJose1 che su SanJose2.

SanJose1# show ip route

Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B – BGP


D - EIGRP, EX - EIGRP external, 0 - OSPF, IA - OSPF inter area
Nl - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
El - OSPF external type 1, E2 - OSPF external type 2, E – EGP
i - IS-IS, LI - 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

D 172.16.0.0/16 [90/2297856] via 192.168.64.2, 00:15:16, Serial0/0


D 172.168.0.0/16 [90/2172416] via 192.168.64.2, 00:16:15, Serial0/0
C 192.168.1.0/24 is directly connected, FastEthernet0/0
192.168.64.0/24 is variably subnetted, 3 subnets, 2 masks
D 192.168.64.0/24 is a summary, 00:16:15, Null0
C 192.168.64.0/30 is directly connected, Serial0/0
D 192.168.64.4/30 [90/2681856] via 192.168.64.2, 00:16:15, Serial0/0

SanJose2# show ip route

Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B – BGP


D - EIGRP, EX - EIGRP external, 0 - OSPF, IA - OSPF inter area
Nl - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
El - OSPF external type 1, E2 - OSPF external type 2, E – EGP
i - IS-IS, LI - 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

D 172.16.0.0/16 [90/2297856] via 192.168.64.6, 00:14:08, Serial0/0


D 172.168.0.0/16 [90/2172416] via 192.168.64.6, 00:15:05, Serial0/0
C 192.168.1.0/24 is directly connected, FastEthernet0/0
192.168.64.0/24 is variably subnetted, 3 subnets, 2 masks
D 192.168.64.0/24 is a summary, 00:15:05, Null0
D 192.168.64.0/30 [90/2681856] via 192.168.64.6, 00:15:05, Serial0/0
C 192.168.64.4/30 is directly connected, Serial0/0

Westasman# show ip route

Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B – BGP


D - EIGRP, EX - EIGRP external, 0 - OSPF, IA - OSPF inter area
Nl - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
El - OSPF external type 1, E2 - OSPF external type 2, E – EGP
i - IS-IS, LI - 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

172.16.00.0/16 is variably subnetted, 9 subnets, 2 masks


D 172.16.00.0/16 is a summary, 00:16:48, Null0
C 172.16.08.0/24 is directly connected, Loopback0
C 172.16.09.0/24 is directly connected, Loopback1
C 172.16.10.0/24 is directly connected, Loopback2
C 172.16.11.0/24 is directly connected, Loopback3
C 172.16.12.0/24 is directly connected, Loopback4
C 172.16.13.0/24 is directly connected, Loopback5
C 172.16.14.0/24 is directly connected, Loopback6
C 172.16.15.0/24 is directly connected, Loopback7

172.168.0.0/16 is variably subnetted, 2 subnets, 2 masks


D 172.168.0.0/16 is a summary, 00:17:47, Null0
C 172.168.72.0/24 is directly connected, FastEthernet0/0
D 192.168.1.0/24 [90/2172416] via 192.168.64.1, 00:17:46, Serial0/0
[90/2172416] via 192.168.64.5, 00:17:44, Serial0/1
192.168.64.0/24 is variably subnetted, 3 subnets, 2 masks
D 192.168.64.0/24 is a summary, 00:17:44, Null0
C 192.168.64.0/30 is directly connected, Serial0/0
C 192.168.64.4/30 is directly connected, Serial0/1

Passo 3. Come si può osservare, il router Westasman ha aggregato tutte le rotte delle interfacce di
loopback in un unica rete di classe B 172.16.0.0/16, stessa cosa ha fatto per la rete
192.168.64.0. Anche sui router SanJose1 e SanJose2 sono avvenuti comportamenti simili.
Poiché le rotte aggregate non hanno indirizzo di salto successivo (next hop) tale informazione
viene associata all'interfaccia nulla cioè null0. Si osservi che mentre sul router Westasman
tutte le rotte sono presenti, sui router SanJose1 e SanJose1, non sono state installate le rotte
verso le rispettive interfacce ethernet, a conferma di questo, le rotte marcate in rosso verso la
rete 192.168.64.0, sono dirette verso le rispettive interfacce seriali del router Westasman.
Affinché tutte le sottoreti siano raggiungibili correttamente è necessario disabilitare
l'aggregazione automatica delle rotte di EIGRP.

Per disabilitare l'aggregazione automatica su ogni router è necessario inserire i seguenti


comandi (come esempio si riporta solo il router Westasman)

Westasman(config)# router eigrp 100


Westasman(config-router)# no auto-summary

di seguito com'è variata la tabella di instradamento del router SanJose1

SanJose1# show ip route

*** Omissis ***

Gateway of last resort is not set

172.16.0.0/16 is variably subnetted, 9 subnets, 2 masks


D 172.16.08.0/24 [90/2297856] via 192.168.64.2, 00:10:01, Serial0/0
D 172.16.09.0/24 [90/2297856] via 192.168.64.2, 00:10:01, Serial0/0
D 172.16.10.0/24 [90/2297856] via 192.168.64.2, 00:10:01, Serial0/0
D 172.16.11.0/24 [90/2297856] via 192.168.64.2, 00:10:01, Serial0/0
D 172.16.12.0/24 [90/2297856] via 192.168.64.2, 00:10:01, Serial0/0
D 172.16.13.0/24 [90/2297856] via 192.168.64.2, 00:10:01, Serial0/0
D 172.16.14.0/24 [90/2297856] via 192.168.64.2, 00:10:01, Serial0/0
D 172.16.15.0/24 [90/2297856] via 192.168.64.2, 00:10:01, Serial0/0
172.168.0.0/16 is variably subnetted, 2 subnets, 2 masks
D 172.168.72.0/24 [90/2172416] via 192.168.64.2, 00:10:01, Serial0/0
C 192.168.1.0/24 is directly connected, FastEthernet0/0
192.168.64.0/24 is variably subnetted, 3 subnets, 2 masks
D 192.168.64.0/24 is a summary, 00:10:55, Null0
C 192.168.64.0/30 is directly connected, Serial0/0
D 192.168.64.4/30 [90/2172416] via 192.168.1.2, 00:09:42, FastEthernet0/0

Per dare migliore descrittività e chiarezza ai comandi network, quando si usa il protocollo
EIGRP senza aggregazione automatica, le sottoreti da annunciare possono essere specificate
utilizzando la wildcardmask (maschera jolly). Utilizzando questo tipo di sintassi, tutte le sottoreti
che partecipano al processo di instradamento (quindi che verranno annunciate) e che
appartengono ad una certa classe, vanno necessariamente specificate tutte utilizzando la
corretta maschera di sottorete, attraverso la rispettiva wildcardmask. Se per qualche motivo una
di queste sottoreti viene specificata senza l'opportuna wildcardmask, allora verranno annunciate
anche tutte le altre sottoreti. Per comprendere meglio quanto detto, disabilitiamo sul router
Westasman il processo di instradamento sula rete di classe B 172.16.0.0, che rappresenta
l'indirizzo aggregato dell'insieme delle interfacce di loopback configurate. E aggiungiamo al
processo solo la sottorete 172.16.8.0:

Westasman(config)# router eigrp 100


Westasman(config-router)# no network 172.16.0.0
Westasman(config-router)# network 172.16.8.0 0.0.0.255

Osserviamo adesso la tabella di instradamento sul router SanJose1:

SanJose1# show ip route

*** Omissis ***

Gateway of last resort is not set

172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks


D 172.16.8.0/24 [90/2297856] via 192.168.64.2, 00:00:02, Serial0/0
172.168.0.0/16 is variably subnetted, 2 subnets, 2 masks
D 172.168.0.0/16 is a summary, 00:24:51, Null0
D 172.168.72.0/24 [90/2172416] via 192.168.64.2, 00:23:57, Serial0/0
C 192.168.1.0/24 is directly connected, FastEthernet0/0
192.168.64.0/24 is variably subnetted, 3 subnets, 2 masks
D 192.168.64.0/24 is a summary, 00:24:51, Null0
C 192.168.64.0/30 is directly connected, Serial0/0
D 192.168.64.4/30 [90/2172416] via 192.168.1.2, 00:23:38, FastEthernet0/0

Passo 4. Adesso, tornando sul router Westaman, proviamo ad inserire:

Westasman(config)# router eigrp 100


Westasman(config-router)# network 172.16.9.0

Vediamo come le sottoreti appartenenti alle interfacce di loopback, sono di nuovo annunciate
tutte; eseguiamo il comando show ip route sul router SanJose1:

SanJose1# show ip route

*** Omissis ***

Gateway of last resort is not set

D 172.16.08.0/24 [90/2297856] via 192.168.64.2, 00:03:05, Serial0/0


D 172.16.09.0/24 [90/2297856] via 192.168.64.2, 00:00:03, Serial0/0
D 172.16.10.0/24 [90/2297856] via 192.168.64.2, 00:00:03, Serial0/0
D 172.16.11.0/24 [90/2297856] via 192.168.64.2, 00:00:03, Serial0/0
D 172.16.12.0/24 [90/2297856] via 192.168.64.2, 00:00:03, Serial0/0
D 172.16.13.0/24 [90/2297856] via 192.168.64.2, 00:00:03, Serial0/0
D 172.16.14.0/24 [90/2297856] via 192.168.64.2, 00:00:02, Serial0/0
D 172.16.15.0/24 [90/2297856] via 192.168.64.2, 00:00:02, Serial0/0

*** Omissis ***

Pertanto la wildcard mask consente maggior precisione e chiarezza nel specificare le reti da
annunciare con il protocollo EIGRP, ovviamente se tutte le sottoreti specificate sono seguite
dalla maschera corretta. Prima di procedere al passo successivo annullare i comandi
network 172.16.8.0 0.0.0.255 e network 172.16.9.0 negandoli con la clausola no.

Adesso che l'auto aggregazione è disattivata, l'ITA desidera che le tabelle di instradamento
vengano completate correttamente. Sfortunatamente ciò implica che il router Westasman,
annunci 8 rotte che potrebbero invece essere aggregate per migliorare l'efficienza. É possibile
utilizzare l'aggregazione manuale per aggregare questi indirizzi. Il router Westasman annuncia
otto sottoreti, i cui primi 21 bit più significativi sono in comune ad ognuna di esse:

172.16.08.0 10101100.00010000.00001 000.00000000


172.16.09.0 10101100.00010000.00001 001.00000000
172.16.10.0 10101100.00010000.00001 010.00000000
172.16.11.0 10101100.00010000.00001 011.00000000
172.16.12.0 10101100.00010000.00001 100.00000000
172.16.13.0 10101100.00010000.00001 101.00000000
172.16.14.0 10101100.00010000.00001 110.00000000
172.16.15.0 10101100.00010000.00001 111.00000000

É possibile, quindi, creare una rotta aggregata per tutte le sottoreti assegnate alle interfacce di
loopback usando un prefisso di 21 bit, cioè una maschera di sottorete, in notazione decimale
puntata, pari a 255.255.248.0.
Il router Westasman dovrà annunciare questa rotta aggregata ai router SanJose1 e SanJose2,
quindi l'aggregazione manuale dovrà essere configurata sulle sue interfacce seriali:

Westasman(config)# interface s0/0


Westasman(config-if)# ip summary-address eigrp 100 172.16.8.0 255.255.248.0

Westasman(config-if)# interface s0/1


Westasman(config-if)# ip summary-address eigrp 100 172.16.8.0 255.255.248.0

I precedenti comandi consentono al protocollo EIGRP di annunciare una rotta aggregata per il
sistema autonomo 100 sulle sue interfacce serial0/0 e serial0/1. Verificare quanto è
stato configurato utilizzando, sul router Westasman, il comando show ip protocols
command.

SanJose1# show ip protocols

Routing Protocol is "eigrp 100"


Outgoing update filter list for all interfaces is
Incoming update filter list for all interfaces is
Default networks flagged in outgoing updates
Default networks accepted from incoming updates

EIGRP metric weight Kl=l, K2=0, K3=l, K4=0, K5=0


EIGRP maximum hopcount 100
EIGRP maximum metric variance 1 Redistributing: eigrp 100

Automatic network summarization is not in effect


Address Summarization:
172.16.8.0/21 for Serial0/0, Serial0/1
Summarizing with metric 128256

Routing for Networks:


172.16.0.0
192.168.64.0
172.168.72.0

Routing Information Sources:

Gateway Distance Last Update


(this router) 5 00:00:09
192.168.64.1 90 00:00:12
192.168.64.5 90 00:00:09

Distance: internal 90 external 170

La rotta aggregata è annunciata con metrica pari a 128256. Inoltre sui router SanJose1 e
SanJose2 la tabella di instradamento è variata di conseguenza, è presente adesso una rotta
verso la rete 172.16.8.0/21 tramite le rispettive interfacce seriali.

Potrebbero piacerti anche