MAC address

A Medium Access Control (MAC) address is a hardware address used by IEEE 802.3 implementations of Ethernet. Each network device has a unique MAC address. When we send an Ethernet frame, we add our own MAC address in the source field, and the receiver's MAC address in the destination field of the Ethernet header.

The MAC address is 48 bits or 6 bytes in total.  We write it in hexadecimal. For example:

  • 0000.0c12.3456

Above we have four hexadecimal characters, separated by a dot. There are two other formatting options:

  • 00:00:0c:12:34:56
  • 00-00-0c-12-34-56

All three refer to the same MAC address. Cisco devices often use the first formatting option, Windows computers use the dash in between.

Normally, a MAC address refers to a single device on the network. We call this a unicast MAC address. There is also a Broadcast MAC address for broadcast traffic (which means that everyone on the network will receive the frame) and Multicast MAC addresses (for a group of receivers).

MAC addresses have to be unique, otherwise, it’s possible that an Ethernet frame ends up at two receivers. To make MAC addresses unique, each networking vendor that wants to build network cards has to ask the IEEE for a unique 24-bit code called the OUI (Organizationally Unique Identifier).

For example, all MAC addresses that start with 0000.0c are owned by Cisco.

The remaining 24 bits of the MAC address are then assigned by the vendor. Each network card that they create will have a unique MAC address. The address that the vendor has assigned is also called the BIA (burned-in address).

When you send a broadcast, the destination MAC address will be FFFF.FFFF.FFFF.

There is also the special case of a MAC address of all zeros.