IPv6 EUI-64 Calculator

Generate EUI-64 interface identifiers from MAC addresses. Insert FFFE, flip the 7th bit, and create IPv6 interface IDs for SLAAC.

IPv6 EUI-64 Calculator
Figure 1 — IPv6 EUI-64 Calculator

How EUI-64 Works

EUI-64 converts a 48-bit MAC address into a 64-bit IPv6 interface identifier through three steps: split the MAC in half, insert FF:FE in the middle, and flip the 7th bit (Universal/Local bit). This creates a unique interface ID that SLAAC uses to generate IPv6 addresses automatically.

Use our MAC Lookup to identify the vendor from any MAC address, and the Link-Local Generator to see the complete fe80:: address.

Step-by-Step Process

StepActionExample
1Start with MAC addressAA:BB:CC:DD:EE:FF
2Split in halfAA:BB:CC | DD:EE:FF
3Insert FF:FE in middleAA:BB:CC:FF:FE:DD:EE:FF
4Flip 7th bit of first byteA8:BB:CC:FF:FE:DD:EE:FF
5Format as IPv6a8bb:ccff:fedd:eeff

Pro Tip: Modern operating systems use privacy extensions (RFC 4941) that generate random interface IDs instead of EUI-64, preventing device tracking. You can check if your device uses EUI-64 by comparing your IPv6 address with your MAC — if you see FF:FE in the middle of the interface ID, EUI-64 is in use. Check your IPv6 address at What Is My IP.

Privacy Concerns with EUI-64

Because EUI-64 embeds your MAC address in every IPv6 address, your device can be tracked across networks. This is why privacy extensions were created:

MethodInterface IDPrivacyUsed By
EUI-64Derived from MACLow — trackableLink-local, legacy SLAAC
Privacy ExtensionsRandom, rotatingHighWindows, macOS, Linux default
Stable Privacy (RFC 7217)Hash-based, stable per networkMedium-HighModern Linux
Note: Link-local addresses (fe80::) always use EUI-64 on most systems, even when privacy extensions are enabled for global addresses. This is because link-local addresses are only visible on the local network segment. For security implications, see our secure WiFi guide and IoT Security Checker.

Verifying EUI-64 Addresses

# Windows — check IPv6 addresses
ipconfig /all | findstr "IPv6"

# Linux — check interface ID
ip -6 addr show

# macOS
ifconfig | grep inet6

# Look for ff:fe in the interface ID portion
# Example: 2001:db8::a8bb:ccff:fedd:eeff
#                    ^^^^ ^^              = FFFE present = EUI-64
Key Takeaways
  • EUI-64 creates 64-bit IPv6 interface IDs from 48-bit MAC addresses by inserting FFFE and flipping bit 7.
  • Modern systems use privacy extensions instead of EUI-64 for global addresses to prevent tracking.
  • Link-local addresses (fe80::) typically still use EUI-64 on most platforms.
  • If you see FF:FE in your IPv6 address, your device is using EUI-64.
  • Use our MAC Lookup to identify devices and Link-Local Generator for complete addresses.

Video Guide

Related Tools

Frequently Asked Questions

What is EUI-64?

EUI-64 converts a 48-bit MAC address into a 64-bit IPv6 interface identifier by inserting FFFE in the middle and flipping the 7th bit.

Why is the 7th bit flipped?

The Universal/Local bit is flipped to align MAC address semantics with IPv6. In MACs, 0=universal. In IPv6, 1=universal. Flipping makes them consistent.

Is EUI-64 a security risk?

It can be, because it embeds your MAC in every IPv6 address, enabling device tracking. Modern systems use privacy extensions to generate random IDs instead.

Do all devices use EUI-64?

No. Windows, macOS, and modern Linux default to privacy extensions with random interface IDs. EUI-64 is mainly used for link-local addresses.

How do I disable EUI-64?

Enable privacy extensions: on Windows it is on by default. On Linux: sysctl net.ipv6.conf.all.use_tempaddr=2. On macOS it is on by default.

About Tommy N.

Tommy is the founder of RouterHax and a network engineer with 10+ years of experience in home and enterprise networking. He specializes in router configuration, WiFi optimization, and network security. When not writing guides, he's testing the latest mesh WiFi systems and helping readers troubleshoot their home networks.

Promotion for FREE Gifts. Moreover, Free Items here. Disable Ad Blocker to get them all.

Once done, hit any button as below