Packet Tracer

OSPF Open Shortest Path First Routing protocol

Vantaggi

Svantaggi:

Caratteristiche

Identità dei router

Per poter applicare OSPF, ogni router ha bisogno di un ID univoco, allo scopo di distinguerlo durante il processo OSPF. L'ID del router viene scelto rispettando uno dei seguenti criteri:

OSPF apprende l'identità dei suoi vicini e costruisce la matrice delle adiacenze e la mappa della rete dopo aver ricevuto i pacchetti di neighbor greetings. Se un vicino non è attivo per oltre 40 secondi viene ritenuto scollegato.

Prima che un router possa accettare informazioni di instradamento da un altro router, deve aver già costruito la tabella delle adiacenze. Due router sono vicini se sono soddisfatte le seguenti condizioni su ogni router:

I router OSPF attraversano tre stati detti processi di scambio:

  1. stato Down. Il nuovo router non ha scambiato alcuna informazione OSPF con gli altri router.

  2. stato Init. Un router destinazione ha ricevuto un nuovo pacchetto di neighbor greeting e lo ha aggiunto alla lista dei vicini (assumendo che certi valori siano uguali). Notare che, in questa fase, la comunicazione è unidirezionale.

  3. stato Two-Way. il nuovo router riceve una risposta unidirezionale al suo pacchetto di hello iniziale e aggiunge il router destinazione all'elenco dei suoi vicini. I router entrati nello stato two-way, sono considerati vicini.

Interfacce Loop back

Un'interfaccia di loop back è considerata logica, virtual, su un router, Essa rimane sempre attiva. Per default, il router non possiede un'interfaccia di loop back, ma la si può creare facilmente.

I router OSPF usano i pacchetti Link State Advertisements (LSAs) per scambiarsi informazioni. Un tipo di pacchetto LSA è quello di hello, usato per formare le relazioni di adiacenza. i pacchetti Hello sono generati ogni dieci secondi.

Quando si condividono informazioni sul collegamento (router direttamente connessi), i link sono inviati al DR (224.0.0.6) e il DR li diffonde a tutti gli altri (224.0.0.5) sul segmento.

Condividere informazioni di Routing

Dopo l'elezione della coppia DR/BDR, i routers continuano a generare i pacchetti di hello per mantenere la comunicazione. Questo è considerato uno stato Exstart, in cui i router OSPF sono pronti a condividere informazioni di link state. Il processo è chiamato un exchange protocol

stato Exstart

Il DR e il BDR formano adiacenze con gli altri router OSPF sul segmento, e entro ogni adiacenza, il router con il più elevato ID diventa il master ed inizia il processo di scambio (condivide le sue informazioni di link state). Notare che il DR non è necessariamente il master del processo di scambio. l'altro router adiacente sarà lo slave.

stato Exchange

Il master inizia a condividere informazioni di link state, con lo slave. Questi sono chiamati DBD (database description packets), oppure DDP. I DBD contengono il tipo di link-state, l'ID del router, il costo del link, e il numero di sequenza del link. Lo slave risponde con uno LSACK - una conferma al DBD dal master. Lo slave allora confronta l'informazione del DBD con quella in suo possesso.

stato Loading

Se il master ha più informazioni da aggiornare dello slave, lo slave risponderà con un LSR (Link State Request). Il master invia una LSU (Link State Update) con dettagliate informazioni sui link allo slave. Lo slave incorporerà queste nel suo data base locale di link state. Inoltre lo slave genererà un LSACK verso il master per confermare la ricezione della LSU. Se uno slave ha più informazioni da aggiornare, ripeterà gli stati "exchange" e "loading".

stato Full

Una volta che il master e lo slave sono sincronizzati, sono considerati nello stato full. Per riepilogare questi 4 passi, i router OSPF condividono un tipo di pacchetto LSA allo scopo di fornire informazioni relative ai router disponibili. Un messaggio di aggiornamento LSA contiene un link ed uno stato, oltre ad altre informazioni.

Un link è l'interfaccia del router su cui viaggia un aggiornamento.

Lo stato è una descrizione di questa interfaccia, incluso l'indirizzo IP configurato e la relazione che questo router ha con i suoi vicini. Comunque i router OSPF non condividono questa informazione con altri router OSPF.

Uno stoto two-way indica che due router OSPF sono adiacenti. Uno stato full indica il completamento della condivisione dei link tra i router.

Il Costo è l'inverso della larghezza di banda delle interfacce dei router.

Configurare il protocollo Open Shortest Path First

Realizzare il seguente schema di rete

OSPF rispetto a EIGRP funziona su qualsiasi dispositivo perché è basato su uno standard aperto.

Sintassi dei comandi di configurazione.

Router(config)#router ospf process_ID
Router(config-router)#network IP_address wildcard-mask area Nr-area

Il process_ID ha un significato locale, serve per distinguere I processi OSPF in esecuzione sullo stesso router. Il router potrebbe essere di frontiera tra due sistemi autonomi OSPF, e per distinguerli dal router, gli si assegnano process_ID diversi. Notare che questi numeri non hanno niente in comune con i numeri dei sistemi autonomi.

Per configurare un router aprire la scheda CLI. I seguenti passi guidano attraverso la fase di abilitazione di OSPF e di configurazione dei router:

(1841Router0) Hostname R1

Router>enable
Router#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#hostname R1
R1(config)#interface fastethernet 0/0
R1(config-if)#ip address 10.0.0.1 255.0.0.0
R1(config-if)#no shutdown
%LINK-5-CHANGED: Interface FastEthernet0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
R1(config-if)#exit
R1(config)#interface serial 0/0/0
R1(config-if)#ip address 20.0.0.1 255.0.0.0
R1(config-if)#clock rate 64000
R1(config-if)#bandwidth 64
R1(config-if)#no shutdown
%LINK-5-CHANGED: Interface Serial0/0/0, changed state to down
R1(config-if)#exit
%LINK-5-CHANGED: Interface Serial0/0/0, changed state to up
R1(config)#router ospf 1
R1(config-router)#network 10.0.0.0 0.255.255.255 area 0
R1(config-router)#network 20.0.0.0 0.255.255.255 area 0
R1(config-router)#exit
R1(config)#

(2620XM-Router1) Hostname R2

Router>enable
Router#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#hostname R2
R2(config)#interface serial 0/0
R2(config-if)#ip address 20.0.0.2 255.0.0.0
R2(config-if)#no shutdown
%LINK-5-CHANGED: Interface Serial0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/0, changed state to up
R2(config-if)#exit
R2(config)#interface fastethernet 0/0
R2(config-if)#ip address 30.0.0.1 255.0.0.0
R2(config-if)#no shutdown
%LINK-5-CHANGED: Interface FastEthernet0/0, changed state to up
R2(config-if)#exit
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
R2(config)#router ospf 2
R2(config-router)#network 20.0.0.0 0.255.255.255 area 0
R2(config-router)#network 30.0.0.0 0.255.255.255 area 0
00:03:10: %OSPF-5-ADJCHG: Process 2, Nbr 20.0.0.1 on Serial0/0 from
LOADING to FULL, Loading Done0.0.0.0 0.255.255.255 area 0
R2(config-router)#network 30.0.0.0 0.255.255.255 area 0
R2(config-router)#exit
R2(config)#

(2620XM-Router2) Hostname R3

Router>enable
Router#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#hostname R3
R3(config)#interface fastethernet 0/0
R3(config-if)#ip address 30.0.0.2 255.0.0.0
R3(config-if)#no shutdown
%LINK-5-CHANGED: Interface FastEthernet0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
R3(config-if)#interface serial 0/0
R3(config-if)#ip address 40.0.0.1 255.0.0.0
R3(config-if)#clock rate 64000
R3(config-if)#bandwidth 64
R3(config-if)#no shutdown
%LINK-5-CHANGED: Interface Serial0/0, changed state to down
R3(config-if)#exit
%LINK-5-CHANGED: Interface Serial0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/0, changed state to up
R3(config)#router ospf 3
R3(config-router)#network 40.0.0.0 0.255.255.255 area 0
R3(config-router)#network 30.0.0.0 0.255.255.255 area 0
00:04:53: %OSPF-5-ADJCHG: Process 3, Nbr 30.0.0.1 on FastEthernet0/0 from
LOADING to FULL, Loading D
R3(config-router)#exit
R3(config)#
%SYS-5-CONFIG_I: Configured from console by console
R3#

(2811Router3) Hostname R4

Router>enable
Router#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#interface serial 0/0/0
Router(config-if)#ip address 40.0.0.2 255.0.0.0
Router(config-if)#no shutdown
%LINK-5-CHANGED: Interface Serial0/0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/0/0, changed state to up
Router(config-if)#exit
Router(config)#interface fastethernet 0/0
Router(config-if)#ip address 50.0.0.1 255.0.0.0
Router(config-if)#no shutdown
%LINK-5-CHANGED: Interface FastEthernet0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
Router(config-if)#exit
R4(config)#router ospf 4
R4(config-router)#network 50.0.0.0 0.255.255.255 area 0
R4(config-router)#network 40.0.0.0 0.255.255.255 area 0
R4(config-router)#
00:06:32: %OSPF-5-ADJCHG: Process 4, Nbr 40.0.0.1 on Serial0/0/0 from
LOADING to FULL, Loading Done
R4(config-router)#exit
R4(config)#

PC1

ipconfig
IP Address......................: 10.0.0.2
Subnet Mask.....................: 255.0.0.0
Default Gateway.................: 10.0.0.1
PC>ping 50.0.0.2

PC-2

PC>ipconfig
IP Address......................: 50.0.0.2
Subnet Mask.....................: 255.0.0.0
Default Gateway.................: 50.0.0.1
PC>ping 10.0.0.2

Si può verificare che l'algoritmo OSPF è correttamente in esecuzione tramite il comando show ip protocols eseguito in modo privilegiato.

R4#show ip protocols
Routing Protocol is "ospf 4"
   Outgoing update filter list for all interfaces is not set
   Incoming update filter list for all interfaces is not set
   Router ID 50.0.0.1
   Number of areas in this router is 1. 1 normal 0 stub 0 nssa
   Maximum path: 4
   Routing for Networks:
     50.0.0.0 0.255.255.255 area 0
     40.0.0.0 0.255.255.255 area 0
   Routing Information Sources:
     Gateway Distance Last Update
     40.0.0.1 110 00:01:26
   Distance: (default is 110)
R4#

Il comando show ip route serve per la ricerca di malfunzionamenti in una rete ospf. Se mancano informazioni relative ai router, controllare i router presenti in quel segmento di rete.

R4#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
     D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
     N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
     E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
     i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter &area
     * - candidate default, U - per-user static route, o - ODR
     P - periodic downloaded static route
Gateway of last resort is not set
O     10.0.0.0/8 [110/1564] via 40.0.0.1, 00:02:37, Serial0/0/0
O     20.0.0.0/8 [110/1563] via 40.0.0.1, 00:02:37, Serial0/0/0
O     30.0.0.0/8 [110/782] via 40.0.0.1, 00:02:37, Serial0/0/0
C     40.0.0.0/8 is directly connected, Serial0/0/0
C     50.0.0.0/8 is directly connected, FastEthernet0/0
R4#

Per verificare l'algoritmo OSPF inviare un ping da pc1 a pc2 e viceversa. Se la risposta ritorna, la configurazione è corretta, ma se non si riceve la risposta, bisogna risalire all'errore commesso.