Overview

The more we understand the technology the easier it is to find the cause of the issue and fix it. While this lesson will review items from previous OSPFv3 lessons, you may want to refer to previous lessons to strengthen your understanding of the protocol.

This lesson is also meant to be a reference if you do have some troubleshooting to do. It will help you understand what order to troubleshoot items and how to troubleshoot for specific items.

Also included are some Pro Tips and best practices to help you quickly identify and correct common troubleshooting issues.

Troubleshooting

Let's use the topology from the Basic OSPFv3 Configuration and Verification lesson:

Basic OSPFv3 Configuration Topology
Basic OSPFv3 Configuration Topology

FYI: If you would like to save time with your own lab, the configuration for the above topology can be copy and pasted from the Basic OSPFv3 Configuration and Verification lesson.

Neighbor and Adjacency

Before routers can reach the FULL adjacency state and thus share OSPFv3 information, they must first become neighbors and then form an adjacency.

If there is an OSPFv3 issue. It usually makes sense to start here.

As covered in the OSPFv3 Neighborship and Adjacency lesson, there are 7 neighbor/adjacency states.

In this lesson, we’ll include the No State. No State isn’t actually a neighbor/adjacency state. It's the lack of a state – the failure to begin forming the neighbor process.

The States (including the No State) are:

  1. No State
  2. Down
  3. Init/Attempt
  4. 2-Way
  5. Exstart
  6. Exchange
  7. Loading
  8. FULL

States 1-3 are for forming a neighbor.

After the neighborship is formed, the OSPFv3 routers will attempt to go through the adjacency states (States 4-7) until a FULL adjacency is reached. Then, routing information and updates can be shared.

FYI: In P2P networks, after receiving a Hello packet the router will immediately reach the 2-Way state and then proceed with the adjacency states (States 4-7)

The show ospfv3 neighbor command reveals the State of a router’s neighbor (or desired neighbor):

R-2#show ospfv3 neighbor 

          OSPFv3 6 address-family ipv6 (router-id 2.2.2.2)

Neighbor ID     Pri   State           Dead Time   Interface ID    Interface
3.3.3.3           1   FULL/DR         00:00:34    2               GigabitEthernet0/1
1.1.1.1           1   FULL/BDR        00:00:35    2               GigabitEthernet0/0

Here we have a lot of useful information, including that R-2 has a FULL adjacency with both of its neighbors. This is ideal. When a router is in the FULL State with a neighbor, both routers have already completely exchanged their Link State Database (LSDB) information and can share future OSPFv3 routing information and OSPFv3 updates.

Next, we'll discuss each State, including having a lack of State) as it relates to troubleshooting.

0 No State

If the show ipv6 ospf neighbor command doesn’t have a state for a desired neighbor it means that the router hasn’t received any valid HELLO packets from the neighbor.

In this case, begin by checking if the line protocol is up with the show ipv6 interface brief command.

R-2#show ipv6 interface brief 
GigabitEthernet0/0     [up/up]
    FE80::E5E:FAFF:FE0A:C00
    2001:12::2
GigabitEthernet0/1     [up/up]
    FE80::E5E:FAFF:FE0A:C01
    2001:23::2
GigabitEthernet0/2     [administratively down/down]
    unassigned
GigabitEthernet0/3     [administratively down/down]
    unassigned
Loopback26             [up/up]
    FE80::E5E:FAFF:FE0A:C00
    2001:2::2

All of the interfaces are in the up/up state so things look good here.

Next let's check IP connectivity with the ping and/or traceroute command. Pings are performed faster than traceroute. Try to ping first. If the ping fails, traceroute can be useful to isolate where the issue is.

R-2#ping 2001:23::3
Sending 5, 100-byte ICMP Echos to 2001:23::3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/7 ms

ACL Blocks OSPFv3 Multicast Address(es)

To enhance network security, it can be a good idea to restrict any and all unnecessary traffic.

If we're configuring OSPFv3 on devices that aren't already using it, there could be an ACL already in place that blocks OSPFv3's multicast addresses (FF02::5 and FF02::6).

To check, simply ping the ipv6 OSPFv3 multicast addresses:

R-2#ping FF02::5      
Output Interface: GigabitEthernet0/1
Sending 5, 100-byte ICMP Echos to FF02::5, timeout is 2 seconds:
Packet sent with a source address of FE80::E5E:FAFF:FE0A:C01%GigabitEthernet0/1

Reply to request 0 received from FE80::E5E:FAFF:FEE6:BA00, 1 ms
Reply to request 1 received from FE80::E5E:FAFF:FEE6:BA00, 1 ms
Reply to request 2 received from FE80::E5E:FAFF:FEE6:BA00, 1 ms
Reply to request 3 received from FE80::E5E:FAFF:FEE6:BA00, 1 ms
Reply to request 4 received from FE80::E5E:FAFF:FEE6:BA00, 1 ms
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
5 multicast replies and 0 errors.

R-2#ping FF02::6      
Output Interface: GigabitEthernet0/1
Sending 5, 100-byte ICMP Echos to FF02::6, timeout is 2 seconds:
Packet sent with a source address of FE80::E5E:FAFF:FE0A:C01%GigabitEthernet0/1

Reply to request 0 received from FE80::E5E:FAFF:FEE6:BA00, 2 ms
Reply to request 1 received from FE80::E5E:FAFF:FEE6:BA00, 1 ms
Reply to request 2 received from FE80::E5E:FAFF:FEE6:BA00, 1 ms
Reply to request 3 received from FE80::E5E:FAFF:FEE6:BA00, 1 ms
Reply to request 4 received from FE80::E5E:FAFF:FEE6:BA00, 1 ms
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/2 ms
5 multicast replies and 0 errors.

Passive-Interface Default

OSPFv3 passive interfaces are used on interfaces where we want to advertise the interface via OSPFv3, but do not want to form neighbor relationships or send send updates out that interface.

When would we want to enable Passive Interface by default?

To enhance security, it can be useful on routers at the edge of our network that could connect outside of our network or routers at the access layer that could point to LAN segments.

Enabling Passive Interface by default prevents mistakes from:

  • An administrator enables an additional interface for OSPFv3, but forgets to enable the Passive Interface at the interface level.
  • An administrator doesn't follow the best practice of enabling Passive Interface before enabling OSPFv3 on that same interface.

In such cases it makes sense to issue the passive-interface default command under the OSPFv3 process. For interfaces where a passive-interface is not desired, Passive Interface can be disabled per interface.

R-2#show ospfv3 neighbor 
R-2#

Nothing.

Next let's check to see if OSPFv3 has been enabled on the desired interfaces:

R-2#show ospfv3 interface brief 
Interface    PID   Area            AF         Cost  State Nbrs F/C
Lo26         6     0               ipv6       1     LOOP  0/0
Gi0/1        6     0               ipv6       1     DR    0/0
Gi0/0        6     1               ipv6       1     DR    0/0

OSPFv3 has been enabled with the correct Process ID (PID) and they are in the correct areas. However, no neighbors have been formed.

The show ospfv3 interface command reveals a lot of information:

R-2#sh ospfv3 int     
Loopback26 is up, line protocol is up 
  Link Local Address FE80::E5E:FAFF:FE0A:C00, Interface ID 9
  Area 0, Process ID 6, Instance ID 0, Router ID 2.2.2.2
  Network Type LOOPBACK, Cost: 1
  Loopback interface is treated as a stub Host
GigabitEthernet0/1 is up, line protocol is up 
  Link Local Address FE80::E5E:FAFF:FE0A:C01, Interface ID 3
  Area 0, Process ID 6, Instance ID 0, Router ID 2.2.2.2
  Network Type BROADCAST, Cost: 1
  Transmit Delay is 1 sec, State DR, Priority 1
  Designated Router (ID) 2.2.2.2, local address FE80::E5E:FAFF:FE0A:C01
  No backup designated router on this network
  Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
    No Hellos (Passive interface) 
  Graceful restart helper support enabled
  Index 1/2/3, flood queue length 0
  Next 0x0(0)/0x0(0)/0x0(0)
  Last flood scan length is 5, maximum is 5
  Last flood scan time is 0 msec, maximum is 0 msec
  Neighbor Count is 0, Adjacent neighbor count is 0 
  Suppress hello for 0 neighbor(s)
GigabitEthernet0/0 is up, line protocol is up 
  Link Local Address FE80::E5E:FAFF:FE0A:C00, Interface ID 2
  Area 1, Process ID 6, Instance ID 0, Router ID 2.2.2.2
  Network Type BROADCAST, Cost: 1
  Transmit Delay is 1 sec, State DR, Priority 1
  Designated Router (ID) 2.2.2.2, local address FE80::E5E:FAFF:FE0A:C00
  No backup designated router on this network
  Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
    No Hellos (Passive interface) 
  Graceful restart helper support enabled
  Index 1/1/2, flood queue length 0
  Next 0x0(0)/0x0(0)/0x0(0)
  Last flood scan length is 0, maximum is 9
  Last flood scan time is 0 msec, maximum is 0 msec
  Neighbor Count is 0, Adjacent neighbor count is 0 
  Suppress hello for 0 neighbor(s)

For physical interfaces Gi0/1 and Gi0/0 we can see that there are No Hellos due to Passive Interface.

Let's see how Passive Interface was configured:

R-2#sh run | sec ospf     
 ipv6 ospf 6 area 0
 ipv6 ospf 6 area 1
 ipv6 ospf 6 area 0
ipv6 router ospf 6
 router-id 2.2.2.2
 passive-interface default

Here we can see that the passive-interface default command was issued under the routing process.

There are two ways to resolve this issue:

  1. Remove the passive-interface default command was issued under the routing process.
  2. Disable the Passive Interface per interface.

Let's assume for this exercise that the passive-interface default is required and we're to disable Passive Interface per interface:

R-2(config)#ipv6 router ospf 6
R-2(config-rtr)#no passive-interface g0/0
*Oct 19 11:09:40.608: %OSPFv3-5-ADJCHG: Process 6, Nbr 1.1.1.1 on GigabitEthernet0/0 from LOADING to FULL, Loading Done
R-2(config-rtr)#no passive-interface g0/1
*Oct 19 11:09:48.083: %OSPFv3-5-ADJCHG: Process 6, Nbr 3.3.3.3 on GigabitEthernet0/1 from LOADING to FULL, Loading Done

Look at this. G0/0 achieved FULL adjacency before I even had a chance to disable Passive Interface on g0/1.

HELLO Packet Parameters

The following HELLO packet parameters must match on both sides of the link:

  • Interface's OSPFv3 area number - show ospfv3 interface [interface] command (i.e. show ospfv3 interface Gi0/0)
  • OSPFv3 area type (i.e. Stub or NSSA) - show ospfv3 command
  • Subnet and subnet mask - show interface command
  • OSPF HELLO and Dead timer values - show ospfv3 interface [interface] or show ipv6 ospf interface [interface] command

Duplicate Router ID (RID)

If there is a duplicate router ID, the router will generate syslog messages to identify which routers have the same RID.

1. Down

Neighbors can be in the down state after establishing a neighborship, and then the Dead timer expires. FYI: The Dead timer expires if a valid HELLO packet isn't received at the specified Dead timer interval.

The router could either receive a HELLO packet and begin going through the neighbor/adjacency states again, or if enough time passes the neighbor entry will get deleted from the neighbor table.

If a neighborship was manually configured with the neighbor command (This is typically done on P2P or P2Multipoint links) the router is automatically injected into the neighbor table. If a HELLO packet was never received or the Dead timer expired, the manually configured neighbor would be listed in the neighbor table in the DOWN state.

The network type is displayed with the show ospfv3 interface command:

R-2#show ospfv3 interface g0/0
GigabitEthernet0/0 is up, line protocol is up 
  Link Local Address FE80::E5E:FAFF:FE0A:C00, Interface ID 2
  Area 1, Process ID 6, Instance ID 0, Router ID 2.2.2.2
  Network Type BROADCAST, Cost: 1
  Transmit Delay is 1 sec, State BDR, Priority 1
  Designated Router (ID) 1.1.1.1, local address FE80::E5E:FAFF:FEDD:2400
  Backup Designated router (ID) 2.2.2.2, local address FE80::E5E:FAFF:FE0A:C00
  Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
    Hello due in 00:00:02
  Graceful restart helper support enabled
  Index 1/1/2, flood queue length 0
  Next 0x0(0)/0x0(0)/0x0(0)
  Last flood scan length is 3, maximum is 9
  Last flood scan time is 0 msec, maximum is 0 msec
  Neighbor Count is 1, Adjacent neighbor count is 1 
    Adjacent with neighbor 1.1.1.1  (Designated Router)
  Suppress hello for 0 neighbor(s)

If the Network Type isn't the issue, perform the same checks listed above for the No State.

2. Init State

A router stuck in the Init state has received a HELLO packet from the neighbor, but the router has not received an acknowledgment that the potential neighbor has received its Hello packet.

Stuck in Init State
Stuck in Init State

The router will know that the potential neighbor has received its HELLO packet when it receives a packet with its own Router ID (RID) in it. Then, the router will know that two-way communication has been established and will move into the Two-Way State.

Init State Unstuck
Init State Unstuck

In the diagram above, R-1 sends R-2 a HELLO packet that includes its own RID.

R-2 then acknowledges to R-1 that it has learned R-1's RID from its HELLO packet by sending R-1 a HELLO packet with R-1's RID.

The Init State is now complete.

3. Two-Way State

As mentioned above, the two-way state is reached when the routers have exchanged OSPFv3 HELLO packets. (It can also be reached when a Database Descriptor (DBD) packet from a neighbor is received.)

If a router isn’t elected a Designated Router (DR) or a Backup Designated Router (BDR) the router will stay in the 2-Way state. This is normal and the router will send / receive OSPFv3 information. In this case, the show ospfv3 neighbor command will show the neighbor as 2WAY/DROTHER (Designated Router Other).

4. Exstart or Exchange State

In this state, the routers exchange Database Descriptor (DBD) packets. Being stuck in this state could be due to a Maximum Transmission Unit (MTU) mismatch. To check, see the output of the show interface [interface] command on both sides of the link.

R-2#show interfaces g0/0
GigabitEthernet0/0 is up, line protocol is up 
  Hardware is iGbE, address is 0c5e.fa0a.0c00 (bia 0c5e.fa0a.0c00)
  MTU 1500 bytes, BW 1000000 Kbit/sec, DLY 10 usec

FYI: Issuing the ospfv3 mtu-ignore command in interface configuration mode will prevent the MTU check during neighbor formation.

5. Loading State

Being stuck here could be due to corrupt LSAs due to device malfunction. If this happens you may need support for the device itself.

6. FULL

This is the final state where OSPFv3 routers have already exchanged their Link State Databases (LSDBs).

Failure to reach a destination listed in the routing table from OSPFv3 while in the FULL state could be due to an Access Control List (ACL) blocking routed traffic to, or from, devices.

OSPFv3 Configuration Modes

Classic Mode

OSPFv3 operated in Classic Mode if OSPFv3 is running IPv6 only.

Everything covered in this lesson that has been covered so far has been done in Classic Mode.

Address Family Mode

It's wise to use Address Family Mode as a way to run Dual Stack.

Troubleshooting in Address Family Mode is similar to Classic Mode.

With Address Families is to understand how to configure and verify:

  • ipv4 and ipv6 together
  • ipv4 only
  • ipv6 only

It's also important to understand that that ipv4 and ipv6 use separate routing tables.

To gain a better understanding of troubleshooting as it pertains to Address Families please consider reviewing the Address Family lesson!

Quick Reference Table

The below table includes common verification / troubleshooting commands and a brief description of their output.

To continue reading, please login or become a member for full access...