How to configure IPv6 OSPFv3 on Cisco IOS Router

This topic is to discuss the following lesson:

Hi Rene,
Do areas work the same way ON IPV6 as on OSPF v2?

Hi Alfredo,

The areas are still the same, basically OSPFv2 and OSPFv3 operate in the same way but there are some differences when it comes to LSAs, building the LSDB, addressing, etc.

I’ll cover this in another lesson if you are interested.

Rene

I will be interested.

Thanks

Hey,
Why we use global Unicast address? isn’t it public address? I understand when its local communication we can get away with link local address and when we require routing we use Global Unicast or Unique local, right? Can we use unique local address in above example instead of Global unicast? implied we are not going to route outside it is just going to be site and inter-site based routing, so in that case we can use Unique local?

Thanks,
AD

Also, please show how to assign a unique local address?

Thanks,

You can configure it like this:

interface fa0/0
ipv6 address FE80::1 link-local

Just make sure it starts with FE80 and don’t forget “link-local” at the end.

Hi AD,

Link-local addresses are only used on the local link. These addresses are not routable and used only for things like neighbor discovery or to establish OSPF / EIGRP neighbor adjacencies and such.

The idea behind IPv6 is that every device connected to the Internet should have a global unicast address. NAT/PAT for IPv4 were only “tricks” to get around the lack of available IPv4 addresses.

On your own networks, you could use the unique local addresses in the fc00::/7 range. These are equal to IPv4 private range addresses.

Rene

1 Like

can you make a topic on how to read the opsv3 database? for example, in the following output:
Net Link States (Area 0)

ADV Router Age      Seq#                  Link ID    Rtr count
1.1.1.1             305      0x80000002   8                 2

what is link id 8 referring to? is there a mapping to the link ip address?

Hi Mario,

I will cover this in another lesson, OSPFv3 has some differences compared to OSPFv2.

One of them is that each router will assign each interface a unique interface ID. This interface ID can be found in some packets like the hello packet, link-local SA and router LSA.

This interface ID is also used as the link ID which you can see in the OSPF database.

Rene

So we use an IPV4 Address for the Router-ID for IPV6 OSPF and EIGRP?
Can you not use an IPV6 address for this?

Ryan,
You are correct. OSPF and EIGRP will only accept 32-bit numbers in an ipv4 address form as router-ids. Furthermore, they will only accept decimal numbers–trying to use A-F as Hex characters will be rejected. Below is the output will you see for the IOS accepted format for both OSPF and EIGRP router-ids for IPv6:

OSPF:

R1(config-rtr)#router-id ?
  A.B.C.D  OSPF router-id in IP address format

EIGRP:

R1(config-rtr)#eigrp router-id ?
  A.B.C.D  EIGRP Router-ID in IP address format

--Andrew

HI
How to config with many area .could you pls exam. thanks a lots

Hi Ho H,

It’s the exact same thing, just use different area numbers and that’s it.

Rene

I am getting this error at both router.

Process OSPFv3-1-IPv6 could not pick a router-id, please configure manually

Kindly suggest.

Hello Sanjiv.

In order to clarify why you’re getting the error, first let’s look back on how a router chooses its router ID. A router ID is always in the format of an IPv4 address. The router ID is chosen in the following order:

  1. If a router ID is configured in the ospf configuration, this is used as the router ID.
  2. If no router ID is configured, then it uses the highest IP address of a loopback interface
  3. If no loopback interface exists, it will use the highest IP address of any physical interface in the “up” state.

Now if you’re using IPv4, then one of the above will be configured so you will NEVER get the above error message. If you’re using ONLY IPV6, you may have NONE of the above configured. So if that is the case, you get the error message that you observed in your configuration.

To solve the problem, define a router ID using one of the above three entities. It is always best practice however, whether you use IPv4 or IPv6, to define a router ID in the ospf configuration. This will allow you to more easily identify routers in neighbor tables when troubleshooting and when changing configurations.

I hope this has been helpful!

Laz

Can I ask what is the difference between the following 2 commands?

“ospfv3 1 ipv6 area 0”
“ipv6 ospf 1 area 0”

I just tried this and it shows up differently under the running config:

interface Ethernet0/0
no ip address
shutdown
ipv6 enable
ospfv3 1 ipv6 area 0
!
interface Ethernet0/1
no ip address
shutdown
ipv6 enable
ipv6 ospf 1 area 0
!

Hello Chris,

Good question, this can be confusing. Originally, OSPFv3 was created only for IPv6:

https://tools.ietf.org/html/rfc5340

Later, OSPFv3 was updated to support address-families:

https://trac.tools.ietf.org/html/rfc5838

This means you can run it for IPv6 and IPv4 (and some other address families like multicast).

The “ipv6 ospf” commands are the “old” commands and the “ospfv3” commands are the newer commands.

If you use “ipv6 ospf” on an interface and later use “ospfv3” then you’ll see that the “ipv6 ospf” command will disappear.

“ipv6 router ospf” is the old way to start an IPv6 OSPF process. “router ospfv3” is the new way to start OSPFv3 with address family support.

Hope this helps!

Rene

1 Like

Thanks for that, very helpful!

something which is mentioned in other lessons but is still kind of cool to see is how OSPF uses the Link Local for all the management type data its sending…

Since I am studying for the Tshoot I am trying to lab up the majority of the topics that is covered for the exam. So I am building a ton of GNS3 labs.

I would say that really be familiar in how IPV6 OSPF is setup for example being able to identify if something was missing from the show running configuration could be paramount to passing.

Capture

My topology just mirrors this lesson in this case its simply but effective! Great lesson easy to ingest and understand

Capture

wire shark was cool understood all of it but the ca: reply form loop not sure exactly what that is but know it has to do with loop back speaking. (Edited that was the MAC address)

1 Like