Random MAC addresses for virtual machines, containers, test labs and changing a network card address. By default the address is locally administered and unicast, so it cannot collide with real vendor addresses.
🔒 Addresses are generated in your browser (crypto.getRandomValues) and are never sent anywhere.
How a MAC address is built
A MAC address is 48 bits (6 bytes) written as hexadecimal pairs. The first three bytes are the OUI, the vendor identifier issued by the IEEE; the last three are assigned by the vendor. The first byte holds two flag bits. The I/G bit (lowest) distinguishes an individual address (0, unicast) from a group address (1, multicast). The next bit, U/L, tells who assigned the address: 0 for the vendor (universal), 1 for an administrator or software (local).
By default the generator sets U/L = 1 and I/G = 0. Such addresses have a first byte ending in 2, 6, A or E (for example 02:..., da:...) and cannot collide with a real network card by definition. This is what virtual machines, containers and tests need. If you want an address that looks like it came from a real vendor, enter its OUI and the other three bytes will be random.
Notations
aa:bb:cc:dd:ee:ff - Linux, macOS, most tools;aa-bb-cc-dd-ee-ff - Windows (ipconfig /all), IEEE standard;aabb.ccdd.eeff - Cisco equipment;aabbccddeeff - no separators, for configs and databases.
Everything is generated in the browser and nothing is sent to a server. For SSH access you will need keys - see the SSH key generator, and for accounts the password generator.
FAQ
What is a locally administered MAC address?
It is an address with the U/L bit set to 1 in the first byte. It was assigned by an administrator or software (hypervisor, Docker, the OS) rather than by the network card vendor, so it does not overlap with factory addresses. Such addresses are safe to use for virtual machines and tests.
What is the difference between unicast and multicast addresses?
It is the I/G bit. 0 means the address belongs to a single device (unicast). 1 means a group address (multicast), which must not be assigned to an interface as its own address. A normal interface needs unicast.
Can I set my own prefix (OUI)?
Yes. Enter the first three bytes as 00:1A:2B, 00-1A-2B or 001A2B. They are used in the address unchanged and the remaining three bytes are random. Note that with someone else's OUI the address can look like a device of that vendor.
Are the addresses truly random and kept private?
Yes. The bytes come from the browser's cryptographic generator crypto.getRandomValues and the page does not send them to a server. With 46 random bits a clash on your network is practically impossible, but in a large network it is still worth checking for conflicts.