EUI-64 IPv6 addressing for interface ID

IPv6 address is consist of two parts, network ID is the first and the interface ID is following part. The interface ID of IPv6 address is automatically generated using MAC address. In general, a MAC address can be splitted into 3bytes for 24bit-Organizationally Unique Identifier (OUI) and 3bytes for Network Interface Controller(NIC) specific. See below fomula;

Interface ID = 24bit-OUI + 0xFE or 0xFF + 24bit-NIC(vendor specific)

However, see below inconsistency. Output of IPv6 addressing is unexpected,

NIC MAC : 02-e0-19-df-d2-5f
IP : 192.168.0.1
IPv6 IP : fe80::e0:19ff:fedf:d25f – fe80:0000:0000:0000:00e0:19ff:fedf:d25f

By formula, the interface ID should be 02e0:18ff:fedf:d25f, but it is shown 00e0:19ff:fedf:d25f
Why? Here is why, <If it’s local address, half of first octect will be 00000000(0x00) among 64bits interface ID If it’s global address, half of first octect will be 00000010(0x02) among 64bits interface ID So, from the example 02 = 00000000 00000010 ==> 00 = 00000000 00000000 00e0:19ff:fedf:d25f Another example, if first 24 bit of MAC is 62-33-21, interface ID will be 6033:21ff:fe….

Leave a Reply