IPv6 EUI-64 Calculator
Convert a 48-bit MAC address into a modified EUI-64 IPv6 interface identifier. See the inserted FF:FE bytes, U/L bit inversion, interface ID, link-local address and an IPv6 address built from your own /64 prefix.
FF:FE between the first three and last three MAC octets,
then toggle bit 1 of the first octet using XOR 0x02.
This is sometimes described as flipping the universal/local bit.
—
—
—
—
What Is IPv6 Modified EUI-64?
Modified EUI-64 is a method for deriving a 64-bit IPv6 interface identifier from a 48-bit Ethernet MAC address. The 48-bit address is expanded to 64 bits by inserting the two octets FF and FE in the middle.
The universal/local bit of the first MAC octet is then inverted to produce the modified EUI-64 form used by this calculation.
MAC Address to EUI-64 Formula
MAC:
AA:BB:CC:DD:EE:FF
Step 1:
Split after first 3 bytes
AA:BB:CC
DD:EE:FF
Step 2:
Insert FF:FE
AA:BB:CC:FF:FE:DD:EE:FF
Step 3:
Flip U/L bit of first octet
Modified first octet =
AA XOR 02Example: 00:1A:2B:3C:4D:5E
Original MAC:
00:1A:2B:3C:4D:5E
Insert FF:FE:
00:1A:2B:FF:FE:3C:4D:5E
First octet:
00
Flip bit 1:
00 XOR 02
= 02
Modified EUI-64:
02:1A:2B:FF:FE:3C:4D:5E
IPv6 Interface ID:
021A:2BFF:FE3C:4D5EWhy Is FF:FE Inserted?
A 48-bit MAC contains six octets while an EUI-64 identifier contains eight. The conversion expands the original identifier by placing the fixed bytes FF and FE between its two three-octet halves.
48-bit MAC:
A B C | D E F
EUI-64:
A B C | FF FE | D E FWhat Is the U/L Bit?
The U/L bit is bit 1 of the first MAC octet. In a MAC address it distinguishes universal and locally administered addressing conventions.
First MAC Octet:
bit 7 bit 0
↓ ↓
00000000
↑
U/L bit = bit 1
Mask:
00000010
= 0x02Modified EUI-64 toggles this bit using XOR 0x02.
How the U/L Bit Is Flipped
Original first byte:
00
Binary:
00000000
XOR:
00000010
Result:
00000010
Hex:
02If that bit is already one, toggling it changes it back to zero.
IPv6 Link-Local Address from EUI-64
A 64-bit interface identifier can be combined with the FE80::/64 link-local prefix.
Interface ID:
021A:2BFF:FE3C:4D5E
Link-local prefix:
FE80::/64
Result:
FE80::21A:2BFF:FE3C:4D5ECustom IPv6 /64 Prefix
The same 64-bit interface identifier can be appended to a different /64 network prefix when that addressing method is appropriate.
Prefix:
2001:DB8:1234:5678::/64
Interface ID:
021A:2BFF:FE3C:4D5E
Result:
2001:DB8:1234:5678:021A:2BFF:FE3C:4D5EEUI-64 Interface ID Size
| Component | Bits | Bytes |
|---|---|---|
| Original MAC | 48 | 6 |
| Inserted FF:FE | 16 | 2 |
| Modified EUI-64 | 64 | 8 |
| IPv6 Network Prefix | 64 | 8 |
| IPv6 Address | 128 | 16 |
IPv6 EUI-64 vs Privacy Addresses
An EUI-64-derived interface identifier can reveal a stable relationship to a network interface identifier. Modern IPv6 systems may instead use stable privacy identifiers, temporary addresses or other address-generation methods.
Therefore, a MAC-derived EUI-64 calculation is useful for protocol study, legacy configurations, embedded systems, network troubleshooting and manual address calculations, but it should not be assumed that every modern IPv6 host actually uses a MAC-derived interface identifier.
Accepted MAC Address Formats
The calculator accepts several common representations and normalizes them before performing the conversion.
Colon:
00:1A:2B:3C:4D:5E
Hyphen:
00-1A-2B-3C-4D-5E
Cisco dotted:
001A.2B3C.4D5E
Continuous:
001A2B3C4D5E