MAC Address to IPv6 Converter – EUI-64 Calculator

April 15, 2026

🔗 MAC Address to IPv6 Converter

Convert any MAC address to IPv6 link-local and global unicast addresses using EUI-64

⚡Quick Presets
📋Conversion Input
Invalid MAC address. Use format XX:XX:XX:XX:XX:XX
✅ IPv6 Address Results
IPv6 Address
—
—
EUI-64 Interface ID
—
64-bit interface identifier
Full Expanded IPv6
—
128-bit address
Modified MAC (EUI-64)
—
with FF:FE inserted & bit 7 flipped
📊 EUI-64 Conversion Steps
1. Input MAC Address—
2. Split at middle (3+3 octets)—
3. Insert FF:FE between halves—
4. First octet (hex)—
5. XOR with 0x02 (flip bit 7)—
6. Modified first octet—
7. Final EUI-64 Interface ID—
8. Prefix Used—
9. Final IPv6 Address—
💡Tips
EUI-64 Process: Split the 48-bit MAC address in half, insert FF:FE (4 hex digits) in the middle to make 64 bits, then XOR the first octet with 0x02 to flip the Universal/Local bit.
Privacy Extension: Modern operating systems (Windows, Linux, macOS) use RFC 4941 privacy addresses with random interface IDs instead of EUI-64 to prevent device tracking. EUI-64 is still used on routers and network infrastructure.
📋MAC to IPv6 Example Conversions
MAC AddressEUI-64 IIDLink-Local IPv6
00:11:22:33:44:550211:22FF:FE33:4455FE80::211:22FF:FE33:4455
AA:BB:CC:DD:EE:FFA8BB:CCFF:FEDD:EEFFFE80::A8BB:CCFF:FEDD:EEFF
DC:A6:32:AB:CD:EFDEA6:32FF:FEAB:CDEFFE80::DEA6:32FF:FEAB:CDEF
00:50:56:AA:BB:CC0250:56FF:FEAA:BBCCFE80::250:56FF:FEAA:BBCC
B4:FB:E4:12:34:56B6FB:E4FF:FE12:3456FE80::B6FB:E4FF:FE12:3456
FC:AA:14:C5:D2:E8FEAA:14FF:FEC5:D2E8FE80::FEAA:14FF:FEC5:D2E8
🔧IPv6 Address Types
FE80::/10
Link-Local
2000::/3
Global Unicast
FF00::/8
Multicast
::1/128
Loopback

 

The MAC address is made of 48 bits, while IPv6 address has 128 bits. Although the difference is huge you can easily turn MAC address into IPv6 link-local address. You derive the latter from the MAC or Ethernet hardware address using the EUI-64 method.

Free online programs exist that convert any MAC address to IPv6 and show the steps of the process

How to Turn a MAC Address into an IPv6 Link-Local Address

Here is how the process works. We take the MAC address from the interface and split it in two parts. For instance, we start with 52:74:f2:b1:a8:7f.

We put ff:fe in the center, so it becomes 52:74:f2:ff:fe:b1:a8:7f. Therefore we rewrite it as IPv6 form: 5274:f2ff:feb1:a87f. Now we change the first octet from hex to binary: 52 becomes 01010010.

We reverse the 7th bit (counting from 0). Later we convert this octet back to hex and add the prefix fe80:: to get the complete addres.

Other sample will explain that better. We start with de:ad:be:ef:ed:00. We put ff:fe in the center, so we get de:ad:be:ff:fe:ef:ed:00.

Rewritten as IPv6 form: dead:beff:feef:ed00. We turn the first octet to binary: 11011110. We reverse the bit in index 6, so it becomes 11011100.

Back to hex, which gives dc. We substitute the first octet, resulting dcad:beff:feef:ed00. Finally we add fe80:: and we have fe80::dcad:beff:feef:ed00.

One more sample: the MAC address 00:01:04:76:2A:5C should be fe80::0201:04ff:fe76:2a5c after the whole conversion.

Also exists a tool that does the opposite operation. It often helps to turn IPv6 link-local addresses, for example from ping answers (back to MAC addresses). Converting known MAC address to fe80:: IPv6 form is useful for connecting to a specific device.

IPv6 address from MAC always has ff:fe in the center of the interface ID part. If there is something else there, like 70:16, then the address uses privacy extensions or random generation.

For EUI-64 you must put FFFE, not FFE. The 7th bit flips, not the second. That is a common mistake that you easily find.

Programs like ipv6calc by Peter Bieringer can create a full IPv6 address from MAC and a given prefix. Python scripts and shell functions automate this conversion according to RFC 4862. Some people use spreadsheets to read MAC addresses from codes on network labels, enter them in cells and do calculations to produce IPv6link-local addresses.

 

Related posts

Leave a Comment