Category Archives: CCNP – OSPFv3

IPv6 Redistribution, Stub and Total Stub configuration, and some gotchas to watch for on exam day!

OSPFv3_No_NBMA

I was going to bring R1 in on this with a Point-to-Point Serial cable, to make the Topology look a little less pathetic than the usual all out routers everywhere model, however for these topics I only need these 3 – Though I may need to for further IPv6 studies.

So far I’ve confirmed the frame switch does not understand IPv6 at all, and R5 at very least has a bug in its code regarding IPv6 and OSPF, not sure yet about other protocols…

Redistribution with IPv6 is very similar to IPv4 in the way that you must go into the router configuration mode “ipv6 router ospf #” from global config, and actually I’ve already added some loopbacks on R2 for this demonstration:

R2#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R2(config)#int lo14
R2(config-if)#ipv6 add 2014::1/64
R2(config-if)#int lo15
R2(config-if)#ipv6 add 2015::1/64
R2(config-if)#int lo16
R2(config-if)#ipv6 add 2016::1/64
R2(config-if)#
R2(config-if)#
*Mar  1 22:44:19.449: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback14, changed state to up
*Mar  1 22:44:19.589: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback15, changed state to up
*Mar  1 22:44:19.625: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback16, changed state to up
R2(config-if)#

Typed them so fast the router could hardly keep up 🙂

So now I will drop into router config, and I’ll display the ? output as I go along:

R2(config)#ipv6 router ospf 1
R2(config-rtr)#redistribute ?
  bgp        Border Gateway Protocol (BGP)
  connected  Connected Routes
  eigrp      Enhanced Interior Gateway Routing Protocol (EIGRP)
  isis       ISO IS-IS
  ospf       Open Shortest Path First (OSPF)
  rip        IPv6 Routing Information Protocol (RIPv6)
  static     Static Routes

R2(config-rtr)#redistribute connected ?
  metric       Metric for redistributed routes
  metric-type  OSPF/IS-IS exterior metric type for redistributed routes
  route-map    Route map reference
  tag          Set tag for routes redistributed into OSPF
  <cr>

R2(config-rtr)#redistribute connected
R2(config-rtr)#

Oh boy I see that route-map statement as part of the command and I just want to start redistributing everywhere, however I stuck to basics just to demonstrate the route table, if I think up a scenario where it’d be fun to use route-maps in IPv6 I will definitely be labbing it.

It’s so hard to put IPv6 and fun in the same sentence, I can’t believe I just did it, one step closer to true Cisco enlightenment!

All joking aside, there was one field missing there, and that would be “subnets” on the end of that redistribute command. That is because subnets is not necessary in OSPFv3 vs OSPFv2, so that will be a good detail to remember come exam day.

So let us see what this all looks like way over to R4 in it’s OSPF route table:

R4#sh ipv6 route ospf
IPv6 Routing Table – default – 10 entries
Codes: C – Connected, L – Local, S – Static, U – Per-user Static route
       B – BGP, HA – Home Agent, MR – Mobile Router, R – RIP
       I1 – ISIS L1, I2 – ISIS L2, IA – ISIS interarea, IS – ISIS summary
       D – EIGRP, EX – EIGRP external, NM – NEMO, ND – Neighbor Discovery
       l – LISP
       O – OSPF Intra, OI – OSPF Inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2
       ON1 – OSPF NSSA ext 1, ON2 – OSPF NSSA ext 2
OE2 2014::/64 [110/20]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
OE2 2015::/64 [110/20]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
OE2 2016::/64 [110/20]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
OI  2022::1/128 [110/2]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
OI  2023::/64 [110/2]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
OI  2033::1/128 [110/1]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
R4#

I have to admit, that was less spectacular or different than I expected, it shows the O E2 routes for the Redistributed routes just like in OSPFv2.

When you’re taking the CCNA (at least in my day, walked uphill both ways, etc), IPv6 was just a memorization game, it was just kind of points that were up in the air on exam day if you couldn’t remember which address type was which.

As demonstrated above with Redistribution it is almost completely similar in configuration, and I will now show you that creating a stub / total stub network is as well!

The funny thing is that R3 is the gateway right now for both R2 and R4 (which is why I thought about bringing R1 in), but we are all adults here and can handle imagining that R2 leads to other routers.

So I will first create the basic stub Area on 34:

R4(config)#ipv6 router ospf 1
R4(config-rtr)#area 34 stub ?
no-summary  Do not send summary LSA into stub area
<cr>

R4(config-rtr)#area 34 stub
R4(config-rtr)#
*Mar  7 00:55:50.455: %OSPFv3-5-ADJCHG: Process 1, Nbr 3.3.3.3 on FastEthernet0/1 from FULL to DOWN, Neighbor Down: Adjacency forced to reset
R4(config-rtr)#do sh ipv6 ospf nei

Neighbor ID     Pri   State           Dead Time   Interface ID    Interface
3.3.3.3           1   DOWN/DROTHER       –        5               FastEthernet0/1
R4(config-rtr)#

So far, so good? I wanted to show the neighbor relationship output in case you see this on your exam, this means you haven’t let your stub neighbor know that you are being stubborn all by yourself – So off to R3 to let it know they will both be stubs:

IMPORTANT BEHAVIOR TO NOTE FOR EXAM DAY, TAKE NOTE!! :

R3(config)#do sh ipv6 ospf nei

Neighbor ID     Pri   State           Dead Time   Interface ID    Interface
2.2.2.2           1   FULL/BDR        00:00:38    4               FastEthernet0/0
R3(config)#
ASR#4
[Resuming connection 4 to r4 … ]

R4(config-rtr)#do sh ipv6 ospf nei

Neighbor ID     Pri   State           Dead Time   Interface ID    Interface
3.3.3.3           1   DOWN/DROTHER       –        5               FastEthernet0/1
R4(config-rtr)#

On R3, its just no longer has an adjacency with R4 so it doesn’t show it in the neighbor table, however on R4 it is showing DOWN/DROTHER with a – through the Dead Time. I am not sure if I saw that in IPv4, so this will also be something to watch for on exam day, if its state is DOWN as the beginning portion with no dead timer its probably a not quite finished stub configuration (or so you shall hope in the exam room).

Anyways, back to stubbing R3:

R3(config)#ipv6 router ospf 1
R3(config-rtr)#area 34 stub
R3(config-rtr)#
*Mar  2 07:47:58.558: %OSPFv3-5-ADJCHG: Process 1, Nbr 4.4.4.4 on FastEthernet0/1 from LOADING to FULL, Loading Done
R3(config-rtr)#do sh ipv6 ospf nei

Neighbor ID     Pri   State           Dead Time   Interface ID    Interface
2.2.2.2           1   FULL/BDR        00:00:39    4               FastEthernet0/0
4.4.4.4           1   FULL/DR         00:00:36    4               FastEthernet0/1
R3(config-rtr)#

And there we have it back in the neighbor table. Really watch for that on exam day, that is a very tricky behavior that I would write a question about to test how much someone has been labbing their *ss off to prepare for this brutal exam!

So what does R4 look like now in its route table here:

R4(config)#do sh ipv6 route
IPv6 Routing Table – default – 8 entries
Codes: C – Connected, L – Local, S – Static, U – Per-user Static route
       B – BGP, HA – Home Agent, MR – Mobile Router, R – RIP
       I1 – ISIS L1, I2 – ISIS L2, IA – ISIS interarea, IS – ISIS summary
       D – EIGRP, EX – EIGRP external, NM – NEMO, ND – Neighbor Discovery
       l – LISP
       O – OSPF Intra, OI – OSPF Inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2
       ON1 – OSPF NSSA ext 1, ON2 – OSPF NSSA ext 2
OI  ::/0 [110/2]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
OI  2022::1/128 [110/2]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
OI  2023::/64 [110/2]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
OI  2033::1/128 [110/1]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
C   2034::/64 [0/0]
     via FastEthernet0/1, directly connected
L   2034::4/128 [0/0]
     via FastEthernet0/1, receive
LC  2044::1/128 [0/0]   <— LC, Interesting
     via Loopback4, receive
L   FF00::/8 [0/0]      <— What??
     via Null0, receive
R4(config)#

I wanted to show the whole route table to see what different things look like. Obviously our redistributed routes are outta here, however our Inter-Area (routes known in other area than its own) are still around.

I also wanted to show this sort of oddity, or two of them, LC and our built in route to Null0. I am not sure what made the router to designate its own Loopback with an L and C together, but that’s a bit odd to me, and FF00::/8 which with some googling is just a discard bucket built into IPv6 enabled interfaces.

So everything is fine and good (except for that stupid frame switch that I still haven’t gotten over), however we still have all these OSPFv3 Inter-Area routes still going to the same next hop which spells out one thing to us CCNP’s – IT’S TOTAL STUB TIME!!

So I’ll see if that is the same from OSPFv2, and see if I can just make the change on R3:

R3(config)#ipv6 router ospf 1
R3(config-rtr)#no area 34 stub
R3(config-rtr)#
*Mar  2 08:02:31.881: %OSPFv3-5-ADJCHG: Process 1, Nbr 4.4.4.4 on FastEthernet0/1 from FULL to DOWN, Neighbor Down: Adjacency forced to reset
R3(config-rtr)#area 34 stub no-summary
R3(config-rtr)#
*Mar  2 08:02:40.187: %OSPFv3-5-ADJCHG: Process 1, Nbr 4.4.4.4 on FastEthernet0/1 from DOWN to DOWN, Neighbor Down: Adjacency forced to reset
R3(config-rtr)#
*Mar  2 08:02:46.874: %OSPFv3-5-ADJCHG: Process 1, Nbr 4.4.4.4 on FastEthernet0/1 from LOADING to FULL, Loading Done
R3(config-rtr)#

And yes it does, so again, as with OSPFv2 on IPv4 you can just remove the stub command (best practice) and enter the same command with no-summary tacked onto the end. As seen the adjacency goes down, but reforms immediately.

 

Noooow lets see how R4’s route table is doing:

R4(config)#do sh ipv6 route ospf
IPv6 Routing Table – default – 5 entries
Codes: C – Connected, L – Local, S – Static, U – Per-user Static route
       B – BGP, HA – Home Agent, MR – Mobile Router, R – RIP
       I1 – ISIS L1, I2 – ISIS L2, IA – ISIS interarea, IS – ISIS summary
       D – EIGRP, EX – EIGRP external, NM – NEMO, ND – Neighbor Discovery
       l – LISP
       O – OSPF Intra, OI – OSPF Inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2
       ON1 – OSPF NSSA ext 1, ON2 – OSPF NSSA ext 2
OI  ::/0 [110/2]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
R4(config)#

And then, there was one. If I did not already mention this route type somewhere in the posts, this would be an IPv6 default route (meaning everything go thataway).

Now last time I had a little grief getting return pings and had to manipulate some static route redistribution to get pinging working, lets see how this goes:

R4(config)#do ping 2022::1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2022::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/4 ms
R4(config)#
ASR#2
[Resuming connection 2 to r2 … ]

R2(config-rtr)#do ping 2044::1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2044::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/4 ms
R2(config-rtr)#

Ok, nevermind everything I just said previous to these pings, cause that worked really as it should. Come to think of it I think it was stub area to stub area where I had to work some magic to get connectivity.

So if you take absolutely nothing else away from this post, it’s that the concepts from OSPFv2 are almost identical to OSPFv3, with some very slight differences.

One good verification command to check for stub area’s will be the same from OSPFv2, just with the ipv6 twist on it, for example:

R3#sh ipv6 ospf
 Routing Process “ospfv3 1” with ID 3.3.3.3
 It is an area border router
 SPF schedule delay 5 secs, Hold time between two SPFs 10 secs
 Minimum LSA interval 5 secs. Minimum LSA arrival 1 secs
 LSA group pacing timer 240 secs
 Interface flood pacing timer 33 msecs
 Retransmission pacing timer 66 msecs
 Number of external LSA 3. Checksum Sum 0x004335
 Number of areas in this router is 4. 3 normal 1 stub 0 nssa
 Reference bandwidth unit is 100 mbps
    Area BACKBONE(0)
        Number of interfaces in this area is 1
        SPF algorithm executed 9 times
        Number of LSA 10. Checksum Sum 0x04C947
        Number of DCbitless LSA 0
        Number of indication LSA 0
        Number of DoNotAge LSA 0
        Flood list length 0
    Area 3
        Number of interfaces in this area is 1
        SPF algorithm executed 6 times
        Number of LSA 7. Checksum Sum 0x041AA0
        Number of DCbitless LSA 0
        Number of indication LSA 0
        Number of DoNotAge LSA 0
        Flood list length 0
    Area 34
        Number of interfaces in this area is 1
        It is a stub area, no summary LSA in this area
          generates stub default route with cost 1
        SPF algorithm executed 12 times
        Number of LSA 8. Checksum Sum 0x02FDBB
        Number of DCbitless LSA 0
        Number of indication LSA 0
        Number of DoNotAge LSA 0
        Flood list length 0
  
R3#

It is really a wealth of information there, but for our purposes, I’ve highlighted where we can verify our stub areas. When I say it is just like v2, v3 for OSPF really is once you get over the addressing, and that itself takes time (I am still a bit blah about it honestly).

That is it for OSPFv3 for now, next on the plate is EIGRPv3 or whatever they call it using IPv6 (it’s probably not really called EIGRPv3 so I would not wr mem that to your brain).

Part 4: Found an IOS bug on R5, and found why IPv6 doesn’t work over my NBMA, so I won’t be able to lab it :(

ospfv3_multiarea_topology

I’m thinking it has to be something on that frame switch so we’ll dig into the guts of that, but I start off with R5 (not in this Topology in which you will see why), just to get SOMETHING going for R1. As you may not know from previous labs, R5 is attached to R1 via Ethernet, and usually hangs in topology above R2.

So I R5 loaded first so I immediately got into configuring and OSPFv3 Area 15, and not hardly into the configuration at all, I hit a bug in the IOS:

R5#sh ip int bri
Interface                  IP-Address      OK? Method Status                Protocol
FastEthernet0/0            unassigned      YES NVRAM  administratively down down
FastEthernet0/1            172.12.15.5     YES NVRAM  administratively down down
Serial0/0/0                unassigned      YES NVRAM  administratively down down
Serial0/0/1                unassigned      YES NVRAM  administratively down down
Loopback5                  5.5.5.5         YES NVRAM  up                    up
R5#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R5(config)#int lo5
R5(config-if)#no ip add
R5(config-if)#exit
R5(config)#ipv6 unicast-routing
R5(config)#ipv6 router ospf 1
% Failed to create routing protocol ospf  <-What????
R5(config)#ipv6 router ?
  eigrp  Enhanced Interior Gateway Routing Protocol (EIGRP)
  nemo   Network Mobility (NEMO)
  ospf   Open Shortest Path First (OSPF)
  rip    IPv6 Routing Information Protocol (RIPv6)

R5(config)#ipv6 router ospf ?
  <1-65535>  Process ID

R5(config)#ipv6 router ospf 1
% Failed to create routing protocol ospf
R5(config)#

That’s an excellent way to start off a lab 🙂 Yeah, so I am seriously giving this one last attempt, and then I will just have to take the point hits on the exam because this is the kind of material that is a study killer.

However, I’d like to turn this into a learning lesson, so far we have learned that R5 has IPv6 IOS bug issues so I will be keeping the 1800 series router completely out of IPv6 studies if possible.

So what we know, is that when I did add the frame map statements from the last lab, we got Active PVC’s to both peers, so Layer 2 is working. However, for some reason Layer 3 does not want to work, and I am thinking it had to do with something on the NBMA switch that perhaps was configured off camera before the lesson cause Chris Bryant enters about 4 commands and it just works like it should.

So my first thought, is the 2600 router serving as the NBMA switch which works perfectly for IPv4 routing needs some tweaks for IPv6 routing. Now I want to make as little change as possible, preferably just global (ipv6 unicast-routing) to kick it in the butt and get it routing, but I will also enable the interfaces if that doesn’t work.

So then I found the issue, on a 2620XM router (one of the higher end models (unfortunately) in my lab that is the frame switch for R1 / R2 / R3:

FRSW#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
FRSW(config)#ipv6 unicast-routing
                                 ^
% Invalid input detected at ‘^’ marker.

FRSW(config)#ipv6 ?
% Unrecognized command

It has no idea what in the world we are talking about IPv6, so when a packet of Hex jibberish shows up at the Frame-Switch it just goes HUH? So at least that solves the mystery of what was going on there.

So that will conclude IPv6 over NBMA, it’s been my Achilles heel that I was going to squash tonight to start progressing again through the week, and that really sucks it won’t work but I’ll just take in the theory on this one and keep moving forward to exam day.

Not sure what the next topic is on deck, but given I’m a bit under the weather it may be a slow start, but time to start pounding these topics out.

Part 3: Fixing the “ATTEMPT/DROTHER” issue, but still failing at the end

ospfv3_multiarea_topology

So through begging all over on Cisco support community and other tech forums, someone had pointed out that my running config appears to be missing the frame map statements, and I just facepalmed so hard I might have just smacked myself.

Once more, if you use templates that setup “base configs” like ip addressing and no shutting interfaces to get you started, remember when not using that template you must configure the whole ball of wax.

So I am not really sure what Frame Map statements look like in IPv6, lets take a look:

R1(config-if)#frame map ipv6 ?
  X:X:X:X::X  Protocol specific address

R1(config-if)#frame map ipv6 2001::2 ?
  <16-1007>  DLCI
  vc-bundle  vc-bundle

R1(config-if)#frame map ipv6 2001::2 122 ?
  broadcast            Broadcasts should be forwarded to this address
  cisco                Use CISCO Encapsulation
  ietf                 Use RFC1490/RFC2427 Encapsulation
  payload-compression  Use payload compression
  <cr>

R1(config-if)#frame map ipv6 2001::2 122
R1(config-if)#frame map ipv6 2001::3 123
R1(config-if)#
ASR>2
[Resuming connection 2 to r2 … ]

R2(config)#int s0/0
R2(config-if)#frame map ipv6 2001::1 221
R2(config-if)#frame map ipv6 2001::3 221
R2(config-if)#
ASR>3
[Resuming connection 3 to r3 … ]

R3(config)#
R3(config)#int s0/2
R3(config-if)#frame map ipv6 2001::1 321
R3(config-if)#frame map ipv6 2001::3 321
R3(config-if)#
ASR>1
[Resuming connection 1 to r1 … ]

R1(config-if)#do sh ip ospf nei

R1(config-if)#

I was taught that IPv6 does not use broadcasts, but I am wondering if in this case it needs the same configuration as regular old frame-relay. So after half my cinammon coffee cake and double shot mocha from Caribou (the best study tool ever), my adjacencies on R1 aren’t even trying to form.

So, I am going to remove the old statements, and throw broadcast on there like an IPv4 deployment to see what happens. It’s not like we can break it anymore, unless I throw these damn routers out the second story window, and do a jumping double fist slam down onto the Hub for being a stubborn pile 🙂

Anyways, lets put on some broadcast statements with frame relay to see what happens:

R1(config)#do clear ipv6 ospf proc
Reset ALL OSPF processes? [no]: yes
R1(config)#
*Mar  1 21:51:23.101: %OSPFv3-5-ADJCHG: Process 1, Nbr 0.0.0.0 on Serial0/0 from ATTEMPT to DOWN, Neighbor Down: Interface down or detached
*Mar  1 21:51:23.101: %OSPFv3-5-ADJCHG: Process 1, Nbr 0.0.0.0 on Serial0/0 from ATTEMPT to DOWN, Neighbor Down: Interface down or detached
R1(config)#do sh frame pvc

PVC Statistics for interface Serial0/0 (Frame Relay DTE)

              Active     Inactive      Deleted       Static
  Local          2            0            0            0
  Switched       0            0            0            0
  Unused         0            0            0            0

DLCI = 122, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE = Serial0/0

  input pkts 0             output pkts 2            in bytes 0
  out bytes 160            dropped pkts 0           in pkts dropped 0
  out pkts dropped 0                out bytes dropped 0
  in FECN pkts 0           in BECN pkts 0           out FECN pkts 0
  out BECN pkts 0          in DE pkts 0             out DE pkts 0
  out bcast pkts 2         out bcast bytes 160
  5 minute input rate 0 bits/sec, 0 packets/sec
  5 minute output rate 0 bits/sec, 0 packets/sec
  pvc create time 00:04:13, last time pvc status changed 00:04:13
 –More–
*Mar  1 21:53:23.102: %OSPFv3-5-ADJCHG: Process 1, Nbr 0.0.0.0 on Serial0/0 from ATTEMPT to DOWN, Neighbor Down: Dead timer expired
*Mar  1 21:53:23.102: %OSPFv3-5-ADJCHG: Process 1, Nbr 0.0.0.0 on Serial0/0 from ATTEMPT to DOWN, Neighbor Down: Dead timer expired

R1(config)#do show frame map
Serial0/0 (up): ipv6 2001::2 dlci 122(0x7A,0x1CA0), static,
              broadcast,
              CISCO, status defined, active
Serial0/0 (up): ipv6 2001::3 dlci 123(0x7B,0x1CB0), static,
              broadcast,
              CISCO, status defined, active
R1(config)#
R1(config)#do sh ipv6 ospf nei

Neighbor ID     Pri   State           Dead Time   Interface ID    Interface
N/A               0   ATTEMPT/DROTHER    –        0               Serial0/0
N/A               0   ATTEMPT/DROTHER    –        0               Serial0/0
R1(config)#

Ok, pardon my language, but this is really starting to piss me off why on Earth this not working. I did not trying clearing the OSPF proc before adding the broadcast statements, and IPv6 is supposed to be no broadcasts aloud club, so I’ll remove and replace once more as I originally did and clear all ospf proc on hub and spokes.

If this does not work, I am going to copy my running configs on all other routers, and R1 / R2 / R3 are getting bare bones configs with an IPv6 setup once more to see what the fudge is going on. This is actually starting to be more of a pain in the ass than a fun challenge to overcome, because I have barely learned IPv6, so I have no idea if the interfaces in my training vids are pre-configured in some special way. Though the fact that those PVC’s show broadcast, and that isn’t supposed to be how IPv6 gets down, I am really hoping this fixes the issue.

So here goes my last attempt before I call it a night, I was really hoping that would work, the fact it hasn’t yet is getting me quite irritated with the lack of knowledge in this particular area around the internet in general:

R1#clear ipv6 ospf proc
Reset ALL OSPF processes? [no]:
*Mar  1 22:10:25.542: %SYS-5-CONFIG_I: Configured from console by console
yes
R1#
*Mar  1 22:10:28.335: %OSPFv3-5-ADJCHG: Process 1, Nbr 0.0.0.0 on Serial0/0 from ATTEMPT to DOWN, Neighbor Down: Interface down or detached
*Mar  1 22:10:28.335: %OSPFv3-5-ADJCHG: Process 1, Nbr 0.0.0.0 on Serial0/0 from ATTEMPT to DOWN, Neighbor Down: Interface down or detached
R1#wr
Building configuration…
[OK]
R1#
*Mar  1 22:12:28.335: %OSPFv3-5-ADJCHG: Process 1, Nbr 0.0.0.0 on Serial0/0 from ATTEMPT to DOWN, Neighbor Down: Dead timer expired
*Mar  1 22:12:28.335: %OSPFv3-5-ADJCHG: Process 1, Nbr 0.0.0.0 on Serial0/0 from ATTEMPT to DOWN, Neighbor Down: Dead timer expired
R1#

No, no, no no no no NO NO NO!!! WTF???

Ok, I am going to “wr er” R1 / R2 / R3, and on the next lab I will only be configuring their serial interfaces as Area 0 in an OSPFv3 domain.

I feel smitten, but I just do not have the brain power to dig through forums and documentation, cause there is not a whole lot out there regarding ospfv3 and nbmas.

Part 1: Configuration of this new Topology in IPv6

ospfv3_multiarea_topology

We have a lot to accomplish, but first since I did a “wr er” like a nerd I have to reconfigure all the IP addresses again (as you see in the Topology I changed them to make them a bit more intuitive).

One thing I wanted to point out while configuring this whole lab (and it’s painful to configure and remember all the addressing and formatting), I got this output on the Ethernet segment after I took one of the interfaces out of the Area # they were neighbors in:

R2(config-if)#
*Mar  1 20:45:38.645: %OSPFv3-4-AREA_MISMATCH: Received packet with incorrect area from FE80::20F:23FF:FE09:B180, FastEthernet0/0, area 0.0.0.0, packet area 0.0.0.23
R2(config-if)#
*Mar  1 20:45:48.645: %OSPFv3-4-AREA_MISMATCH: Received packet with incorrect area from FE80::20F:23FF:FE09:B180, FastEthernet0/0, area 0.0.0.0, packet area 0.0.0.23

So if that is seen, you may just need to adjust that interfaces area to resolve.

Now, I’ve been at this believe it or not for about an hour troubleshooting an issue, that was simply resolved because an interface was shut down on R4, so I am going to just put a halt here as I am mentally fried.

A couple things I wanted to point out, first I’d like to post the entire “sh run” of R3:

R3#sh run
Building configuration…

*Mar  2 05:37:15.963: %SYS-5-CONFIG_I: Configured from console by console
Current configuration : 1329 bytes
!
version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname R3
!
boot-start-marker
boot-end-marker
!
enable secret 5 $1$QFdX$9tC33yHOlq4pSVjJcmMnd0
!
no aaa new-model
!
resource policy
!
no network-clock-participate slot 1
no network-clock-participate wic 0
ip cef
!
!
!
!
no ip domain lookup
ipv6 unicast-routing
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
controller T1 0/0
 framing sf
 linecode ami
!
controller T1 0/1
 framing sf
 linecode ami
!
!
!
!
!
!
interface Loopback3
 no ip address
 ipv6 address 2033::1/128
 ipv6 ospf 1 area 3
!
interface FastEthernet0/0
 no ip address
 duplex auto
 speed auto
 ipv6 address 2023::3/64
 ipv6 enable
 ipv6 ospf 1 area 0
!
interface FastEthernet0/1
 no ip address
 duplex auto
 speed auto
 ipv6 address 2034::3/64
 ipv6 enable
 ipv6 ospf 1 area 34
!
interface Serial0/2
 no ip address
 shutdown
 ipv6 address 2001::3/64
 ipv6 enable
 ipv6 ospf priority 0     <- Turning off OSPF Priority for NBMA requires ipv6 in command
 ipv6 ospf 1 area 123
!
interface Serial0/3
 no ip address
 shutdown
!
!
!
ip http server
no ip http secure-server
!
ipv6 router ospf 1
 router-id 3.3.3.3
 log-adjacency-changes
!
!
!
!
!
!
control-plane
!
!
!
!
!
!
!
!
!
!
!
line con 0
 exec-timeout 0 0
 logging synchronous
line aux 0
line vty 0 4
 password CCNP
 logging synchronous
 login
!
!
end

R3#

So it’s basically the same, but those IPv6 addresses can be absolute brain murder to work with and configure when your tired. The only way I actually caught my issue before I entirely gave up, was through “debug ipv6 ospf pack” and noticed I wasn’t getting any.

That led to a “sh ip int bri” just to check if stuff is Up/Down or Down/Down, and sure enough Fa0/1 was Administratively down, and of course after a length of troubleshooting the answer was that easy.

Anyways, check it out:

R4#ping 2022::1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2022::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 0/3/8 ms
R4#sh ipv6 ospf nei

Neighbor ID     Pri   State           Dead Time   Interface ID    Interface
3.3.3.3           1   FULL/BDR        00:00:30    5               FastEthernet0/1
R4#sh ipv6 route ospf
IPv6 Routing Table – default – 7 entries
Codes: C – Connected, L – Local, S – Static, U – Per-user Static route
       B – BGP, HA – Home Agent, MR – Mobile Router, R – RIP
       I1 – ISIS L1, I2 – ISIS L2, IA – ISIS interarea, IS – ISIS summary
       D – EIGRP, EX – EIGRP external, NM – NEMO, ND – Neighbor Discovery
       l – LISP
       O – OSPF Intra, OI – OSPF Inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2
       ON1 – OSPF NSSA ext 1, ON2 – OSPF NSSA ext 2
OI  2022::1/128 [110/2]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
OI  2023::/64 [110/2]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
OI  2033::1/128 [110/1]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
R4#

So I am able to ping across the world from R4 thus far, or the Area 34 / 0 world, I am not touching R1 tonight as I’d like to dig into Redistribution when I go there, however I’d like to see R3’s “sh ipv6 ospf” output which is surprisingly pretty little:

R3#sh ipv6 ospf
 Routing Process “ospfv3 1” with ID 3.3.3.3
 It is an area border router
 SPF schedule delay 5 secs, Hold time between two SPFs 10 secs
 Minimum LSA interval 5 secs. Minimum LSA arrival 1 secs
 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 areas in this router is 4. 4 normal 0 stub 0 nssa
 Reference bandwidth unit is 100 mbps
    Area BACKBONE(0)
        Number of interfaces in this area is 1
        SPF algorithm executed 5 times
        Number of LSA 10. Checksum Sum 0x058EAA
        Number of DCbitless LSA 0
        Number of indication LSA 0
        Number of DoNotAge LSA 0
        Flood list length 0
    Area 3
        Number of interfaces in this area is 1
        SPF algorithm executed 7 times
        Number of LSA 6. Checksum Sum 0x03BE1F
        Number of DCbitless LSA 0
        Number of indication LSA 0
        Number of DoNotAge LSA 0
        Flood list length 0
    Area 34
        Number of interfaces in this area is 1
        SPF algorithm executed 5 times
        Number of LSA 10. Checksum Sum 0x052BC0
        Number of DCbitless LSA 0
        Number of indication LSA 0
        Number of DoNotAge LSA 0
        Flood list length 0
    Area 123
        Number of interfaces in this area is 1
        SPF algorithm executed 2 times
        Number of LSA 6. Checksum Sum 0x03D444
        Number of DCbitless LSA 0
        Number of indication LSA 0
        Number of DoNotAge LSA 0
        Flood list length 0

R3#

So next lab is finishing off the config with a quick config on S0/0 on R1, then move into Redistribution of IPv6 addresses, WOOOOOOOO!!! 😀

OSPFv3 PtP networks, adding IPv6 addressing on interfaces, and more IPv6 info / configs in general (good stuff)

ospfv3_topology

So this video I am working on now is regarding point-to-point networks, which I didn’t think that if I were going from 2-3 with the SW1 between then it would be an “Ethernet segment” however R3 and R4 are directly connected via Fa0/1 so that would be a point-to-point so I may be re-covering the same configs already performed with different details.

Also, I wanted to add IP addresses identifying the networks, so as it grows I know which subnet is between which routers so to start I wanted to demonstrate how adding the address and the syntax of it:

First I verify that I have an IPv6 address at all on the interface:

R3#sh ipv6 int bri
FastEthernet0/0            [up/up]
FastEthernet0/1            [up/up]
    FE80::20F:23FF:FE09:B181
Serial0/2                  [up/up]
Serial0/3                  [administratively down/down]
Loopback3                  [up/up]

“sh ip int bri” will show Fa0/1 Up/Up, but it won’t show the IP without typing “sh ipv6 int bri” for the syntax (everything with ipv6 has v6 after ip in the commands!).

So then I had never applied an IPv6 address before, so I wanted to check out my options:
R3#conf t
R3(config)#int fa0/1
R3(config-if)#ipv6 add ?
  WORD                General prefix name
  X:X:X:X::X          IPv6 link-local address
  X:X:X:X::X/<0-128>  IPv6 prefix
  autoconfig          Obtain address using autoconfiguration

R3(config-if)#ipv6 add 2234::3 ?
  link-local  Use link-local address

R3(config-if)#ipv6 add 2234::3 link-local ?
  <cr>

R3(config-if)#ipv6 add 2234::3/64 ?
  anycast  Configure as an anycast
  eui-64   Use eui-64 interface identifier
  <cr>

R3(config-if)#ipv6 add 2234::3/64
R3(config-if)#

I’ve highlighted all of my commands in red as its easy to get lost in this syntax, but I wanted to make it crystal clear the options you have. You can either put in your address and make it link-local, or you can do XXXX::/XX which I thought was really odd to have the mask smashed right against the address like that for CLI syntax, but that is how it is apparently.

Also you can see it asks once I use that /64 mask (as I’m not entirely sure how to separate subnets yet so I’m just slicing the address space in half for hosts / subnets), and it gives you options to use an EUI64 interface ID or continue on to configure Anycast.

I don’t really know what I’m doing, so I just went with /64, and interestingly it did not drop the adjacency to R4:

R3(config-if)#ipv6 add 2234::3/64
R3(config-if)#do sh ipv6 ospf nei

Neighbor ID     Pri   State           Dead Time   Interface ID    Interface
4.4.4.4           1   FULL/DR         00:00:31    4               FastEthernet0/1
R3(config-if)#

So I am going to go over to configure some loopbacks on both routers quick, and change R4’s Fa0/1 interface IPv6 address quick:

R3(config)#int lo33
R3(config-if)#
*Mar  2 05:01:36.937: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback33, changed state to up
R3(config-if)#ipv6 add 2233::1/128
R3(config-if)#ipv6 ospf 1 area 33 ?
  instance  Set the OSPF instance
  <cr>

R3(config-if)#ipv6 ospf 1 area 33
R3(config-if)#
ASR#4
[Resuming connection 4 to r4 … ]

R4#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R4(config)#int fa0/1
R4(config-if)#ipv6 add 2234::4/64
R4(config-if)#int lo44
R4(config-if)#ipv6
*Feb 27 23:31:29.523: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback44, changed state to up
R4(config-if)#ipv6 add 2244::1/128
R4(config-if)#ipv6 ospf 1 area 44
R4(config-if)#do sh ip ospf nei
R4(config-if)#do sh ipv6 ospf nei

Neighbor ID     Pri   State           Dead Time   Interface ID    Interface
3.3.3.3           1   FULL/BDR        00:00:36    5               FastEthernet0/1
R4(config-if)#do sh ipv6 route ospf
IPv6 Routing Table – default – 5 entries
Codes: C – Connected, L – Local, S – Static, U – Per-user Static route
       B – BGP, HA – Home Agent, MR – Mobile Router, R – RIP
       I1 – ISIS L1, I2 – ISIS L2, IA – ISIS interarea, IS – ISIS summary
       D – EIGRP, EX – EIGRP external, NM – NEMO, ND – Neighbor Discovery
       l – LISP
       O – OSPF Intra, OI – OSPF Inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2
       ON1 – OSPF NSSA ext 1, ON2 – OSPF NSSA ext 2
OI  2233::1/128 [110/1]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
R4(config-if)#

R4(config-if)#do ping 2233::1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2233::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 0/0/4 ms
R4(config-if)#

So I put a bit of distance between each router configuration, and also left the route table codes in for OSPFv3, and all the addressing so far has not been too bad with overlaps and things. I am sure IPv6 at a higher level is much more difficult though I am hoping to get away with not needing to know THAT much right now as I am already about to burst.

So anyways, I wanted to get a loopback in there, configure it into our OSPFv3 and ping it to test connectivity seen at the end their to demonstrate how that is done – Now onto the point-to-point topics 🙂

Point-to-Point OSPFv3 networking

So I thought my Ethernet cable connecting two routers would make it point to point enough, but that is not showing us the standard OSPF behavior of FULL/- when doing “sh ipv6 ospf nei”, so I am going to connect R3 to R1 directly via Serial Cable (No NBMA [yet]) to see if I can get a point-to-point type behavior going on.

ipv6_ospfv3_pointtopoint

So I will be trying this for my topology for this lab to see some point-to-point behaviors, so here is the entire new config on R1 and R3:

R1#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R1(config)#ipv6 unicast-routing
R1(config)#int s0/1
R1(config-if)#ipv6 enable
R1(config-if)#ipv6 add 2231::1/64
R1(config-if)#ipv6 ospf 1 area 31
R1(config-if)#
*Mar  1 20:01:11.235: %OSPFv3-4-NORTRID: OSPFv3 process 1 could not pick a router-id,
please configure manually
R1(config-if)#exit
R1(config)#ipv6 router ospf 1
R1(config-rtr)#router-id 2.2.2.2
R1(config-rtr)#
ASR#3
[Resuming connection 3 to r3 … ]

R3(config-if)#do sh ip int bri
Interface                  IP-Address      OK? Method Status                Protocol
FastEthernet0/0            unassigned      YES NVRAM  up                    up
FastEthernet0/1            unassigned      YES NVRAM  up                    up
Serial0/2                  unassigned      YES NVRAM  up                    up
Serial0/3                  unassigned      YES NVRAM  administratively down down
Loopback3                  unassigned      YES NVRAM  up                    up
Loopback33                 unassigned      YES unset  up                    up
R3(config-if)#int s0/3
R3(config-if)#ipv6 enable
R3(config-if)#ipv6 add 2231::3/64
R3(config-if)#ipv6 ospf 1 area 31
R3(config-if)#no shut
R3(config-if)#
*Mar  2 05:29:57.189: %LINK-3-UPDOWN: Interface Serial0/3, changed state to up
*Mar  2 05:29:58.198: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/3, changed state to up
R3(config-if)#

I actually waited for the adjacency to form, wondering what did I do now, and right there in the output was the answer that I had to “no shut” that interface. Wanted to point that out that often times the answer is glaring you in the face, you just need to know where to find it!

So lets see if we get the PtP OSPFv2 behavior from our OSPFv3 neighbor(!):

R3(config-if)#do sh ipv6 ospf nei

Neighbor ID     Pri   State           Dead Time   Interface ID    Interface
4.4.4.4           1   FULL/DR         00:00:36    4               FastEthernet0/1
2.2.2.2           1   FULL/  –        00:00:30    7               Serial0/3
R3(config-if)#

And there it is, interesting that Ethernet direct connections are not considered point to point but a Serial connection is (without being configured as a point to point logically).

The main point of the above exercise and output, is that point-to-point links don’t have a DR/BDR election at any point in either version of OSPF, and that FULL/- is the tell tale sign of a PTP neighbor. You can also see the network type with the show ipv6 ospf int command:

R3#sh ipv6 ospf int s0/3
Serial0/3 is up, line protocol is up
  Link Local Address FE80::20F:23FF:FE09:B180, Interface ID 8
  Area 31, Process ID 1, Instance ID 0, Router ID 3.3.3.3
  Network Type POINT_TO_POINT, Cost: 64
  Transmit Delay is 1 sec, State POINT_TO_POINT,
  Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
    Hello due in 00:00:03
  Index 1/1/3, flood queue length 0
  Next 0x0(0)/0x0(0)/0x0(0)
  Last flood scan length is 1, maximum is 1
  Last flood scan time is 0 msec, maximum is 0 msec
  Neighbor Count is 1, Adjacent neighbor count is 1
    Adjacent with neighbor 2.2.2.2
  Suppress hello for 0 neighbor(s)
R3#

You also get some other good info as well in there, and speaking of good info, I’ve added a loopback to R1 in the same formats as the other two routers and lets take a look at the OSPFv3 route table to see how things are going from R4’s point of view:

R4#sh ipv6 route ospf
IPv6 Routing Table – default – 6 entries
Codes: C – Connected, L – Local, S – Static, U – Per-user Static route
       B – BGP, HA – Home Agent, MR – Mobile Router, R – RIP
       I1 – ISIS L1, I2 – ISIS L2, IA – ISIS interarea, IS – ISIS summary
       D – EIGRP, EX – EIGRP external, NM – NEMO, ND – Neighbor Discovery
       l – LISP
       O – OSPF Intra, OI – OSPF Inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2
       ON1 – OSPF NSSA ext 1, ON2 – OSPF NSSA ext 2
OI  2231::/64 [110/65]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
OI  2233::1/128 [110/1]
     via FE80::20F:23FF:FE09:B181, FastEthernet0/1
R4#

Only R3’s loopback, and the network of R1 2231::0/64, but not R1’s loopback. So I tried to do a “clear ipv6 ospf proc” (yes, you need ipv6 here too).

So now the video is over and it basically just presented that Full/- part, but now I am wondering why my point-to-point is not propagating OSPFv3 routes.

While watching debugs and messing with the address, I decided to try this and it worked (or so it seems to have worked):

R1(config-if)#no ipv6 ospf 1 area 11
R1(config-if)#ipv6 ospf 1 area 31
R1(config-if)#do sh ipv6 route ospf
IPv6 Routing Table – 8 entries
Codes: C – Connected, L – Local, S – Static, R – RIP, B – BGP
       U – Per-user Static route
       I1 – ISIS L1, I2 – ISIS L2, IA – ISIS interarea, IS – ISIS summary
       O – OSPF intra, OI – OSPF inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2
       ON1 – OSPF NSSA ext 1, ON2 – OSPF NSSA ext 2
       D – EIGRP, EX – EIGRP external
OI  2233::1/128 [110/64]
     via FE80::20F:23FF:FE09:B180, Serial0/1
OI  2234::/64 [110/65]
     via FE80::20F:23FF:FE09:B180, Serial0/1
OI  2244::1/128 [110/65]
     via FE80::20F:23FF:FE09:B180, Serial0/1
R1(config-if)#
ASR#4
[Resuming connection 4 to r4 … ]

R4#sh ipv6 route ospf
IPv6 Routing Table – default – 7 entries
Codes: C – Connected, L – Local, S – Static, U – Per-user Static route
B – BGP, HA – Home Agent, MR – Mobile Router, R – RIP
I1 – ISIS L1, I2 – ISIS L2, IA – ISIS interarea, IS – ISIS summary
D – EIGRP, EX – EIGRP external, NM – NEMO, ND – Neighbor Discovery
l – LISP
O – OSPF Intra, OI – OSPF Inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2
ON1 – OSPF NSSA ext 1, ON2 – OSPF NSSA ext 2
OI  2211::1/128 [110/65]
via FE80::20F:23FF:FE09:B181, FastEthernet0/1
OI  2231::/64 [110/65]
via FE80::20F:23FF:FE09:B181, FastEthernet0/1
OI  2233::1/128 [110/1]
via FE80::20F:23FF:FE09:B181, FastEthernet0/1

R4#ping 2211::1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2211::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 0/3/4 ms
R4#

So thinking waaaay back to OSPFv2 stuff, this router doesn’t have any interfaces in Area 0, so we’d need to either make a virtual-link to it or include it in the “Transit Area” that virtual-link would be configured in.

Given that it is Monday, I knocked out two training videos and survived work, on top of turning my pay check into a rent check I am going to stop here and relax the rest of the night as next we will be doing OSPFv3 over an NBMA.

I don’t think there will be much difference, IPv6 aside from the long hex address, seems like it was made to trim the fat off protocols and network types but still work on their same principles / configurations. So I don’t expect to see much difference, but we shall see 🙂 More to come!

IPv6 / OSPFv3 configuration and explanation along the way!

ospfv3_topology

As illustrated above, OSPFv3 (OSPF for IPv6) and OSPFv2 (OSPF for IPv4) can co-exist in harmony on one router, as two completely separate processes, without interfering with each others operation (just like our recent VRF discussion).

Being that OSPFv3 is configured on an interface by interface basis, it does not use network statements in router-config mode like OSPFv2, as you enter them right on the interface you are putting into the OSPFv3 domain (however there is a router-config mode coming up).

One important thing to note as well, v3 uses the same RID rules as v2, so if you don’t have an IPv4 on the router you need to add one or use the “router-id …” command – IT WILL NOT USE AN IPV6 ADDRESS, IT MUST BE IN IPV4 FORMAT!

All the basic theories still apply like Hello timers, neighbor formation adjacencies, NBMA’s still require neighbor statements for the neighors, Area 0 is still the Backbone Area, Stubs and LSA’s are the same.

Neither v2 or v3 will elect a DR/BDR on a point-to-point or point-to-multipoint link.

Multicasts are comparative as mentioned in the previous post:

v2 224.0.0.5 = v3 FF02::5 (All OSPF Routers)
v2 224.0.0.6 = v3 FF02::6 (All OSPF DR Routers)

So here is a bit of output, of me configuring R3 to enable IPv6 as well as OSPFv3:

R3(config)#ipv6 unicast-routing
R3(config)#int fa0/0

R3(config-if)#ipv6 enable
R3(config-if)#ipv6 ospf ?
  <1-65535>            Process ID
  authentication       Enable authentication
  cost                 Interface cost
  database-filter      Filter OSPF LSA during synchronization and flooding
  dead-interval        Interval after which a neighbor is declared dead
  demand-circuit       OSPF demand circuit
  encryption           Enable encryption
  flood-reduction      OSPF Flood Reduction
  hello-interval       Time between HELLO packets
  mtu-ignore           Ignores the MTU in DBD packets
  neighbor             OSPF neighbor
  network              Network type
  priority             Router priority
  retransmit-interval  Time between retransmitting lost link state
                       advertisements
  transmit-delay       Link state transmit delay

R3(config-if)#ipv6 ospf 1 ?
  area  Set the OSPF area ID

R3(config-if)#ipv6 ospf 1 area ?
  <0-4294967295>  OSPF area ID as a decimal value
  A.B.C.D         OSPF area ID in IP address format

R3(config-if)#ipv6 ospf 1 area 0 ?
  instance  Set the OSPF instance
  <cr>

R3(config-if)#ipv6 ospf 1 area 0
R3(config-if)#
*Mar  2 05:32:31.594: %OSPFv3-4-NORTRID: OSPFv3 process 1 could not pick a router-id,
please configure manually
R3(config-if)#

I’ve highlighted all my configuration messages in read so they can be differentiated from the output, but we also have this error message in blue to discuss, that I actually had to go around 5 interfaces removing IPv4 addresses to produce.

In blue, you will get this message if there are no IPv4 addresses on any interface on the router, because it WILL NOT use an IPv6 address as its RID. To put the RID in, this is where we get into OSPFv3 router configuration mode from global configuration mode:

R3(config-if)#exit
R3(config)#ipv6 router ospf 1 ?
  <cr>

R3(config)#ipv6 router ospf 1
R3(config-rtr)#router-id 3.3.3.3
R3(config-rtr)#
*Mar  2 04:45:17.616: %OSPFv3-5-ADJCHG: Process 1, Nbr 4.4.4.4 on FastEthernet0/1 from LOADING to FULL, Loading Done
R3(config-rtr)#exit
R3#sh ipv6 ospf nei

Neighbor ID     Pri   State           Dead Time   Interface ID    Interface
4.4.4.4           1   FULL/DR         00:00:33    4               FastEthernet0/1
R3#sh ipv6 ospf

 

So you can see, the adjacency between the two comes up right away, having already configured R4 with the exact same configurations, letting the Fa0/1 interfaces assign themselves a Link-local address for their IPv6 address.

A couple of important points after configuration to note, is first “show int X” will not give you any IPv6 information (or tell you if it is even enabled:

R3#show int fa0/1
FastEthernet0/1 is up, line protocol is up
  Hardware is AmdFE, address is 000f.2309.b181 (bia 000f.2309.b181)
  MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec,
     reliability 255/255, txload 1/255, rxload 1/255
  Encapsulation ARPA, loopback not set
  Keepalive set (10 sec)
  Full-duplex, 100Mb/s, 100BaseTX/FX
  ARP type: ARPA, ARP Timeout 04:00:00
  Last input 00:00:06, output 00:00:05, output hang never
  Last clearing of “show interface” counters never
  Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0
  Queueing strategy: fifo
  Output queue: 0/40 (size/max)
  5 minute input rate 0 bits/sec, 0 packets/sec
  5 minute output rate 0 bits/sec, 0 packets/sec
     46 packets input, 7004 bytes
     Received 40 broadcasts, 0 runts, 0 giants, 0 throttles
     0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
     0 watchdog
     0 input packets with dribble condition detected
     103 packets output, 10731 bytes, 0 underruns
     0 output errors, 0 collisions, 1 interface resets
     0 babbles, 0 late collision, 1 deferred
     0 lost carrier, 0 no carrier
     0 output buffer failures, 0 output buffers swapped out

You can look through that until your eyes go crooked, you won’t find a hint of IPv6, and speaking of IPv6 show commands I wanted to post the output for it here:

R3#sh ipv6 ?
  access-list         Summary of access lists
  cef                 Cisco Express Forwarding for IPv6
  dhcp                IPv6 DHCP
  eigrp               EIGRP show commands
  flow                flow cache entries
  general-prefix      IPv6 general prefixes
  inspect             CBAC (Context Based Access Control) information
  interface           IPv6 interface status and configuration
  local               IPv6 local options
  mfib                IP multicast forwarding information base
  mld                 Multicast group membership information
  mobile              Mobile IPv6
  mrib                Multicast Routing Information Base
  mroute              IPv6 multicast routing table
  mtu                 MTU per destination cache
  nat                 IPv6 NAT-PT information
  neighbors           Show IPv6 neighbor cache entries
  ospf                OSPF information
  pim                 PIM information
  policy              Policy routing
  port-map            Port to Application Mapping (PAM) information
  prefix-list         List IPv6 prefix lists
  protocols           IPv6 Routing Protocols
  rip                 RIP routing protocol status
  route               Show IPv6 route table entries
  routers             Show local IPv6 routers
  rpf                 Multicast RPF information
  static              IPv6 static routes
  traffic             IPv6 traffic statistics
  tunnel              Summary of IPv6 tunnels
  virtual-reassembly  IPV6 Virtual Fragment Reassembly (VFR) information

SO IF YOU WANT INFORMATION ON ANYTHING IPV6, OR WANT TO CONFIGURE IPV6, IT’S A GOOD BET THE COMMAND WILL BEGIN WITH IPV6, like the interface information below:

R3#sh ipv6 int fa0/1
FastEthernet0/1 is up, line protocol is up
  IPv6 is enabled, link-local address is FE80::20F:23FF:FE09:B181
  No Virtual link-local address(es):
  No global unicast address is configured
  Joined group address(es):
    FF02::1
    FF02::2
    FF02::5
    FF02::6
    FF02::1:FF09:B181
  MTU is 1500 bytes
  ICMP error messages limited to one every 100 milliseconds
  ICMP redirects are enabled
  ICMP unreachables are sent
  ND DAD is enabled, number of DAD attempts: 1
  ND reachable time is 30000 milliseconds
  ND advertised reachable time is 0 milliseconds
  ND advertised retransmit interval is 0 milliseconds
  ND router advertisements are sent every 200 seconds
  ND router advertisements live for 1800 seconds
  ND advertised default router preference is Medium
  Hosts use stateless autoconfig for addresses.
R3#

I can see this interface is part of the following groups right off the bat:

  • All Nodes
  • All Routers
  • All OSPF Routers
  • All OSPF DRs
  • Its own Link-local IPv6 EUI64 address

I’m not really sure about that last one, or how it works out condensing that, but the two groups above that are what I really wanted to point out. It shows by the FF02::5 that it is not only running OSPFv3, but I can also see it is either the DR or BDR via FF02::6 group.

Also, for OSPF neighbors, this is a good command to get neighbor details (obviously by command name):

R3#sh ipv6 ospf nei det
 Neighbor 4.4.4.4
    In the area 0 via interface FastEthernet0/1
    Neighbor: interface-id 4, link-local address FE80::21B:53FF:FE36:F2CD
    Neighbor priority is 1, State is FULL, 6 state changes
    DR is 4.4.4.4 BDR is 3.3.3.3
    Options is 0x85B86AC5
    Dead timer due in 00:00:32
    Neighbor is up for 00:22:20
    Index 1/1/1, retransmission queue length 0, number of retransmission 0
    First 0x0(0)/0x0(0)/0x0(0) Next 0x0(0)/0x0(0)/0x0(0)
    Last retransmission scan length is 0, maximum is 0
    Last retransmission scan time is 0 msec, maximum is 0 msec
R3#

This output shows R4 is the DR, shows it’s link-local address and its RID, neighbors uptime and Dead timer.

And ONE LAST COMMAND THAT IS VERY IMPORTANT FOR OSPFv3 AND IT’S OUTPUT:

R3#sh ipv6 ospf int
FastEthernet0/1 is up, line protocol is up
  Link Local Address FE80::20F:23FF:FE09:B181, Interface ID 5
  Area 0, Process ID 1, Instance ID 0, Router ID 3.3.3.3
  Network Type BROADCAST, Cost: 1
  Transmit Delay is 1 sec, State BDR, Priority 1
  Designated Router (ID) 4.4.4.4, local address FE80::21B:53FF:FE36:F2CD
  Backup Designated router (ID) 3.3.3.3, local address FE80::20F:23FF:FE09:B181
  Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
    Hello due in 00:00:04
  Index 1/1/1, flood queue length 0
  Next 0x0(0)/0x0(0)/0x0(0)
  Last flood scan length is 1, maximum is 2
  Last flood scan time is 0 msec, maximum is 0 msec
  Neighbor Count is 1, Adjacent neighbor count is 1
    Adjacent with neighbor 4.4.4.4  (Designated Router)
  Suppress hello for 0 neighbor(s)
R3#

Kind of the same as neighbor details, it gives all interface Hello / Dead timers, RIDs, Link-Local addresses, and all the information you could possibly want. I am going to “wr mem” and I think the next post I am going to dedicate to Hex conversion. One more IPv6 lesson down! (sort of)