Oggi inizieremo a studiare il routing con il protocollo OSPF. Questo argomento, così come l'analisi del protocollo EIGRP, è fondamentale nell'intero corso CCNA. Come potete vedere, la sezione 2.4 si intitola "Configurazione, verifica e risoluzione dei problemi di singola area e aree multiple OSPFv2 per il protocollo IPv4 (esclusa l'autenticazione, il filtraggio, l'aggregazione manuale delle route, la redistribuzione, l'area stub, la rete virtuale e LSA)".

L'argomento OSPF è piuttosto ampio, quindi richiederà 2, forse 3 video lezioni. La lezione di oggi sarà dedicata alla parte teorica, vi spiegherò cos'è questo protocollo in generale e come funziona. Nel video successivo passeremo alla modalità di configurazione OSPF utilizzando Packet Tracer.
Dunque, in questa lezione esamineremo tre cose: cos'è OSPF, come funziona e cosa sono le aree OSPF. Nella lezione precedente abbiamo detto che OSPF è un protocollo di routing tipo Link State, che esplora i canali di comunicazione tra i router e prende decisioni in base alla velocità di questi canali. Un canale lungo con maggiore velocità, cioè con maggiore capacità di trasmissione, avrà la priorità rispetto a un canale corto con minore capacità di trasmissione.
Il protocollo RIP, essendo di tipo distance-vector, sceglierà un percorso a un hop anche se questo canale ha una bassa velocità, mentre il protocollo OSPF sceglierà un percorso lungo con più hop, se la velocità complessiva di quel percorso è superiore alla velocità del traffico sul percorso breve.

In seguito analizzeremo l'algoritmo di decisione; per ora dovete ricordare che OSPF è un protocollo di stato dei link Link State. Questo standard aperto è stato creato nel 1988, quindi ogni produttore di hardware di rete e ogni fornitore di servizi di rete ha potuto utilizzarlo. Pertanto OSPF è molto più popolare rispetto a EIGRP.
Il protocollo OSPF versione 2 supporta solo il protocollo IPv4, mentre un anno dopo, nel 1989, gli sviluppatori annunciarono il rilascio della versione 3, che supporta l'IPv6. Tuttavia, la versione tre completamente funzionale di OSPF per IPv6 è apparsa solo nel 2008. Perché è stato scelto proprio OSPF? Nell'ultima lezione abbiamo appreso che questo protocollo di gateway interno effettua la convergenza delle rotte molto più rapidamente rispetto a RIP. Questo è un protocollo senza classi.
Se ricordi, RIP è un protocollo di classe, il che significa che non invia informazioni sulla maschera di sottorete, e se si imbatte in un indirizzo IP di classe A/24, non lo accetterà. Ad esempio, se gli presenta un indirizzo IP del tipo 10.1.1.0/24, lo interpreterà come una rete 10.0.0.0, perché non comprende quando una rete è suddivisa in sottoreti utilizzando più di una maschera di sottorete.
OSPF è un protocollo sicuro. Ad esempio, se due router scambiano informazioni OSPF, è possibile configurare l'autenticazione in modo tale che condividere informazioni con un router vicino sarà possibile solo dopo l'inserimento di una password. Come abbiamo già detto, è uno standard aperto, pertanto OSPF è utilizzato da molti produttori di apparecchiature di rete.
In un contesto globale, OSPF rappresenta un meccanismo di scambio di annunci sullo stato del collegamento Link State Advertisement, o LSA. I messaggi LSA sono generati dal router e contengono molte informazioni: un identificatore unico del router router-id, dati sulle reti conosciute dal router, dati sul loro costo e così via. Tutte queste informazioni sono necessarie al router per prendere decisioni di instradamento.

Il router R3 invia le proprie informazioni LSA al router R5, e il router R5 condivide le proprie informazioni LSA con R3. Questi LSA rappresentano una struttura dati che forma il database dello stato dei collegamenti Link State Data Base, o LSDB. Il router raccoglie tutti gli LSA ricevuti e li inserisce nel proprio LSDB. Dopo che entrambi i router hanno creato i propri database, si scambiano messaggi Hello, che servono per la scoperta dei router vicini, e iniziano la procedura di confronto dei propri LSDB.
Il router R3 invia al router R5 un messaggio DBD, o "descrizione del database", e R5 restituisce il proprio DBD al router R3. Questi messaggi contengono gli indici LSA presenti nei database di ciascun router. Ricevuto il DBD, il router R3 invia una richiesta di stato della rete LSR al router R5, specificando: "ho già i messaggi 3, 4 e 9, quindi inviami solo 5 e 7".
Allo stesso modo, R5 informa il terzo router: "ho informazioni 3, 4 e 9, quindi inviami 1 e 2". Ricevuti i messaggi LSR, i router inviano indietro pacchetti di aggiornamento dello stato di rete LSU, cioè in risposta al proprio LSR, il terzo router riceve LSU dal router R5. Una volta che i router aggiornano i propri database, tutti loro, anche se ci sono 100 router, avranno gli stessi database LSDB. Non appena nei router vengono creati i database LSDB, ognuno di essi conoscerà l'intera rete nel suo complesso. Il protocollo OSPF utilizza l'algoritmo Shortest Path First per creare la tabella di routing, quindi una condizione fondamentale per il suo corretto funzionamento è la sincronizzazione dei LSDB di tutti i dispositivi nella rete.

Nello schema fornito sono presenti 9 router, ognuno dei quali scambia messaggi LSR, LSU e così via con i vicini. Tutti sono collegati tra loro tramite interfacce di tipo p2p, o "point-to-point", che supportano il funzionamento del protocollo OSPF e interagiscono tra loro per creare gli stessi LSDB.

Non appena i database saranno sincronizzati, ogni router, utilizzando l'algoritmo del percorso più breve, formerà la propria tabella di routing. Le tabelle saranno diverse tra i vari router. In altre parole, tutti i router utilizzano gli stessi LSDB, ma creano tabelle di routing in base a proprie considerazioni sui percorsi più brevi. Per utilizzare questo algoritmo, OSPF ha bisogno di aggiornare regolarmente il database LSDB.
Quindi, per il proprio funzionamento, OSPF deve prima soddisfare 3 condizioni: trovare i vicini, creare e aggiornare LSDB e formare la tabella di routing. Per soddisfare la prima condizione, l'amministratore di rete potrebbe dover configurare manualmente router-id, tempistiche o wildcard mask. Nel prossimo video, esamineremo la configurazione di un dispositivo per lavorare con OSPF, ma per ora dovete sapere che questo protocollo utilizza una maschera inversa, e se non corrisponde, se le vostre sottoreti non coincidono, o se l'autenticazione non corrisponde, la vicinanza dei router non può formarsi. Pertanto, quando si risolvono problemi di funzionamento di OSPF, è necessario scoprire perché questa vicinanza non si forma, cioè controllare la corrispondenza dei parametri sopra indicati.
In qualità di amministratore di rete, non partecipate al processo di creazione della LSDB. L'aggiornamento dei database avviene automaticamente dopo la creazione della vicinanza dei router, così come la costruzione delle tabelle di routing. Tutto questo viene eseguito dal dispositivo stesso, configurato per lavorare con il protocollo OSPF.
Esaminiamo un esempio. Abbiamo 2 router, ai quali per semplificare ho assegnato gli identificativi RID 1.1.1.1 e 2.2.2.2. Non appena li collegheremo, il canale link passerà immediatamente nello stato up, poiché inizialmente ho configurato questi router per lavorare con OSPF. Non appena verrà stabilito il canale di comunicazione, il router A invierà immediatamente un pacchetto Hello al secondo. Questo pacchetto conterrà informazioni sul fatto che questo router non ha ancora 'visto' nessuno su questo canale, poiché invia Hello per la prima volta, insieme al suo identificatore, ai dati sulla rete a cui è connesso e ad altre informazioni che può condividere con il vicino.

Ricevendo questo pacchetto, il router B dirà: 'vedo che c'è un potenziale candidato per la vicinanza tramite il protocollo OSPF' e passerà allo stato di inizializzazione Init state. Il pacchetto Hello non è un messaggio unicast o broadcast, ma è un pacchetto multicast, inviato all'indirizzo IP multicast OSPF 224.0.0.5. Alcune persone chiedono quale sia la maschera di sottorete per il multicast. In realtà, il multicast non ha maschera di sottorete, si diffonde come un segnale radio che viene ricevuto da tutti i dispositivi configurati sulla sua frequenza. Ad esempio, se desiderate ascoltare la radio FM trasmessa sulla frequenza 91,0, impostate il vostro ricevitore sulla stessa frequenza.
Allo stesso modo, il router B è configurato per ricevere messaggi per l'indirizzo multicast 224.0.0.5. Ascoltando questo canale, riceve il pacchetto Hello inviato dal router A e gli risponde con il suo messaggio.

In questo caso, la vicinanza può essere stabilita solo se la risposta di B soddisfa un insieme di criteri. Il primo criterio è che la frequenza di invio dei messaggi Hello e l'intervallo di attesa per la risposta a questo messaggio, Dead Interval, devono coincidere per entrambi i router. Di solito, il Dead Interval è pari a diversi valori del timer Hello. Pertanto, se il Hello Timer del router A è di 10 secondi e il router B gli invia un messaggio dopo 30 secondi, mentre il Dead Interval è di 20 secondi, la vicinanza non si stabilirà.
Il secondo criterio è che entrambi i router devono utilizzare lo stesso tipo di autenticazione. Di conseguenza, le password di autenticazione devono anche corrispondere.
Il terzo criterio è che ci sia corrispondenza tra gli identificatori di zona Arial ID, il quarto è la corrispondenza della lunghezza del prefisso di rete. Se il router A comunica un prefisso /24, allora anche il router B deve avere un prefisso di rete /24. Nel prossimo video esamineremo questo in modo più dettagliato, per ora segnalo che non si tratta di una maschera di sottorete, qui i router utilizzano una maschera Wildcard. E naturalmente, i flag della zona stub devono anche corrispondere, se i router si trovano in questa zona.
Dopo aver verificato questi criteri, in caso di corrispondenza, il router B invia al router A il suo pacchetto Hello. A differenza del messaggio A, il router B comunica che ha visto il router A e si presenta.

In risposta a questo messaggio, il router A invia nuovamente un Hello al router B, confermando di aver visto anche il router B, il canale di comunicazione tra loro consiste nei dispositivi 1.1.1.1 e 2.2.2.2, e lui stesso è il dispositivo 1.1.1.1. Questa è una fase molto importante per stabilire la vicinanza. In questo caso si utilizza una connessione bidirezionale 2-WAY, ma cosa succede se abbiamo uno switch con una rete distribuita di 4 router? In un tale ambiente 'condiviso', uno dei router deve svolgere il ruolo di router designato Designated Router D.R., mentre l'altro diventa il router designato di riserva Backup Designated Router B.D.R.

Ciascuno di questi dispositivi formerà una Full connection, ovvero uno stato di piena adiacenza, più avanti vedremo di cosa si tratta, tuttavia questo tipo di connessione sarà stabilito solo con il D.R. e il B.D.R., mentre gli altri due router D e B continueranno a comunicare tra loro tramite una connessione punto-punto.
Cioè, con il D.R. e il B.D.R. tutti i router stabiliscono un rapporto di piena adiacenza, mentre tra di loro instaurano una connessione di tipo punto-punto. Questo è molto importante perché in una connessione bidirezionale tra dispositivi adiacenti tutti i parametri del pacchetto Hello devono corrispondere. Nel nostro caso tutto corrisponde, quindi i dispositivi formano senza problemi la vicinanza.
Non appena la connessione bidirezionale è stabilita, il router A invia al router B un pacchetto Database Description, o "descrizione del database", e passa allo stato ExStart — inizio dello scambio, o attesa del caricamento. Il Database Descriptor rappresenta informazioni simili all'indice di un libro: è un elenco di tutto ciò che è presente nel database di routing. In risposta, il router B invia la propria descrizione del database al router A e passa allo stato di scambio dati sui canali Exchange. Se nel stato Exchange il router scopre che manca qualche informazione nel suo database, passerà allo stato di caricamento LOADING e inizierà a scambiarsi messaggi LSR, LSU e LSA con il vicino.

Quindi, il router A invierà al vicino un LSR, che risponderà con un pacchetto LSU, a cui il router A risponderà al router B con un messaggio LSA. Questo scambio avverrà tante volte quante saranno le volte in cui i dispositivi vorranno comunicare messaggi LSA. Lo stato LOADING indica che l'aggiornamento completo del database LSA non è ancora avvenuto. Dopo aver caricato tutti i dati, entrambi i dispositivi passeranno allo stato di piena adiacenza FULL.
Nota che in una connessione bidirezionale i dispositivi si trovano semplicemente in uno stato di vicinanza, mentre lo stato di piena adiacenza è possibile solo tra i router, D.R. e B.D.R. Ciò significa che ogni router informa il D.R. delle modifiche nella rete, e tutti i router vengono a conoscenza di queste modifiche tramite il D.R.
La scelta del D.R. e del B.D.R. è una questione importante. Consideriamo come avviene la selezione del D.R. in un ambiente generale. Supponiamo che nella nostra rete ci siano tre router e uno switch. Prima i dispositivi OSPF confrontano le priorità nei messaggi Hello, quindi confrontano gli ID dei router.
Il dispositivo con la priorità più alta diventa il D.R. Se le priorità di due dispositivi coincidono, viene scelto tra questi quello con il Router ID più elevato, che diventa così il D.R.
Il router di riserva B.D.R. è il dispositivo con la seconda priorità più significativa o con il secondo Router ID più significativo. Se il D.R. fallisce, verrà immediatamente sostituito dal B.D.R. che assumerà il ruolo di D.R., mentre il sistema sceglierà un altro B.D.R.

Spero che tu abbia compreso la scelta del D.R. e del B.D.R., se non lo hai fatto, tornerò su questo argomento in uno dei prossimi video e spiegherò questo processo.
Quindi, abbiamo discusso cosa sia Hello, la descrizione del database Database Descriptor e i messaggi LSR, LSU e LSA. Prima di passare all'argomento successivo, parliamo un po' del costo dell'OSPF.

In Cisco, il costo della rotta viene calcolato utilizzando la formula del rapporto tra la larghezza di banda di riferimento Reference bandwidth, che per default è impostata a 100 Mbps, e il costo del link. Ad esempio, collegando dispositivi tramite una porta seriale, la velocità è di 1.544 Mbps e il costo sarà 64. Nell'uso di una connessione Ethernet a 10 Mbps, il costo è 10, mentre il costo di una connessione FastEthernet a 100 Mbps sarà di 1.
Con Gigabit Ethernet abbiamo una velocità di 1000 Mbps, tuttavia in questo caso la velocità è sempre considerata pari a 1. Quindi, se hai nella rete Gigabit Ethernet, devi modificare il valore di default della Ref. BW a 1000. In questo caso, il costo sarà 1 e l'intera tabella verrà ricalcolata con valori di costo aumentati di 10 volte. Dopo aver formato i vicinati e costruito il database LSDB, procediamo alla costruzione della tabella di routing.

Dopo aver ricevuto il LSDB, ciascun router inizia autonomamente a formare un elenco di rotte utilizzando l'algoritmo SPF. Nello schema, il router A creerà una tabella per se stesso. Ad esempio, calcola il costo della rotta A-R1 e lo determina pari a 10. Per semplificare la comprensione dello schema, supponiamo che il router A trovi il percorso ottimale verso il router B. Il costo della connessione A-R1 è 10, quello della connessione A-R2 è 100, e il costo della rotta A-R3 è 11, cioè la somma della rotta A-R1(10) e R1-R3(1).
Se il router A desidera raggiungere il router R4, può farlo sia percorrendo la rotta A-R1-R4, sia la rotta A-R2-R4, e in entrambi i casi il costo delle rotte sarà lo stesso: 10+100 = 100+10 = 110. La rotta A-R6 costerà 100+1 = 101, che è già migliore. Si valuterà quindi il percorso verso il router R5 attraverso la rotta A-R1-R3-R5, il cui costo sarà 10+1+100 = 111.
Il percorso verso il router R7 può essere tracciato tramite due rotte: A-R1-R4-R7 o A-R2-R6-R7. Il costo della prima sarà 210, mentre il secondo sarà 201, quindi è meglio scegliere 201. Pertanto, per raggiungere il router B, il router A può utilizzare 4 rotte.

Il costo del percorso A-R1-R3-R5-B sarà di 121. Il percorso A-R1-R4-R7-B costerà 220. Il percorso A-R2-R4-R7-B costa 210, mentre A-R2-R6-R7-B ha un costo di 211. Da questo si evince che il router A sceglierà il percorso con il costo minore, pari a 121, e lo inserirà nella tabella di routing. Questa è una versione molto semplificata di come funziona l'algoritmo SPF. In realtà, nella tabella non vengono inserite solo le designazioni dei router attraverso cui passa il percorso ottimale, ma anche le designazioni delle porte che li collegano e tutte le altre informazioni necessarie.
Consideriamo un altro argomento riguardante le zone di routing. Di solito, quando si configura OSPF, tutti i dispositivi di un'azienda si trovano in un'unica zona comune.

Cosa succede se un dispositivo collegato al router R3 smette improvvisamente di funzionare? Il router R3 inizierà immediatamente a inviare ai router R5 e R1 un messaggio che informa che il canale con quel dispositivo non è più operativo, e tutti i router inizieranno a scambiarsi aggiornamenti su questo evento.

Se avete 100 router, tutti loro aggiorneranno le informazioni sullo stato dei canali, perché si trovano in un'unica zona comune. Lo stesso accadrà quando uno dei router vicini smette di funzionare: tutti i dispositivi nella zona si scambieranno aggiornamenti LSA. Dopo lo scambio di questi messaggi, la topologia della rete cambierà. Una volta che ciò accade, l'SPF ricalcolerà le tabelle di routing in base alle nuove condizioni. Questo è un processo molto ampio, e se in una zona ci sono mille dispositivi, è necessario monitorare la memoria dei router per assicurarsi che sia sufficiente a memorizzare tutti gli LSA e il vasto database di stato dei canali LSDB. Non appena in una parte della zona si verificano cambiamenti, l'algoritmo SPF procederà immediatamente al ricalcolo dei percorsi. Per impostazione predefinita, l'LSA viene aggiornato ogni 30 minuti. Questo processo avviene su tutti i dispositivi non in contemporanea, tuttavia, in ogni caso, gli aggiornamenti vengono eseguiti da ogni router con una frequenza di 30 minuti. Maggiore è il numero di dispositivi di rete, maggiore è la memoria e il tempo richiesti per aggiornare l'LSDB.
È possibile risolvere questo problema dividendo un'unica area comune in più aree separate, cioè utilizzando il multizoning. A tal fine, è necessario avere un piano o uno schema dell'intera rete che si gestisce. L'area zero AREA 0 è la vostra area principale Main area. Questo è il luogo in cui avviene la connessione alla rete esterna, ad esempio l'accesso a Internet. Quando si creano nuove aree, è necessario seguire la regola: in ogni area deve esserci un router di confine ABR, Area Border Router. Il router di confine ha un'interfaccia in un'area e un'altra interfaccia in un'altra area. Ad esempio, il router R5 ha interfacce nell'area 1 e nell'area 0. Come detto, ciascuna area deve essere connessa all'area zero, cioè avere un router di confine, uno dei cui interfaccia è collegata a AREA 0.

Supponiamo che la connessione R6-R7 sia andata in tilt. In questo caso, l'aggiornamento LSA verrà diffuso solo all'interno dell'area AREA 1 e riguarderà solo quest'area. I dispositivi nell'area 2 e nell'area 0 non ne saranno nemmeno a conoscenza. Il router di confine R5 esegue una sintesi delle informazioni su ciò che sta accadendo nella sua area e invia all'area principale AREA 0 una sintesi dello stato della rete. I dispositivi in un'area non hanno bisogno di conoscere tutte le modifiche LSA all'interno di altre aree, poiché il router ABR inoltrerà le informazioni aggregate sui percorsi da un'area all'altra.
Se non hai ben compreso il concetto di aree, potrai saperne di più nelle lezioni successive, quando ci occuperemo della configurazione della routing OSPF e esamineremo alcuni esempi.

Grazie per rimanere con noi. Ti piacciono i nostri articoli? Vuoi vedere più contenuti interessanti? Supportaci effettuando un ordine o raccomandandoci ai tuoi amici, Sconto del 30% per gli utenti di Habra su un'analoga unica di server entry-level, che abbiamo ideato per te: (sono disponibili opzioni con RAID1 e RAID10, fino a 24 core e fino a 40GB DDR4).
Dell R730xd a metà prezzo? Solo da noi nei Paesi Bassi! Dell R420 — 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB — a partire da $99! Leggi di
Fonte: habr.com
