MAC Address Generator
WebEverything runs locally in your browser — nothing is uploaded
Generate MAC addresses in bulk — unicast, multicast or broadcast, with an optional fixed vendor prefix (OUI). Two bits in the first octet carry meaning, and both are set according to your choices here: - The lowest bit is the unicast/multicast flag — 0 is unicast (one NIC), 1 is multicast (a group) - The second-lowest bit is the locally-administered flag — 0 means the prefix is vendor-assigned (globally unique), 1 means the address was made up locally (no uniqueness guarantee) ⚠️ When you supply an OUI, those two bits are already decided by it. If your chosen type or the “locally administered” box contradicts it, this tool errors rather than quietly ignoring one of your choices — a control that looks set while the output ignores it is the hardest kind of bug to notice. A real example: `DE:AD:BE` is the prefix people reach for most when making up a fake MAC, and `DE` has its second-lowest bit set — it *is* a locally administered address, so the box must be checked when you use it. ⚠️ No vendor lookup happens here. An OUI database is megabytes of registry data, and all it answers is “who owns this prefix” — irrelevant to generating a random address. So this tool is offline, queries nothing, and will not tell you which vendor your address resembles. ⚠️ The addresses produced are not guaranteed unique on a real network. Do not assign one to a device on a managed network — colliding with an existing MAC causes intermittent faults that are very hard to trace.
Features
- Unicast, multicast and broadcast
- Fix a vendor prefix (OUI); accepts `00:1A:2B`, `00-1a-2b`, `001a2b` and more
- Errors when the OUI contradicts the type or the local bit instead of silently ignoring a choice
- Optional locally-administered bit (usually wanted for fake MACs)
- Four formats: colon, hyphen, no separator, Cisco dotted
- Uppercase or lowercase, up to 100 at a time
- No network access, no vendor database
How to use
- Pick a type and a format
- Fill in an OUI (first three octets) if you want a fixed prefix
- Click “Generate again” for a fresh batch
- Copy the result
FAQ
- Why does supplying an OUI give me an error about the “lowest bit”?
- Because the lowest bit of the first octet is the unicast/multicast flag, and your OUI has already fixed it. For example `00:1A:2B` starts with `00`, whose lowest bit is 0 — it can only be a unicast address. Selecting “multicast” at the same time cannot be satisfied. This errors rather than picking one silently, because the silent path would leave you believing your choice took effect. For a test-data prefix like `DE:AD:BE`, watch the second-lowest bit: `DE` is `11011110`, so that bit is 1 — it is a locally administered address, and the box must be checked.
- What does “locally administered” mean? Should I check it?
- The second-lowest bit of a MAC distinguishes two origins: 0 = vendor-assigned (the OUI comes from IEEE and is globally unique), 1 = locally administered (made up by an administrator; no registration needed, but no uniqueness guarantee). For test and fake data you usually do check it — the address then sits explicitly in the “made up locally” half of the space and cannot collide with any real vendor prefix. But if your OUI is a real vendor prefix (say `00:1A:2B`), you must not check it, because that prefix’s second-lowest bit is 0 to begin with. Checking it produces the error for exactly that reason.
- Can I assign a generated MAC to a device?
- Not on a device in a managed network. This tool generates random addresses and consults no allocation table, so it cannot guarantee uniqueness within your subnet — colliding with an existing MAC causes intermittent network faults (packet loss, disconnects, switch MAC table flapping) that are very hard to trace, because each device looks fine on its own. For an address that genuinely will not collide, use the NIC’s own randomization feature or ask your administrator. This tool is for test data, documentation examples and forms that merely require a MAC-shaped value.
Related tools
Random IP Generator
WebGenerate random IP addresses in bulk: IPv4, IPv6 or mixed, with private and reserved ranges excluded in public mode. Up to 100 at a time.
IP to Integer
WebConvert between IP addresses and integers: dotted decimal, unsigned and signed, hex, binary. IPv6 uses exact 128-bit arithmetic.
UUID Generator
GeneratorsGenerate a column of UUID v4, v7, ULID, NanoID or MongoDB ObjectId values, one per line, ready to paste into a spreadsheet. Runs in your browser.
URL Parser
WebParse a URL into scheme, host, port, path, query parameters and fragment, with each parameter shown raw and decoded. Runs entirely in your browser.
User-Agent Parser
WebParse a user agent into browser, version, OS, device type and engine, and see which rules matched. Pattern matching only. Runs entirely in your browser.
HTTP Status Codes
WebLook up an HTTP status code for its meaning, 1xx–5xx class, typical uses and common traps. Runs entirely in your browser.