IPv6 EUI-64 Explained: MAC-to-Interface-ID and Cisco IOS Configuration
Learn how modified EUI-64 builds a 64-bit IPv6 interface ID from a 48-bit MAC address, why FFFE is inserted, how the universal/local bit changes, and how Cisco IOS configures the result.
Key Takeaways
- Modified EUI-64 generates a 64-bit interface ID from a 48-bit MAC address.
- The MAC is split after the first 24 bits and
FFFEis inserted. - The universal/local bit in the first byte is toggled.
- Cisco IOS supports
ipv6 address <prefix>/64 eui-64. - An interface without a MAC address may derive the identifier from another router interface.
- Privacy or stable IPv6 interface IDs are often preferred on modern endpoints.
IPv6 EUI-64 Explained: MAC-to-Interface-ID and: Table of Contents
1. Prerequisites
You should understand IPv6 prefixes, 64-bit interface IDs, hexadecimal notation, and address compression. Review IPv6 Address Types Explained and How to Shorten IPv6 Addresses if these concepts are new.
2. How Modified EUI-64 Works
A typical IPv6 LAN uses a /64 prefix: the first 64 bits identify the subnet and the final 64 bits identify an interface. A MAC address contains only 48 bits, so modified EUI-64 expands it.
FF:FE.3. Understanding the Universal/Local Bit Flip
The first MAC byte is 12. In binary it is 0001 0010. Modified EUI-64 toggles the universal/local bit—the second least-significant bit, also commonly described as the seventh bit when counting from the left.
12 = 0001 0010After10 = 0001 0000A universally administered hardware MAC normally has this bit set to 0. Modified EUI-64 inverts it in the generated interface ID. A locally administered MAC begins with the opposite state and is toggled as well.
4. Building the Complete IPv6 Address
Combine a 64-bit prefix with the calculated interface ID.
2001:DB8::/32 is reserved for documentation. Replace it with an assigned production prefix on a real network.IPv6 EUI-64 Explained: MAC-to-Interface-ID and: 5. Cisco IOS Configuration
Enable IPv6 routing, enter the interface, and configure the /64 prefix with the eui-64 keyword.
Router(config)# ipv6 unicast-routing
Router(config)# interface GigabitEthernet0/0
Router(config-if)# ipv6 address 2001:DB8:1234:ABCD::/64 eui-64
Router(config-if)# no shutdown
Cisco IOS supplies the final 64 bits. You configure only the subnet prefix and select EUI-64 generation.
6. Verification and Troubleshooting
Router# show interfaces GigabitEthernet0/0 | include address
Router# show ipv6 interface GigabitEthernet0/0
Router# show ipv6 interface brief
For a MAC address such as c200.185c.0000, IOS splits the MAC, inserts FFFE, and flips the first-byte U/L bit. The interface ID becomes C000:18FF:FE5C:0.
| Check | Expected result |
|---|---|
| Interface state | Interface and line protocol are up |
| Prefix length | The configured network is /64 |
| Inserted value | FFFE appears in the interface ID |
| First byte | The U/L bit is toggled from the source MAC |
| Duplicate detection | The address is not marked duplicate or tentative indefinitely |
If the interface has no hardware MAC, Cisco IOS may use a MAC address from another suitable interface, commonly the lowest-numbered interface available on the platform.
7. Operational and Privacy Considerations
EUI-64 is deterministic and easy to troubleshoot, but it can expose a MAC-derived identifier and make a device easier to track across prefix changes. Modern operating systems commonly use temporary privacy addresses or stable opaque interface IDs instead.
IPv6 EUI-64 Explained: MAC-to-Interface-ID and: Frequently Asked Questions
What does EUI-64 do in IPv6?
Modified EUI-64 creates a 64-bit interface ID from a 48-bit MAC address by inserting FFFE and toggling the universal/local bit.
Why is FFFE inserted into the MAC address?
A MAC address is 48 bits and the IPv6 interface ID is 64 bits. Inserting the 16-bit FFFE value expands the identifier to 64 bits.
Which bit is flipped in modified EUI-64?
The universal/local bit, which is the second least-significant bit of the first byte and is often described as the seventh bit when counted from the left, is toggled.
Is EUI-64 always used by modern IPv6 hosts?
No. Privacy and stable-address mechanisms are common because an EUI-64 identifier can reveal a MAC-derived value and remain predictable.
IPv6 EUI-64 Explained: MAC-to-Interface-ID and: Conclusion
Modified EUI-64 follows a repeatable process: split the 48-bit MAC, insert FFFE, toggle the U/L bit, and combine the resulting 64-bit interface ID with a /64 prefix. See RFC 4291 Appendix A for the standard derivation.