The EUI-64 (Extensible Unique Identifier-64) process is a method used to assign unique IPv6 addresses to devices on a network. IPv6 (Internet Protocol version 6) is the most recent version of the Internet Protocol, which is being gradually implemented to replace IPv4 due to the exhaustion of available IPv4 addresses.
At the end of the article you will find a small test that will allow you assess the knowledge acquired in this reading
In IPv6, addresses are represented as 128-bit strings, unlike 4-bit IPv32 addresses. This provides an extremely large number of available addresses compared to IPv4.
The IPv6 address is divided into eight groups of 16 bits, each represented by four hexadecimal characters. For example, an IPv6 address would look like this: 2001:0db8:85a3:0000:0000:8a2e:0370:7334.
Steps to follow
The EUI-64 process is used to map the interface portion (the portion of the address that uniquely identifies a device on a network) into an IPv6 address. Below are the steps to generate the interface part of an IPv6 address using the EUI-64 process:
Take the MAC address of the device
The MAC (Media Access Control) address is a unique address assigned to the network interface card (NIC) of a device. In general, MAC addresses are assigned by the manufacturer and are unique for each NIC.
Split MAC address into two halves
A MAC address is 48 bits, and the EUI-64 process requires that the interface portion in an IPv6 address be 64 bits. Therefore, the MAC address is taken and divided into two halves of 24 bits each.
Insert FFFE sequence
The sequence “FFFE” (hexadecimal) is then inserted into the center of the two 24-bit halves of the MAC address. This converts each half to 32 bits.
Invert the seventh bit
The seventh bit (the most significant bit) of the first half of 32 bits is inverted. This operation is done to avoid conflicts with automatically generated local IPv6 addresses.
Combine the two halves
Finally, the two 32-bit halves are combined to form the 64 bits that represent the interface part of the IPv6 address.
Add the global prefix
The EUI-64 process generates the interface part, but it still needs to be combined with the global network prefix to form the full IPv6 address. The global prefix is assigned by the Internet service provider or network administrator.
Form the full IPv6 address
Combining the global prefix with the 64 bits generated by the EUI-64 process results in the complete IPv6 address with the interface portion unique to the device.
Example
To generate an IPv6 address using the EUI-64 process: Suppose we have the following MAC address of a device: 00:1A:2B:3C:4D:5E
Step 1: Split the MAC address into two halves of 24 bits each:
First half: 001A2B
Second half: 3C4D5E
Step 2: Insert the FFFE sequence:
First half: 001A2B
Second half: FFFE3C4D5E
Step 3: Invert the seventh bit of the first half:
The original first half is: 001A2B
After inverting the 00182th bit: XNUMXB
Step 4: Combine the two halves:
Part of the resulting interface: 00182BFFFE3C4D5E
Step 5: Add the global prefix:
Suppose the global network prefix is: 2001:0db8:85a3::/64
Step 6: Form the complete IPv6 address:
We combine the global prefix with the generated interface part:
Dirección IPv6 completa: 2001:0db8:85a3:0018:2bff:fe3c:4d5e
This is the unique IPv6 address generated for the device using the EUI-64 process. It should be noted that the global prefix (2001:0db8:85a3::/64) can vary by network, and the EUI-64 process only applies to the interface portion of the IPv6 address. The global prefix is assigned by the Internet service provider or network administrator and is used to identify the specific network to which the device belongs.
Configure EUI-64 on a MikroTik
To configure EUI-64 on a MikroTik router, you must follow these steps:
- Suppose you want to configure EUI-64 for interface “ether1”. Now, you must configure the global prefix of your network. Suppose your global prefix is “2001:0db8:85a3::/64”. You can configure it with the following command:
/ipv6 address add address=2001:0db8:85a3::/64 advertise=yes interface=ether1
- By applying the changes we will be able to see that the EUI-64 process was generated
Advantages of the EUI-64 process
- Uniqueness: The EUI-64 process ensures that each device on the network has a unique IPv6 address. This significantly reduces the likelihood of address conflicts and simplifies network administration.
- Auto configuration: With the EUI-64 process, devices can generate their IPv6 addresses automatically without the need for manual configuration or a DHCPv6 server. This makes it easier to deploy and maintain IPv6 networks.
- traceability: Since a portion of the IPv6 address generated by the EUI-64 process comes from the device's MAC address, it is possible to trace the device manufacturer through the first three octets of the IPv6 address.
Disadvantages of the EUI-64 process
- Predictability: The portion of the IPv6 address generated by the EUI-64 process is based on the MAC address of the device. This can make addresses predictable and susceptible to network scanning or attacks. Attackers could use information about the device manufacturer and other characteristics to identify and target their attacks.
- MAC address changes: If a device changes its MAC address (for example, due to a hardware change or firmware update), the interface portion of its IPv6 address generated by the EUI-64 process will also change. This may affect network connectivity and may require adjustments to other devices that have policies based on the IPv6 address.
- Address Privacy: Generating the IPv6 address using the EUI-64 process can expose information about the network and devices, which may raise privacy concerns. For this reason, in some scenarios, other IPv6 address allocation techniques may be preferred, such as generating temporary addresses or using a random identifier.
Brief knowledge quiz
What do you think of this article?
Do you dare to evaluate your learned knowledge?
Recommended book for this article
IPv6 book with MikroTik, RouterOS v7
Study material for the MTCIPv6E Certification Course updated to RouterOS v7
2 comments on “EUI-64 in IPv6: Generating unique addresses for modern networks”
The third question is wrong. Greenhouse gases in an EUI-64 process?
José, you are absolutely right. We have proceeded to eliminate that question. We greatly appreciate your notice.