About the MAC Address Validator
A MAC address is the hardware address of a network interface: six bytes, written as twelve hex digits. Every Wi-Fi card, Ethernet port and Bluetooth chip has one. The MAC Address Validator checks that an address is well-formed, rewrites it in every common format, and explains what its first byte says about it.
It is handy for network admins and support staff who copy addresses between tools that each want a different style. A switch shows 001b.4411.3ab7, Windows shows 00-1B-44-11-3A-B7, and a DHCP reservation form wants 00:1B:44:11:3A:B7. Paste any of them and copy the one you need, or convert a whole list at once.
The tool also generates random addresses for virtual machines, containers and test data. Everything runs in your browser. Nothing is looked up online and nothing is sent anywhere.
How to use it
- Enter an addressType or paste a MAC address in any common format, or click one of the example buttons. Upper and lower case both work.
- Read the resultThe result says whether the address is valid. If it is not, the message tells you why, such as a wrong character or the wrong number of digits.
- Check the detailsThe list shows whether the address is unicast, multicast or broadcast, who assigned it, and the maker prefix (OUI).
- Copy a formatUnder "All formats", copy the address with colons, hyphens, Cisco dots or no separator.
- Convert a list or generate new onesPaste one address per line under "Convert many" and pick a format and letter case, or click Generate to create up to 100 random addresses.
Key features
Every common format
Reads colons, hyphens, Cisco dots (001b.4411.3ab7), the hyphenated groups of four used by Huawei and HP switches (001b-4411-3ab7), and plain hex. Single-digit groups like 0:1b:44:11:3a:b7, as macOS prints them, are padded.
Clear error messages
Points to the first character that is not a hex digit and its position, or tells you how many digits you have when the count is not 12.
Address details
Reads the two special bits in the first byte: unicast or multicast, and manufacturer-assigned or locally administered.
Batch conversion
Convert a whole list to one format and letter case. Empty lines are skipped and bad lines are marked "invalid:" so nothing goes missing.
Random addresses
Generates up to 100 unicast addresses from your browser's secure random generator, locally administered by default so they never clash with real hardware.
Private by design
No vendor lookup, no network requests and no storage. The addresses you check stay on your device.
Examples
One address, four formats
Enter 001e.c9ab.1234, the way a Cisco switch prints it. The result is Valid MAC address, and "All formats" shows:
| Format | Output |
|---|---|
| Colons | 00:1E:C9:AB:12:34 |
| Hyphens | 00-1E-C9-AB-12-34 |
| Cisco dots | 001e.c9ab.1234 |
| No separator | 001EC9AB1234 |
The details read Unicast (one device), assigned by the Manufacturer (globally unique), with the maker prefix 00:1E:C9. Entering 001e-c9ab-1234 or 0:1e:c9:ab:12:34 gives exactly the same result.
What the first byte tells you
| Address | Type and assigned by |
|---|---|
00:50:56:C0:00:08 | Unicast, manufacturer |
DA:A1:19:6B:52:3C | Unicast, locally |
01:00:5E:00:00:FB | Multicast, registered prefix |
33:33:00:00:00:01 | Multicast, locally |
FF:FF:FF:FF:FF:FF | Broadcast, reserved |
The second address starts with DA, which is 1101 1010 in binary. The last bit (0) makes it unicast, the bit before it (1) makes it locally administered. That is typical for the private, randomized Wi-Fi address a phone or laptop uses instead of its factory address. The two multicast addresses are the ones used by mDNS on IPv4 and by "all nodes" on IPv6. For locally assigned and group addresses, the maker prefix is shown with "(not a maker prefix)", because it does not point to a manufacturer.
When an address is rejected
| You enter | Message |
|---|---|
00:1g:44:11:3a:b7 | "g" is not a hex digit (position 5) |
00:1B:44:11:3A | A MAC address has 12 hex digits. This one has 10. |
02:1b:44:ff:fe:11:3a:b7 | A MAC address has 12 hex digits. This one has 16. |
00:1B-44:11:3A:B7 | Use colons, hyphens, Cisco dots or no separator, without mixing them. |
The 16-digit value is an EUI-64 identifier, the longer cousin of a MAC address used inside IPv6 and some wireless protocols. Spaces between the bytes are not accepted either; replace them with colons first.
Converting a list
Paste these lines into "Convert many" and choose Cisco dots in lowercase:
00:1B:44:11:3A:B7
001e.c9ab.1234
da-a1-19-6b-52-3c
hello
The result is 001b.4411.3ab7, 001e.c9ab.1234, daa1.196b.523c and invalid: hello, one per line.
Tips
- A locally administered unicast address always has 2, 6, A or E as its second hex digit, like DA:A1:19:6B:52:3C. That is a quick way to spot a randomized Wi-Fi address by eye.
- When a device is missing from a DHCP reservation or a router's allow list, check whether its Wi-Fi uses a private address. Most phones let you turn that off for one network at a time.
- Keep "Locally administered" checked when you generate addresses for virtual machines or containers. Those addresses can never clash with a real network card.
- To find the maker of a factory address, search its first three bytes (the OUI) in the IEEE's public registry. This tool does not look up vendor names.
- Pick one format for your inventory or spreadsheets and convert everything to it with the batch converter. Searching and comparing become much easier.
Common mistakes and limits
- Treating a MAC address as proof of identityAny operating system can change the address an interface sends. MAC filtering keeps casual guests out, but it is not real access control.
- Expecting the same address on every networkPhones and laptops often use a different private address per Wi-Fi network, and some rotate it over time. The address you see in the router may not match the one on the label.
- Confusing a multicast address with a broken oneAddresses like 01:00:5E:… or 33:33:… are valid group addresses used by multicast traffic. They should never be set as a device's own address, though.
- Generating random addresses without the local bitIf you uncheck "Locally administered", the random addresses fall in the manufacturer range and may collide with real hardware on the same network.
- Reading 00:00:00:00:00:00 as a real deviceThe all-zero address is well-formed, so it passes the check, but in practice it usually means "unknown" or a driver that has not loaded an address.