A MAC address is six bytes. Each byte is written as two hexadecimal characters, so the whole thing is twelve characters, and the only thing that varies between formats is what goes between them. If you paste any of the forms below into our lookup, it will work.
The common formats
| Written as | Style | Where you see it |
|---|---|---|
| 00:1A:2B:3C:4D:5E | Colons between pairs | Linux, macOS, iOS, Android, most network gear |
| 00-1A-2B-3C-4D-5E | Hyphens between pairs | Windows (ipconfig, getmac) and IEEE documents |
| 001A.2B3C.4D5E | Dots between groups of four | Cisco IOS and some other network operating systems |
| 001A2B3C4D5E | No separators | Databases, barcodes, some web forms |
| 00:1a:2b:3c:4d:5e | Lowercase | The same address. Case never matters |
What the parts mean
The first three bytes,
00:1A:2B
in the examples above, are the OUI, the block the IEEE assigned to a manufacturer. The last three bytes are a serial number the manufacturer picks. That is what a vendor lookup matches on.
Smaller manufacturers can buy smaller blocks. An MA-M block fixes the first 28 bits, which is seven characters, and an MA-S block fixes 36 bits, which is nine. Our lookup tries all three sizes.
Two bits in the very first byte have special meanings, and you can read them off the second character of the address:
| Second character | Who assigned it | Addressed to | Meaning |
|---|---|---|---|
| 0, 4, 8, C | Manufacturer assigned | A single device | The normal case |
| 2, 6, A, E | Locally administered | A single device | Randomized or software-set address |
| 1, 5, 9, D | Manufacturer assigned | A group | Multicast, e.g. 01:00:5E for IPv4 |
| 3, 7, B, F | Locally administered | A group | Multicast, e.g. 33:33 for IPv6 |
FF:FF:FF:FF:FF:FF
is the broadcast address, meaning every device on the network. Our
guide to locally administered and multicast results
covers what each of these looks like in practice.
EUI-64 and IPv6
Some technologies use 64-bit identifiers instead of 48. Zigbee, Thread and other IEEE 802.15.4 radios have them, and so does FireWire. They come from the same IEEE registry and start with the same OUI, written as eight bytes instead of six.
IPv6 originally built the second half of a device's address from its MAC address, using a form called modified EUI-64. Split the MAC address in the middle, insert
FF:FE
, and flip the locally administered bit:
- Start with
00:1A:2B:3C:4D:5E. -
Insert
FF:FEin the middle:00:1A:2B:FF:FE:3C:4D:5E. -
Flip bit 7 of the first byte, so
00becomes02. - Write it as IPv6:
021a:2bff:fe3c:4d5e.
ff:fe
in the middle and leaked the hardware address to every website. Modern operating systems use random identifiers instead, so you will only see this on older or embedded equipment now.
Convert between formats
Paste an address in any of the forms above and pick how you want it written. Only the hex characters matter, so separators and case in what you paste are ignored.