Parse a MAC address from any format (colon, hyphen, Cisco-dotted, bare) and output every other format, plus OUI/NIC split, decimal, binary, and the unicast/multicast and U/L bits.
A MAC (Media Access Control) address is a 48-bit Layer 2 identifier burned into every Ethernet, Wi-Fi, and Bluetooth interface. Switches forward frames based on MAC addresses, and an interface only accepts frames whose destination MAC matches its own (or a multicast/broadcast group it's joined). Where IP addresses move with you across networks, MACs identify the physical NIC.
The format zoo is mostly historical. Linux and macOS render colon-separated (aa:bb:cc:dd:ee:ff), Windows uses hyphens (AA-BB-CC-DD-EE-FF), Cisco IOS picked dotted-quad (aabb.ccdd.eeff), and many vendor labels print bare hex (aabbccddeeff). They all encode the same 48 bits — engineers cross-reference between them constantly when correlating switch tables, ARP caches, DHCP leases, and packet captures.
The 48 bits split into two halves. The first 24 bits are the OUI (Organizationally Unique Identifier) — assigned by IEEE and tied to a specific vendor. The last 24 bits are the NIC (or device ID), assigned by the vendor however they want. Looking up an unknown MAC's OUI is a fast way to fingerprint mystery gear on a network: a MAC starting with 00:1b:21 is Intel, 00:50:56 is VMware, b8:27:eb is Raspberry Pi.
Two bits in the first byte carry meaning beyond identification. The I/G bit (least-significant bit, bit 0) marks whether the address is unicast (0) or multicast (1). Common multicast prefixes: 01:00:5e:... for IPv4 multicast, 33:33:... for IPv6 multicast, and ff:ff:ff:ff:ff:ff for broadcast (all-ones, technically a special multicast). The U/L bit (bit 1) marks whether the address is universally administered (0, vendor-assigned via OUI) or locally administered (1, overridden by software). VMs, containers, and modern Wi-Fi MAC randomization all flip the U/L bit — useful for spotting non-physical or randomized clients on the network.
Because of randomization, OUI lookup on Wi-Fi clients is increasingly unreliable. iOS, Android, Windows, and macOS all randomize the MAC per-SSID by default. Wired NICs still show their real OUI, but anything wireless should be treated as potentially randomized unless the device is explicitly configured otherwise.