MAC

MAC Address Generator

Generate distinct MAC batches with explicit address bits

IP & Routing
🔒 100% client-side — your data never leaves this page
Maintained by Evan•Updated: September 30, 2026
Generation settings

Uses browser crypto randomness. Addresses are distinct within this batch; no check against your network or registry. Fixed prefixes must already agree with the selected bits. Unchecking a bit option selects its opposite value.

Result

Run the tool or try an example to see results.

Page reading mode

The full guide also includes pitfalls, worked examples, snippets, FAQs, and related tools for checking results or troubleshooting.

About this tool

Generate 1–200 EUI-48 values for a virtual machine lab, packet fixture or test inventory. Browser crypto supplies the random bytes, and a set prevents duplicate addresses within the current batch. A fixed prefix can contain 1–5 complete bytes in plain, colon or hyphen form; the rest stays random. The local option selects U/L=1, while unchecking it selects U/L=0. The unicast option selects I/G=0, while unchecking it selects I/G=1. A prefix that conflicts with these options is rejected instead of being altered. Choose colon, hyphen, dotted or plain hexadecimal output, then copy the batch. No network discovery or registry query runs: a random address may already exist elsewhere, and setting U/L=0 does not obtain a registered assignment. Inputs and results stay in page memory.

Failure Clinic (Common Pitfalls)

A format option is not an address-allocation policy

Cause: Dotted and colon forms are only representations of the same 48 bits; neither checks for devices already using them.

Fix: Use the appropriate local bit for the intended lab and keep a separate assignment inventory. Do not infer an IEEE registration from a generated U/L=0 value.

Scenario Recipes

01

Prepare a local unicast VM fixture

Goal: Generate a batch without silently changing a chosen prefix.

  1. Choose a count from 1 to 200 and a local unicast prefix such as 02:42:AC.
  2. Keep U/L=1 and I/G=0 selected; choose the format your inventory accepts.
  3. Generate and copy the batch. Compare it with your actual address inventory before assigning it.

Result: Distinct values in this batch, with the fixed prefix preserved exactly.

Production Snippets

Check the first octet before fixing a prefix

text

02 = 00000010₂ → U/L=1, I/G=0
00 = 00000000₂ → U/L=0, I/G=0
03 = 00000011₂ → U/L=1, I/G=1

Prefix 00:1B:63 + local bit enabled → explicit conflict
Prefix 02:42:AC + local bit enabled → preserved

Frequently Asked Questions

Why does a vendor prefix conflict with the local option?

The U/L bit is inside the first prefix byte. For example, 00:1B:63 has U/L=0 and cannot remain unchanged while requesting U/L=1. Choose a suitable local prefix such as 02:42:AC, or select the intended bit value explicitly.

Are generated addresses unique?

They are distinct within one batch. There is no persistent registry, cross-batch reservation or discovery of devices on your network; independently generated batches may overlap.

Can I fix all six bytes?

No. A fixed prefix accepts at most five bytes, leaving at least 256 possible suffixes. To inspect a complete address, use the MAC validator.

Does the same input produce the same batch?

No. Generation uses fresh browser crypto randomness. Copy a batch if you need a stable fixture. The tool does not store a seed or save the generated addresses.

Keep browsing