To get the MAC address of a PC, open the properties of the network adapter you want to identify and read its physical or hardware address.
On Windows, ipconfig /all shows it beside “Physical Address”; on macOS, read the ether line from ifconfig; on Linux, read link/ether from ip link show. These methods read the address reported by the operating system and do not change it.
A PC can have more than one network adapter, so the important first step is deciding which adapter the address must identify. Ethernet, Wi-Fi, VPN, virtual-machine, and other device interfaces may all appear in adapter lists.

Find the MAC address on Windows
- Open Command Prompt: press the Windows key, type Command Prompt, and launch it.
- Run ipconfig /all and review the sections headed by each network adapter.
- Locate the section for the interface you want, such as the active Ethernet or Wi-Fi connection. Skip tunnel or virtual adapters unless one of those is specifically the subject of your task.
- Read the value labeled Physical Address, then copy the six octets without the field label.
The graphical route in Windows 10 and Windows 11 is Settings > Network & Internet > Wi-Fi or Ethernet > Hardware properties. Look for the physical or MAC address on that adapter’s page. Labels can differ by Windows release, so the command output is a useful cross-check when a driver page hides or renames the field.
Do not assume the first adapter shown is the one you need. On a laptop with both Wi-Fi and Ethernet, the two sections represent separate interfaces. A VPN may also have its own virtual adapter and address.
Find the MAC address on macOS or Linux
macOS
- Run networksetup -listallhardwareports to map hardware ports such as Wi-Fi or Ethernet to their network device names.
- Run ifconfig and find the matching device section.
- Read the hexadecimal value on the line beginning with ether. This is the address associated with that interface.
Identify which service is carrying the traffic before copying a value. A Mac can expose several interfaces at once, and the interface commonly used for Wi-Fi is not guaranteed to have the same name on every installation.
Linux
- Run ip link show to list the network interfaces.
- Identify the interface connected to the network you are examining. Interface names beginning with en or wl are common conventions, not fixed device identities.
- Read the 48-bit value on the link/ether line and copy it in the displayed notation.
| System | Command | Field to read | Selection note |
|---|---|---|---|
| Windows | ipconfig /all | Physical Address | Match the adapter heading to the connection you need. |
| macOS | ifconfig | ether | Map the correct port with networksetup if names are unclear. |
| Linux | ip link show | link/ether | Choose the connected Ethernet or Wi-Fi interface. |
These commands return the address exposed by each interface. They do not reveal an IEEE vendor assignment for the hardware, and they do not establish whether a value is safe to assign elsewhere.
Choose the adapter that matches the task
The “PC’s MAC address” can be an incomplete description when several interfaces exist. Use this checklist to narrow the target:
- For a wired connection, use the Ethernet interface. For a wireless connection, use the Wi-Fi interface associated with the current network.
- Treat VPN, hypervisor, container, and other virtual adapters as their own identifiers. They do not reveal the hardware address of the PC’s built-in Ethernet or Wi-Fi adapter.
- Bluetooth and other device-specific addresses are separate identifiers. Do not substitute one for the address of the network adapter.
- Check for a private or randomized Wi-Fi address setting. When enabled, the address used for a particular network can differ from another identifier exposed by the adapter, so record it under the same network and adapter context in which it will be used.
For an inventory record, include the adapter name, device type, operating system, and the date or network context. Those details prevent a later reader from assuming that two records refer to the same interface.
Confirm the format before using it
A typical PC Ethernet or Wi-Fi MAC address is a 48-bit identifier represented as six two-digit hexadecimal octets. Colons, hyphens, or no separator may be used, and letter case does not change the value. Read the exact field supplied by the operating system rather than reconstructing it from an IP address.
An IPv4 address uses dotted decimal, while an IPv6 address uses colon-separated hexadecimal groups. If software expects a 12-character hexadecimal value, remove separators only after confirming that the source value is the MAC address. Preserve the original adapter context in your notes because the text alone cannot show which interface it came from.
| Source | Purpose | How it is obtained | Key limitation |
|---|---|---|---|
| PC network adapter | Identify the interface used by the operating system. | Adapter properties or a system command. | A PC may expose several addresses, and a network may use a private Wi-Fi value. |
| Generated test value | Populate authorized lab, fixture, VM, documentation, or software-test data. | Local random generation in the browser. | It is text only, does not verify that an address is unused, and is not guaranteed unique. |
Create test addresses without touching hardware
Retrieving a real adapter address and creating a synthetic one are different tasks. The MAC Address Generator creates 1–20 random 48-bit locally administered unicast addresses for labs, documentation, fixtures, virtual machines, and software tests. It generates text only: it never reads your PC’s interfaces, changes a network card, scans a network, bypasses access controls, looks up a vendor, or verifies that an address is unused.
- Choose how many local test addresses to create, from 1 to 20. Select colon, hyphen, or plain hexadecimal formatting, along with uppercase or lowercase letters.
- Select Generate local MAC addresses. The tool obtains fresh bytes from the browser’s Web Crypto cryptographic random source and generates the results locally.
- Check for collisions in your own allocation system before assigning any generated value. Random generation does not guarantee uniqueness across all time or systems.
The first octet is modified so the locally administered U/L bit is 1 and the individual/group I/G bit is 0. The remaining 46 bits remain random. This produces a local unicast address rather than a multicast address or a value that pretends to use an IEEE-assigned vendor OUI. The IETF RFC 7042 explains the U/L and I/G address bits.
Every result contains six octets, and the implementation writes exactly two hexadecimal digits per byte. Collisions are unlikely for a small test set but remain possible, so a production network, hypervisor, orchestrator, or device-management system should maintain its own allocation registry and detect duplicates.
Use actual and test addresses responsibly
Reading an address and assigning one are different permissions. Changing a MAC address can disrupt network access, violate organizational policy, trigger security monitoring, or impersonate another device. Use real values only in environments you own or are authorized to administer, and do not copy one onto a live interface merely because it has the correct format.
Generated local addresses are intended for controlled test contexts unless your own allocation process explicitly accepts them. The generator does not replace a production registry, an unused-address check, or an approval workflow.
For hardware manufacture, globally unique assignments, regulated networks, or vendor identification, follow the appropriate IEEE registration and organizational allocation process described in the IEEE Guidelines for Use of EUI, OUI, and CID.