Esistono vari modi per verificare e risolvere i problemi di configurazione e funzionamento di OSPF. I seguenti sono i più utili:
- mostra i protocolli ip
- mostra ip ospf
- mostra l’interfaccia IP OSPF
- mostra ip ospf prossimo
- mostra il database ip ospf
- debug ip pacchetto ospf
- debug ip ospf ciao
- debug ip ospf adj
Utilizzo del comando show ip protocols per verificare e risolvere i problemi di OSPF
Come con altri protocolli di routing, show ip protocols aiuta a verificare la configurazione globale di OSPF. L’output di questo protocollo dal RouterA nella nostra rete è mostrato di seguito:
RouterA#sh ip protocols
Routing Protocol is “ospf 1”
Outgoing update filter list for all interfaces is not set
Incoming update filter list for all interfaces is not set
Router ID 192.168.2.1
Number of areas in this router is 1. 1 normal 0 stub 0 nssa
Maximum path: 4
Routing for Networks:
0.0.0.0 255.255.255.255 area 1
Reference bandwidth unit is 100 mbps
Routing Information Sources:
Gateway Distance Last Update
192.168.3.2 110 08:25:40
Distance: (default is 110)
La prima cosa da notare nell’output sopra è l’ID del router e le aree configurate su questo router. Mostra anche le reti che vengono aggiunte al processo. L’ultima cosa da notare è che il router adiacente viene mostrato come origine delle informazioni di instradamento. Come puoi vedere, l’output di questo comando può essere utilizzato per verificare rapidamente la configurazione di base ed è facile rilevare qualsiasi errore di configurazione in questo piccolo output.
Utilizzo del comando show ip ospf per verificare e risolvere i problemi di OSPF
Il comando show ip ospf è utile anche per verificare la configurazione. Sebbene la maggior parte dell’output non rientri nell’ambito di CCNA, alcune cose come l’ID router, le informazioni relative all’area e le informazioni relative a SPF sono utili. L’output di RouterA è mostrato di seguito:
RouterA#show ip ospf
Routing Process “ospf 1” with ID 192.168.2.1
Start time: 00:00:07.616, Time elapsed: 08:36:11.732
Supports only single TOS(TOS0) routes
Supports opaque LSA
Supports Link-local Signaling (LLS)
Supports area transit capability
Router is not originating router-LSAs with maximum metric
Initial SPF schedule delay 5000 msecs
Minimum hold time between two consecutive SPFs 10000 msecs
Maximum wait time between two consecutive SPFs 10000 msecs
Incremental-SPF disabled
Minimum LSA interval 5 secs
Minimum LSA arrival 1000 msecs
LSA group pacing timer 240 secs
Interface flood pacing timer 33 msecs
Retransmission pacing timer 66 msecs
Number of external LSA 0. Checksum Sum 0x000000
Number of opaque AS LSA 0. Checksum Sum 0x000000
Number of DCbitless external and opaque AS LSA 0
Number of DoNotAge external and opaque AS LSA 0
Number of areas in this router is 1. 1 normal 0 stub 0 nssa
Number of areas transit capable is 0
External flood list length 0
IETF NSF helper support enabled
Cisco NSF helper support enabled
Area 1
Number of interfaces in this area is 2
Area has no authentication
SPF algorithm last executed 08:35:56.788 ago
SPF algorithm executed 2 times
Area ranges are
Number of LSA 7. Checksum Sum 0x046CFF
Number of opaque link LSA 0. Checksum Sum 0x000000 Number of DCbitless LSA 0
Number of indication LSA 0
Number of DoNotAge LSA 0
Flood list length 0
Nell’output precedente, notare che l’algoritmo SPF è stato eseguito due volte. Ciò significa che c’è stato un cambiamento nella rete una volta dopo l’avvio di OSPF.
Utilizzo del comando show ip ospf interface per verificare e risolvere i problemi di OSPF
Uno dei comandi più importanti utilizzati per verificare e risolvere i problemi di OSPF è il comando show ip ospf interface . Può essere utilizzato per visualizzare le informazioni di tutte le interfacce che partecipano a OSPF o qualsiasi interfaccia specifica. Di seguito è riportato un esempio di output del modulo RouterD:
RouterD#sh ip ospf interface
FastEthernet0/1 is up, line protocol is up
Internet Address 192.168.6.4/24, Area 2
Process ID 1, Router ID 192.168.6.4, Network Type BROADCAST, Cost: 10
Transmit Delay is 1 sec, State DROTHER, Priority 1
Designated Router (ID) 192.168.7.6, Interface address 192.168.6.6
Backup Designated router (ID) 192.168.6.5, Interface address 192.168.6.5
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
oob-resync timeout 40
Hello due in 00:00:06
Supports Link-local Signaling (LLS)
Cisco NSF helper support enabled
IETF NSF helper support enabled
Index 2/2, flood queue length 0
Next 0x0(0)/0x0(0)
Last flood scan length is 3, maximum is 3
Last flood scan time is 0 msec, maximum is 4 msec
Neighbor Count is 2, Adjacent neighbor count is 2
Adjacent with neighbor 192.168.6.5 (Backup Designated Router)
Adjacent with neighbor 192.168.7.6 (Designated Router)
Suppress hello for 0 neighbor(s)
FastEthernet0/0 is up, line protocol is up
Internet Address 192.168.5.4/24, Area 2
Process ID 1, Router ID 192.168.6.4, Network Type BROADCAST, Cost: 10
Transmit Delay is 1 sec, State DROTHER, Priority 1
Designated Router (ID) 192.168.5.3, Interface address 192.168.5.3
Backup Designated router (ID) 192.168.6.5, Interface address 192.168.5.5
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
oob-resync timeout 40
Hello due in 00:00:00
Supports Link-local Signaling (LLS)
Cisco NSF helper support enabled
IETF NSF helper support enabled
Index 1/1, flood queue length 0
Next 0x0(0)/0x0(0)
Last flood scan length is 1, maximum is 2
Last flood scan time is 0 msec, maximum is 4 msec
Neighbor Count is 2, Adjacent neighbor count is 2
Adjacent with neighbor 192.168.5.3 (Designated Router)
Adjacent with neighbor 192.168.6.5 (Backup Designated Router)
Suppress hello for 0 neighbor(s)
Nell’output del comando show ip ospf interface , otterrai molte informazioni relative alle interfacce che partecipano a OSPF e al segmento di rete a cui è collegata ciascuna interfaccia. Le seguenti informazioni sono di particolare importanza:
- L’IP dell’interfaccia
- Area a cui appartiene l’interfaccia
- L’ID del router
- Tipo di rete
- L’indirizzo IP DR e BDR in quel segmento (in caso di reti ad accesso multiplo)
- I timer ciao e morti
- Contano i vicini e le adiacenze
- Motivo di adiacenza (in caso di reti ad accesso multiplo)
Nell’output precedente, notare che RouterD non è il DR o BDR per entrambi i segmenti di rete a cui è connesso.
Utilizzo del comando show ip ospf neighbour per verificare e risolvere i problemi di OSPF
Una delle parti più importanti dell’OSPF è la scoperta del vicinato e la formazione dell’adiacenza. Quindi l’output del comando show ip ospf neighbour è molto importante. Ci sono alcune variazioni nell’output di questo comando e il miglior esempio è l’output di RouterC perché è costituito da più tipi di interfacce. L’output di RouterC è mostrato di seguito:
In the output of the show ip ospf interface command, you will get a lot of information regarding the interfaces participating in OSPF as well as the network segment each interface is attached to. The following information is of particular importance:
- The Interface IP
- Area that the interface belongs to
- The Router ID
- Network type
- The DR and BDR IP address in that segment (in case of multi-access networks)
- The hello and dead timers
- Neighbors and Adjacency count
- Reason of adjacency (in case of multi-access networks)
In the above output, notice that RouterD is not the DR or BDR for both the network segments it is connected to.
Using show ip ospf neighbor command to verify and troubleshoot OSPF
One of the most important parts of OSPF is the neighborship discovery and formation of adjacency. Hence the output from the show ip ospf neighbor command is very important. There are some variations in the output of this command and the best example is the output from RouterC because it consists of multiple types of interfaces. The output from RouterC is shown below:
RouterC#show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
192.168.3.2 0 FULL/ – 00:00:33 192.168.3.2 Serial0/0
192.168.6.4 1 FULL/DROTHER 00:00:33 192.168.5.4 FastEthernet0/1
192.168.6.5 1 FULL/BDR 00:00:31 192.168.5.5 FastEthernet0/1
I campi dell’output di cui sopra sono discussi di seguito:
- Neighbor ID : questo campo elenca l’ID router di tutti i vicini scoperti. Ricorda che questo è l’ID router del vicino e non l’indirizzo IP dell’interfaccia con cui il router è connesso a questo router.
- Pri (Priorità) – Questa è la priorità dell’interfaccia del vicino. Una priorità di 0 viene visualizzata se il router adiacente è configurato manualmente con questa priorità o se la rete tra i vicini non è una rete ad accesso multiplo.
- Stato: questo campo indica lo stato di adiacenza. FULL indica che è stata stabilita un’adiacenza completa con il vicino e il database è stato scambiato. Il secondo valore indica il tipo di adiacenza. I valori possibili sono DR (il router adiacente è un DR), BDR (il router adiacente è BDR), DOTHER (il router adiacente è un router nella rete) e – il che significa che è un’adiacenza attraverso un collegamento non multi-accesso . Se il primo valore è bloccato come 2WAY, significa che non è stata formata un’adiacenza. La ragione possibile è che il router adiacente non è un DR o BDR in una rete ad accesso multiplo. Un’adiacenza bloccata in qualsiasi altro stato è motivo di preoccupazione.
- Dead Time – Questo campo indica il periodo dopo il quale il prossimo verrà dichiarato morto se non viene ricevuto un pacchetto di saluto.
- Indirizzo: questo campo indica l’indirizzo IP dell’interfaccia del router adiacente connesso alla stessa rete di questo router.
- Interfaccia – L’interfaccia verso la quale è possibile raggiungere il vicino.
Utilizzo del comando show ip ospf database per verificare e risolvere i problemi di OSPF
Il comando show ip ospf database mostra due cose importanti riguardanti l’area a cui è connesso un router: il numero di router nell’area e i collegamenti di rete conosciuti nell’area. L’output è suddiviso per area. Di seguito viene fornito un esempio dell’output di RouterC:
RouterC#sh ip ospf database
OSPF Router with ID (192.168.5.3) (Process ID 1)
Router Link States (Area 0)
Link ID ADV Router Age Seq# Checksum Link count
192.168.3.2 192.168.3.2 1767 0x80000032 0x00D672 2
192.168.5.3 192.168.5.3 61 0x80000034 0x00F0CA 3
Summary Net Link States (Area 0)
Link ID ADV Router Age Seq# Checksum
192.168.1.0 192.168.3.2 1767 0x80000032 0x0024C4
192.168.2.0 192.168.3.2 1767 0x80000032 0x00B43D
192.168.5.0 192.168.5.3 61 0x80000034 0x005DC2
192.168.6.0 192.168.5.3 61 0x80000033 0x00B85D
192.168.7.0 192.168.5.3 61 0x80000033 0x0012F8
Router Link States (Area 2)
Link ID ADV Router Age Seq# Checksum Link count
192.168.5.3 192.168.5.3 1305 0x80000036 0x0050DD 1
192.168.6.4 192.168.6.4 1584 0x80000038 0x00190D 2
192.168.6.5 192.168.6.5 1743 0x80000039 0x005CBA 2
192.168.7.6 192.168.7.6 78 0x80000035 0x00B6DC 2
Net Link States (Area 2)
Link ID ADV Router Age Seq# Checksum
192.168.5.3 192.168.5.3 1307 0x80000034 0x001CAA
192.168.6.6 192.168.7.6 1332 0x80000034 0x0003B5
Summary Net Link States (Area 2)
Link ID ADV Router Age Seq# Checksum
192.168.1.0 192.168.5.3 63 0x80000033 0x009014
192.168.2.0 192.168.5.3 63 0x80000033 0x00218C
192.168.3.0 192.168.5.3 63 0x80000033 0x009359
192.168.4.0 192.168.5.3 63 0x80000034 0x0068B8
Puoi vedere che i router disponibili nell’area 0 e nell’area 2 sono mostrati insieme ai link conosciuti nell’area. ADV Router sta per router pubblicitario e il campo mostra l’ID router del router di origine per ogni collegamento. I collegamenti tra aree verranno visualizzati come provenienti dall’ABR.
Utilizzando debug ip ospf packet per verificare e risolvere i problemi OSPF
Come EIGRP, i pacchetti OSPF possono essere visti entrare e uscire da un router. Il comando per vedere i pacchetti è debug ip ospf packet. Idealmente in una rete stabile vedrai solo i pacchetti hello come mostrato di seguito nell’output di RouterC:
OSPF: rcv. v:2 t:1 l:52 rid:192.168.6.4
aid:0.0.0.2 chk:E35 aut:0 auk: from FastEthernet0/1
RouterC#
OSPF: rcv. v:2 t:1 l:52 rid:192.168.6.5
aid:0.0.0.2 chk:E35 aut:0 auk: from FastEthernet0/1
RouterC#
OSPF: rcv. v:2 t:1 l:48 rid:192.168.3.2
aid:0.0.0.0 chk:6344 aut:0 auk: from Serial0/0
RouterC#
OSPF: rcv. v:2 t:1 l:52 rid:192.168.6.4
aid:0.0.0.2 chk:E35 aut:0 auk: from FastEthernet0/1
RouterC#
OSPF: rcv. v:2 t:1 l:52 rid:192.168.6.5
aid:0.0.0.2 chk:E35 aut:0 auk: from FastEthernet0/1
RouterC#
OSPF: rcv. v:2 t:1 l:48 rid:192.168.3.2
aid:0.0.0.0 chk:6344 aut:0 auk: from Serial0/0
L’output sopra mostra i pacchetti hello ricevuti dai tre vicini su RouterC.
Utilizzo di debug ip ospf hello per verificare e risolvere i problemi OSPF
Mentre il comando debug ip ospf packet mostra tutti i pacchetti, il comando show ip ospf hello può essere utilizzato per esaminare specificamente i messaggi hello inviati e ricevuti su un router. Questo può essere utile per risolvere i problemi di vicinato e adiacenza. L’output di RouterC è mostrato di seguito:
RouterC#
OSPF: Send hello to 224.0.0.5 area 0 on Serial0/0 from 192.168.3.3
OSPF: Send hello to 224.0.0.5 area 0 on FastEthernet0/0 from 192.168.4.3
OSPF: Send hello to 224.0.0.5 area 2 on FastEthernet0/1 from 192.168.5.3
OSPF: Rcv hello from 192.168.6.5 area 2 from FastEthernet0/1 192.168.5.5
OSPF: End of hello processing
OSPF: Rcv hello from 192.168.3.2 area 0 from Serial0/0 192.168.3.2
OSPF: End of hello processing
RouterC#
OSPF: Rcv hello from 192.168.6.4 area 2 from FastEthernet0/1 192.168.5.4
OSPF: End of hello processing
RouterC#
OSPF: Send hello to 224.0.0.5 area 0 on Serial0/0 from 192.168.3.3
OSPF: Send hello to 224.0.0.5 area 0 on FastEthernet0/0 from 192.168.4.3
RouterC#
OSPF: Rcv hello from 192.168.3.2 area 0 from Serial0/0 192.168.3.2
OSPF: End of hello processing
OSPF: Send hello to 224.0.0.5 area 2 on FastEthernet0/1 from 192.168.5.3
OSPF: Rcv hello from 192.168.6.5 area 2 from FastEthernet0/1 192.168.5.5
OSPF: End of hello processing
RouterC#
OSPF: Rcv hello from 192.168.6.4 area 2 from FastEthernet0/1 192.168.5.4
OSPF: End of hello processing
Nell’output sopra puoi vedere che RouterC sta inviando pacchetti hello da tutte le sue interfacce e sta ricevendo pacchetti hello da tutti i vicini. Se c’è un problema con i pacchetti hello come una mancata corrispondenza dell’intervallo, il debug mostrerà quell’errore.
Utilizzo di debug ip ospf adj per verificare e risolvere i problemi di OSPF
Come accennato in precedenza, la formazione di adiacenza è la parte più importante del funzionamento di OSPF e la maggior parte dei problemi si verificano in quella fase. L’output di debug ip ospf adj aiuta a identificare i problemi relativi a un’adiacenza. Poiché non ci sono eventi correlati all’adiacenza in una rete stabile, ho cancellato il processo ospf su RouterB per generare il seguente output su RouterC:
RouterC #
OSPF: Rcv LS UPD da 192.168.3.2 su Serial0 / 0 lunghezza 76 LSA count 1
OSPF: Rcv LS UPD da 192.168.3.2 su Serial0 / 0 lunghezza 84 LSA count 2
OSPF: Impossibile vedere noi stessi in ciao da 192.168.3.2 in poi Serial0 / 0, stato INIT
OSPF: Comunicazione bidirezionale a 192.168.3.2 su Serial0 / 0, stato 2WAY
OSPF: Invia DBD a 192.168.3.2 su Serial0 / 0 seq 0x685 opt 0x52 flag 0x7 len 32
OSPF: Rcv DBD da 192.168.3.2 su Serial0 / 0 seq 0x23C7 opt 0x52 flag 0x7 len 32 mtu 1500 stato EXSTART
OSPF: Primo DBD e non siamo SLAVE
OSPF: Rcv DBD da 192.168.3.2 su Serial0 / 0 seq 0x685 opt 0x52 flag 0x0 len 32 mtu 1500 stato EXSTART
OSPF : Negoziazione NBR conclusa. Siamo il MASTER
OSPF: Invia DBD a 192.168.3.2 su Serial0 / 0 seq 0x686 opt 0x52 flag 0x3 len 112
OSPF: Rcv DBD da 192.168.3.2 su Serial0 / 0 seq 0x686 opt 0x52 flag 0x0 len 32 mtu 1500 stato SCAMBIO
OSPF: Invia DBD a 192.168 .3.2 su Serial0 / 0 seq 0x687 opt 0x52 flag 0x1 len 32
OSPF: Rcv LS REQ da 192.168.3.2 su Serial0 / 0 lunghezza 72 LSA count 4
OSPF:
RouterC # Invia UPD a 192.168.3.2 su Serial0 / 0 lunghezza 148 LSA count 4
OSPF: Rcv DBD da 192.168.3.2 su Serial0 / 0 seq 0x687 opt 0x52 flag 0x0 len 32 mtu 1500 state EXCHANGE
OSPF: Exchange Done with 192.168.3.2 on Serial0 / 0
OSPF: Synchronized with 192.168.3.2 on Serial0 / 0, state FULL
OSPF: Rcv LS UPD from 192.168.3.2 on Serial0 / 0 lunghezza 76 LSA count 1
RouterC #
RouterC #
OSPF: Rcv LS UPD da 192.168.3.2 su Serial0 / 0 lunghezza 56 LSA count 1
OSPF: Invia UPD a 192.168.3.2 su Serial0 / 0 lunghezza 32 LSA count 1
OSPF: Rcv LS UPD da 192.168.3.2 su Serial0 / 0 lunghezza 56 LSA count 1
OSPF: Invia UPD a 192.168.3.2 su Serial0 / 0 lunghezza 32 LSA count 1
OSPF: Rcv LS UPD da 192.168.3.2 su Serial0 / 0 lunghezza 76 LSA count 1
OSPF: Invia UPD a 192.168.3.2 su Serial0 / 0 lunghezza 52 LSA count 1
RouterC #
OSPF: Rcv LS UPD da 192.168.3.2 su Serial0 / 0 lunghezza 84 LSA count 2
OSPF: Invia UPD a 192.168.3.2 su Serial0 / 0 lunghezza 60 LSA count 2
OSPF: Rcv LS UPD da 192.168.3.2 su Serial0 / 0 lunghezza 76 Conteggio LSA 1
OSPF: Rcv LS UPD da 192.168.3.2 su Serial0 / 0 lunghezza 56 LSA conteggio 1
OSPF: Rcv LS UPD da 192.168.3.2 su Serial0 / 0 lunghezza 56 LSA conteggio 1
L’output sopra mostra la transizione dell’adiacenza attraverso vari stadi: 2WAY, EXSTART, EXCHANGE e infine FULL. Sebbene questi stati siano fuori portata di
CNA, l’output ti dà un’idea di come si forma un’adiacenza. Nello stato EXCHANGE, il database viene sincronizzato e quindi viene raggiunto lo stato FULL. Eventuali problemi durante uno di questi stati verranno visualizzati in questo debug.