IPv6 EUI-64 explained

Hello Jay

In the context of IPv6 networking, a link-local address and an interface identifier are two different but related concepts.

A link-local address is an IP address that is intended only for communications within the network segment (link) or the broadcast domain that the host is connected to. These addresses are not routable, which means they can’t be used to communicate with devices outside of the local network segment. In IPv6, link-local addresses always begin with FE80. For more information, take a look at this NetworkLessons note on the topic.

On the other hand, an interface identifier within the context of IPv6 is actually a component of the IPv6 address. In the same way that an IPv4 address is separated into its network and host portions, their counterparts in IPv6 are the network identifier and the interface identifier. Take a look at this image:

N is the prefix for that particular IPv6 address. So, if we had a /64 prefix, then the network identifier is defined as the first 64 bits of that address, and the interface identifier is defined as the last (128-64) = 64 bits of the address.

If we had a prefix of /96, then the first 96 bits are the network identifier, and the last 32 are the interface identifier.

In the context of EUI-64, this process is used to automatically assign an interface identifier based on the datalink layer address. In the case of Ethernet, that’s the use of the MAC address.

I hope this has been helpful!

Laz