# Seeking clarification in IPv6 Link & Site local addresses please

Answered Question

Hi All

Just wondering if anybody with IPv6 knowledge can put me straight. I am currently studying for my CCNP (BSCI) and am just going over the IPv6 stuff again.

Now I understand that for the CCNP I will likely just need to know the basic theory of IPv6, however I cannot get my head around the Link-Local and Site-Local addresses.

Routing TCP/IP Vol 1 (Jeff Doyle) 2nd edition, page 54, has a table showing the high order bits of various IPv6 addresses and lists the following.

Link-Local = 1111 1110 10 which equates to FE80::/10

Site-Local = 1111 1110 11 which equates to FEC0::/10

Now the part I can not get my head around is this.

The first 10 high order bits equate to 2 1/2 (10 bits) nibbles, but for the Link-Local address to be FE80 would require 4 nibbles (16 bits) or

1111 1110 1000 0000. Like wise with the Site-Local address of FEC0 which would be 1111 1110 1100 0000. This would mean that the prefix should be /16 if remaining 6 bits can not be turned on.

So I am trying to understand what happens to the remaining 6 bits in these Local IPv6 addresses or to the IPv6 addresses from FE81 to FEBF and from FEC1 to FECF? Are they just ignored?

If so it would appear that nothing was learned from what happened with the initial wasteful assignment of IPv4 addresses!!

Can anybody put me out of my misery please :)

Best Regards,

Michael

0 votes
Correct Answer by swmorris about 9 years 3 weeks ago

It's a little trickier than that. I never knew why they listed them as /10's because you're right, it implies things can be set however you want, but they can't.

Link local is specifically:

FE80:0000:0000:0000:: (eui-64 or defined address)

Site local is specifically:

FEC0:0000:0000:(subnet):: (eui-64 or defined address)

To further muck things up, the site local addressing has been deprecated in the real world. There is a new set called ULA (unique local address) out there, but it won't be covered in the CCIP exams yet, so don't stress out on that part! (grin)

HTH,

Scott

[email protected]

Overall Rating: 5 (1 ratings)

## Replies

Correct Answer
swmorris Sat, 12/29/2007 - 07:41

It's a little trickier than that. I never knew why they listed them as /10's because you're right, it implies things can be set however you want, but they can't.

Link local is specifically:

FE80:0000:0000:0000:: (eui-64 or defined address)

Site local is specifically:

FEC0:0000:0000:(subnet):: (eui-64 or defined address)

To further muck things up, the site local addressing has been deprecated in the real world. There is a new set called ULA (unique local address) out there, but it won't be covered in the CCIP exams yet, so don't stress out on that part! (grin)

HTH,

Scott

[email protected]

Hi Scott

Cheers, Many Thanks for the response and information, though it does seem really weird.

Looks like nothing was really learned from the problems which arose after the way IPv4 was initially assigned (Class A & B networks given out willy nilly). History repeating itself it seems.

Best Regards & best wishes for 2008 and beyond,

Michael

swmorris Sat, 12/29/2007 - 10:26

Yes and no. The pool is much bigger now. If they were handing out addresses in /8 allocations at a time, I'd agree with you.

but Large ISPs are getting /32 allocations, which alone allows 4.2 billion separate allocations at this level. Each allocation to an enterprise is to be /48, which means that a single allocation to an ISP can feed 65,536 customers of theirs.

Each network being a /64 still allows any enterprise to have 65,536 subnets.

There should be plenty of allocations to go around even though it seems like we're wasting lots of space! :) It's all to handle the magical address assignments of the EUI-64 node addressing!

Cheers,

Scott

[email protected]

royalblues Mon, 12/31/2007 - 01:41

Well the link local address just says that the first 10 bits should be FE80.

FE80 = 1111 1110 1000 0000. it does not mean that you cannot use the rest. I think all it means is that any Ipv6 address that can be summarised to FE80/10 would become a link local address

For example you can always configure the following ipv6 address FE8E::1 as link local.

interface fa 0/1

ipv6 enable

ipv6 address FE8E::1 link local

The above address is valid as it can be summarized to FE80::/10. If you try to make any other address as link local which cannot be summarized to the abobe you would get the following error

Router(config-if)#ipv6 ADDress 2001:A::1 LInk-local

% Invalid link-local address

HTH

Narayan

Hi Narayan

Thank you for your post and the information contained within.

When I went through IPv6 initially for my CCNP (BSCI) studies I understood that as the Link-Local and Site-Local addresses had a prefix of /10. I thought that once I kept the initial 10 bits of the address as specified in the RFC, I could change any and all of the other 118 bits in the address.

However my study material (which now also includes "Routing TCP/IP Vol 1&2, by Jeff Doyle) also states that Link-Local addresses will always start with "FE80" and Site-Local addresses will always start with "FEC0". This accounts for the first 16 bits, which to me (as just a CCNA with knowledge of IPv4 only) meant that the Link-Local and Site-Local addresses should actually have a prefix of /16.

After further investigation into IPv6 I am further confused as it appears that the Link and Site local addresses are derived by using the 48 bit MAC address of an interface, injecting "FFFE" between the OUI portion and the local portion and then inverting the 7th bit to reach the modified EUI-64 identifier.

This in turn means that the Link and Site Local addresses would have a prefix of /64, as the actual addresses would start off with

FE80:0000:0000:0000: or FE80::

FEC0:0000:0000:0000: or FEC0::.

Also while searching the web for more information I came across this site

http://www.tcpipguide.com/free/t_IPv6SpecialAddressesReservedPrivateLinkLocalSiteLo-3.htm

which suggests as you mentioned above that all addresses between FE80:: and FEBF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF can be Link-Local addresses and that all addresses between FEC0:: and FEFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF can be Site-Local addresses.

I then read through RFC3513 (IPv6 Addressing Architecture) http://www.faqs.org/rfcs/rfc3513.html and can find no mention of these "ranges" for the Link-Local and Site-Local addresses. It seems to suggest in section 2.5.6 (and I am no expert at reading and understanding RFC's) the the Link-Local address has the first 10 bits of "1111111010" the next 54 bits set to "0" and the final 64 bits are the interface ID (modified EUI-64 ID). Again to me this suggests that the prefix should be /64

However with the Site-Local address the first 10 bits are "1111111011" the next 54 bits are the "Subnet ID" and the final 64 bits are the interface ID (Modified EUI-64 ID) which again suggests to me a prefix of /64, but also that I can manipulate the middle 54 bits.

I think the more I try to understand this the more I confuse myself. I know this is probably gone way outside what I am expected to know for my BSCI exam, but I just like to understand how things that I read in my studies are arrived at. I don't like just taking things on blind faith :)

However I think after reading the RFC that I am also getting to hung up on the fact that the texts I am reading use a /10 prefix for these addresses. I understand the the Link-Local addresses are like the addresses Microsoft OS's use when they cannot get a DHCP addresses (169.254/16) and that Site-Local addresses are equivalent to RFC1918 private addresses.

Therefore I can except that the Link-local addresses will always start FE80:0000:0000:0000: and I am assuming that the lowest Site-Local address will start with FEC0:0000:0000:0000 but can be anything up to FEFF:FFFF:FFFF:FFFF, which will define the subnet.

Sorry for such a long post, but I see now why network administrators are not rushing to implement IPv6 :) I think it will take time to get my head around this.

Again thank you for your input.

Best Regards and Best Wishes for the 2008 and beyond,

Michael

swmorris Mon, 12/31/2007 - 10:00

The address you typed in can most certainly be summarized to the /10.

the point is that the ENTIRE first 64 bits are already set. Most are set to a 0-bit, but they are indeed set (why your :A: part wouldn't be valid).

But yes, you are correct that you can specify your own link local address (in case you hate memorizing MAC addresses!). but you only have control over the last 64 bits.

So "ipv6 address fe80::A:1 link-local" would work perfectly fine as the first 64 bits are left alone per the spec.

HTH,

Scott

[email protected]

royalblues Tue, 01/01/2008 - 00:01

Scott,

I was referring to the same thing that any address that can be summarized to /10 would be link local.

What i referred to was if you chnage the first 10 bits to anything other than the FE80, it cannot be a link local anymore

Also not only fe80::A:1 but even fe80:A::1 would work fine (atleast it does on a cisco router)

I may be wrong but thats what seems logical with the configuration error you get on the router

Narayan

## Trending Topics - Getting Started with LANs

 Cisco router default login vlan basics Cisco router password Cisco ios download for gns3 Cisco router password reset Cisco switchport mode access