{{ summaryKicker }}
{{ summaryValue }}
{{ summaryLine }}
{{ badge.label }}
{{ primaryActionStatusText }}
MAC address generator inputs
Start with a safe local VM batch, vendor-looking OUI fixture, Docker-style address, or multicast probe.
{{ prefixHelpText }}
Use local unicast for dummy, VM, privacy, and QA data; use universal only when you intentionally need vendor-style examples.
Choose colon, hyphen, Cisco dot, or plain hex notation.
Use uppercase for most network documentation or lowercase for config files that prefer it.
{{ quantity }} row{{ quantity === 1 ? '' : 's' }}
Generate 1 to 500 addresses; uniqueness is enforced within the current batch by default.
rows
Leave on for VM inventory, fixture lists, and sample network tables.
{{ uniqueBatch ? 'On' : 'Off' }}
Settings changed since the current batch was generated.
Enforce selected bits for clean local/unicast fixtures, or preserve prefix bits for exact vendor examples.
Optional seed for reproducible fixture batches; blank uses browser cryptographic randomness when available.
# MAC address Plain hex OUI / prefix NIC suffix Flags Copy
{{ row.index }} {{ row.address }} {{ row.plain }} {{ row.oui }} {{ row.nic }} {{ row.flagLabel }}
Part Value Binary Meaning Copy
{{ row.part }} {{ row.value }} {{ row.binary }} {{ row.meaning }}
Format Value Typical use Copy
{{ row.format }} {{ row.value }} {{ row.use }}
Check Value Meaning Copy
{{ row.check }} {{ row.value }} {{ row.meaning }}
{{ formattedJson }}
Customize
Advanced
:

Introduction:

A MAC address is a link-layer label, not just a decorative string of hexadecimal characters. Ethernet and Wi-Fi examples usually use the 48-bit form, written as six octets such as 02:42:84:88:70:63. Those six octets show up in virtual machine settings, DHCP reservations, switch tables, packet captures, parser fixtures, documentation examples, and container network demos.

The practical risk in generated addresses is not the separator style. It is choosing bytes that imply the wrong kind of address. The first octet carries flag bits that say whether the address is for one interface or a group, and whether the value is globally administered or locally administered. A lab-only interface usually needs an individual local address. A multicast address may be correct for an IPv6 neighbor-discovery example, but it is the wrong source identity for a single virtual NIC.

Diagram of a 48-bit MAC address with I/G and U/L flag bits, prefix bytes, and generated suffix bytes

Generated addresses are most useful when the surrounding system is under your control. A QA fixture can use a repeatable sequence, a lab inventory can use a local prefix, and a documentation table can use a vendor-looking prefix without claiming that a real device exists. The same generated value can be displayed in colon, hyphen, Cisco dot, or plain hexadecimal notation because the separator style does not change the six bytes.

  • Use local unicast values for virtual machines, containers, lab-only interface rows, and sample DHCP reservations.
  • Use vendor-looking universal values only for documentation or parser tests that need that shape.
  • Use multicast values only when testing group-address behavior or writing protocol examples.
Common generated MAC address contexts and cautions
Context Good Address Shape Common Mistake
VM or container lab Individual local address with enough random suffix space. Reusing a full fixed address across several hosts.
Documentation sample Vendor-looking or local value clearly treated as synthetic. Implying a generated suffix was issued by a real vendor.
Protocol fixture Multicast only when the protocol example truly needs a group address. Using multicast values as ordinary interface identities.

A generated MAC address is still synthetic. It is not an IEEE assignment, not proof of vendor ownership, and not a substitute for checking real network inventory before using addresses in a shared broadcast domain.

How to Use This Tool:

Begin with the kind of address you need, then tighten the prefix, flags, and output notation for the system that will consume the batch.

  1. Choose a Preset. Local VM batch is the safest default for dummy interface data. Docker-style 02:42, VMware OUI fixture, VirtualBox OUI fixture, and Multicast probe sample load more specific starting values.
  2. Set Prefix / OUI when the first bytes must be fixed. The field accepts whole-byte hexadecimal text such as 02, 02:42, or 00:50:56, with colons, hyphens, dots, or spaces allowed. Leave it blank when every byte should be generated under the selected policy.
  3. Pick Type and administration bits. Locally administered unicast fits ordinary dummy data and lab interfaces. Universal and multicast choices are better reserved for examples that specifically need those flags.
  4. Open Advanced before using a prefix with a meaningful first byte. Enforce selected type/admin bits may change that first byte to match the chosen policy. Preserve first-octet prefix bits keeps it exact and lets Flags show what the prefix already says.
  5. Choose Display format, Letter case, and Quantity. The current address can appear as colon-separated, hyphen-separated, Cisco dot notation, or plain hex, and batches can range from 1 to 500 rows.
  6. Keep Unique within batch on for inventories and fixture files. If the prefix fixes too many bytes, the validation message or Batch Audit note will show that too few unique values remain.
  7. Use Deterministic seed only when the same batch must be recreated later. Leave it empty for a fresh browser-random batch.
  8. Press Generate MAC, then check Generated MACs, Lead Anatomy, Format Matrix, Batch Audit, and JSON. Prefix errors, capacity limits, and first-octet adjustments appear before you rely on the output.

Interpreting Results:

Check Flags before copying a generated row. Unicast; local is the usual choice for lab-only interface values. Unicast; universal can make a documentation row resemble assigned hardware space, but a generated suffix is not vendor-issued. Multicast rows are group-address examples, not ordinary interface identities.

Lead Anatomy explains the first generated row byte by byte. The I/G bit and U/L bit identify the address class, OUI / first 24 bits shows the visible prefix area, and Policy reports whether the selected rules changed the supplied first octet.

MAC address generator result cues and verification steps
Output Cue Meaning Check Before Use
Unicast; local Individual address in locally administered space. Compare against the VM, DHCP, switch, or Wi-Fi inventory where it will be used.
Unicast; universal Individual address with universal-administration flag bits. Do not claim the full address was issued by the prefix owner unless you have that assignment.
Multicast Group address shape for protocol or parser testing. Avoid using it as the source address for a single interface.
Policy value says adjusted The selected I/G or U/L rule changed the first octet. Decide whether exact prefix preservation or the selected flag policy matters more.
Random address space is small The fixed prefix and flag policy leave few possible unique values. Shorten the prefix, reduce Quantity, or turn uniqueness off only when duplicates are acceptable.

A realistic-looking row can still collide with something already present. Treat the generated batch as a starting point for controlled labs and fixtures, then verify it against the address span that will actually see the traffic.

Technical Details:

An Ethernet-style MAC address is usually an EUI-48 value shown as six octets. IEEE terminology also calls the first-octet I/G bit the M bit, and the U/L bit the X bit. The tool exposes those two bits as address-type choices because they change whether a generated value should be read as an individual address, a group address, globally administered space, or locally administered space.

Rule Core:

First octet MAC address rules used by the generator
First-Octet Rule Value 0 Value 1 Where It Appears
I/G bit Individual, usually unicast Group, multicast or broadcast Flags, I/G bit, and first-octet labels.
U/L bit Universally administered Locally administered Flags, U/L bit, and SLAP quadrant labels.
Y and Z bits Used only when U/L is 1 and the Structured Local Address Plan is relevant. Lead Anatomy reports the local quadrant for the first row.

The generator first normalizes the prefix, then fills the remaining bytes, applies the chosen first-octet rules when requested, rejects duplicate rows if batch uniqueness is enabled, and renders the same bytes in several notations.

Generation Path:

MAC address generation stages and visible results
Stage Rule Visible Result
Prefix normalization Separators and spaces are removed. The prefix must contain only hexadecimal digits and must end on a full byte. Prefix / OUI help text and validation messages.
Byte generation Missing octets are filled until the address has six bytes. A blank seed uses browser cryptographic randomness when available; a seed recreates the same sequence for the same settings. Generated MACs rows and Random source in Batch Audit.
First-octet policy The selected I/G and U/L values are enforced unless prefix preservation is selected. Random first-octet flags varies those two bits too. Flags, Lead Anatomy, and adjustment warnings.
Capacity check The available unique count is the number of values left after fixed prefix bytes and controlled flag bits are removed from the random address space. Random address space and any unique-batch validation message.
Formatting Colon, hyphen, Cisco dot, and plain hex are views of the same 48-bit value. MAC address, Plain hex, and Format Matrix.

Capacity shrinks quickly when a long prefix is fixed. A full six-byte prefix leaves only one possible value. A one-byte local-unicast prefix leaves enough suffix space for ordinary fixture batches, while a three-byte vendor-looking prefix leaves the lower 24 bits to generate. The unique-batch guard only checks the current batch; it cannot know what another network already uses.

SLAP Quadrants:

Structured Local Address Plan quadrant labels
U/L Y Z Lead Anatomy Label Plain Meaning
0 any any Universal space Local quadrant labels do not apply.
1 0 0 AAI local quadrant Administratively assigned local space.
1 0 1 ELI local quadrant Extended local identifier space.
1 1 0 Reserved local quadrant Reserved local space.
1 1 1 SAI local quadrant Standard assigned identifier space.

Seeded batches are repeatable, not more private. Use a seed for snapshots, test fixtures, and documentation that must stay reproducible. Leave it blank when you want a fresh set of random dummy values.

Privacy Notes:

The batch is generated in the browser and does not require a vendor lookup or a server-side address check. That keeps sample values local during generation, but generated MAC addresses can still resemble identifiers used in real networks.

  • Do not paste production MAC addresses into public examples, tickets, or fixture files unless those identifiers are meant to be shared.
  • Treat a deterministic seed as a repeat label. Anyone using the same seed and settings can recreate the same rows.
  • Do not use generated values to bypass device controls, impersonate hardware, or claim that an IEEE prefix owner assigned the full address.

Advanced Tips:

  • Use Preserve first-octet prefix bits when a prefix is the subject of the test, such as checking that a parser reads 33:33 as multicast instead of forcing it into another policy.
  • Shorten Prefix / OUI when Random address space becomes too small for the requested Quantity. A three-byte prefix still leaves 24 random suffix bits, but a full six-byte prefix leaves only one value.
  • Keep Unique within batch on for inventories, fixture files, and DHCP tables. Turn it off only when testing duplicate-handling behavior is the point of the batch.
  • Use Deterministic seed for screenshots, unit fixtures, or repeatable docs, then remove it when you need a fresh set of dummy values.
  • Check Format Matrix before handing values to another system. A Windows dialog, Cisco-style output, and API payload can all need the same bytes in different notation.

Worked Examples:

Repeatable Docker-style fixture

Set Prefix / OUI to 02:42, choose Locally administered unicast, select lowercase colon notation, set Quantity to 3, and enter the seed qa-lab-2026. The first MAC address is 02:42:84:88:70:63, with Plain hex 024284887063, OUI / prefix 02:42:84, NIC suffix 88:70:63, and Flags Unicast; local. The row is repeatable lab data, not a hardware assignment.

Vendor-looking documentation row

Set Prefix / OUI to 00:50:56, choose Universally administered unicast, select Preserve first-octet prefix bits, use uppercase hyphen notation, and enter the seed vmware-doc. One generated row is 00-50-56-F2-51-17. Flags reads Unicast; universal, and Lead Anatomy reports Universal space. That makes a clear documentation sample, but it does not prove that the generated suffix belongs to any real device.

Prefix flag adjustment

Set Prefix / OUI to 33:33, choose Universally administered multicast, keep first-octet enforcement on, use Cisco dot notation, and enter the seed ipv6-multicast-demo. The first row becomes 3133.5642.94fb because the selected policy clears the U/L bit in the supplied first octet. The warning about an adjusted first octet tells you to choose between exact prefix preservation and policy-correct flags.

Unique-batch limit

If Prefix / OUI is the full value 02:42:84:88:70:63, Quantity is 3, and Unique within batch is on, only one row can be produced. Batch Audit reports the limited random address space, and the warning says the generator created 1 unique row before the available space was exhausted. Shorten the prefix or reduce the quantity before using the batch.

FAQ:

What setting should I use for dummy MAC addresses?

Use Local VM batch or choose Locally administered unicast. That produces individual local-address values, which are the normal shape for lab-only interfaces, fixtures, and sample inventories.

Can this generate an official vendor MAC address?

No. A vendor-looking prefix can match the shape of an assigned address block, but the generated suffix is synthetic unless you control the assignment for that prefix.

Why did my first prefix byte change?

Enforce selected type/admin bits can modify the first octet so the row matches the selected I/G and U/L policy. Use Preserve first-octet prefix bits when the exact first byte matters.

Which prefix formats are accepted?

Use hexadecimal bytes with optional colons, hyphens, dots, or spaces. The prefix can be blank or up to 12 hex digits, but it must end on a full byte, such as 02, 02:42, or 00:50:56.

What does a deterministic seed do?

A seed recreates the same batch for the same settings. It helps with tests, screenshots, and fixture files, but it should not be treated as a secret or a privacy feature.

Why do I see a unique-batch warning?

The fixed prefix and selected policy may leave fewer possible addresses than the requested Quantity. Reduce the quantity, shorten the prefix, or turn off Unique within batch only when duplicates are acceptable.

Glossary:

MAC address
A link-layer identifier commonly shown as six hexadecimal octets for Ethernet and Wi-Fi interfaces.
EUI-48
The 48-bit identifier format often used for MAC addresses.
OUI
An organizationally unique identifier, commonly seen as the first 24 bits in universal-address examples.
I/G bit
The first-octet bit that distinguishes individual addresses from group addresses.
U/L bit
The first-octet bit that distinguishes universal administration from local administration.
Locally administered address
An address whose uniqueness must be managed within the local span where it is used.
SLAP
The Structured Local Address Plan that divides local MAC address space into named quadrants.