Skip to main content

A command-line tool to spoof your network interface's MAC address on Linux systems.

Project description

MAC Address Spoofer

CI (master) PyPI Version PyPI Downloads

A command-line tool to spoof your network interface's MAC address on Linux systems.

MacSpoofer Demo

What is a MAC Address?

A Media Access Control (MAC) address is a unique identifier assigned to a network interface controller (NIC) for use as a network address in communications within a network segment. This identifier is used in most IEEE 802 networking technologies, including Ethernet, Wi-Fi, and Bluetooth.

Changing your MAC address can be useful for:

  • Privacy - Prevent tracking across networks
  • Testing - Simulate different network devices
  • Bypassing restrictions - Some networks filter by MAC address

MAC Address Structure

A MAC address is a 12-digit hexadecimal number (6 bytes), typically represented in colon-hexadecimal notation (e.g., 00:1A:2B:3C:4D:5E).

Bytes Name Description
First 3 bytes OUI (Organizationally Unique Identifier) Identifies the manufacturer
Last 3 bytes NIC (Network Interface Controller) Device-specific identifier

Features

  • 🎲 Random MAC generation - Generate safe, locally-administered unicast addresses
  • 🏭 Vendor spoofing - Mimic devices from Samsung, Apple, Intel, Microsoft, Huawei, Google, or Cisco
  • 🖥️ Interactive TUI - Easy to use text interface
  • Auto mode - Non-interactive operation for scripts
  • 🔧 CI mode - Designed for automated testing pipelines

Compatibility

The tool is compatible with Linux distributions only.

Tested on:

  • Ubuntu - 16.04.7, 18.04.6, 20.04.6, 22.04.5, 24.04.2
  • Debian - 8, 9, 10, 11, 12
  • Kali - 2021.4a, 2022.4, 2023.4, 2024.4, 2025.1
  • Raspbian - 8, 9, 10, 11, 12

Installation

Via pip (recommended)

pip install macspoofer

From source

chmod +x setup.sh
sudo ./setup.sh

Usage

Find Your Interface Name

ifconfig -a
# or
ip link show

Interactive Mode (TUI)

sudo -E macspoofer -i <interface>
# or
sudo -E python3 main.py -i <interface>

Auto Mode (Non-Interactive)

sudo -E macspoofer -i <interface> --auto
# or
sudo -E python3 main.py -i <interface> --auto

Command Line Options

Option Description
-i <interface> Network interface name (e.g., wlan0, eth0) [Required]
--auto Non-interactive mode: generate and apply a random unicast MAC
--ci CI mode: for automated testing
--help Show help message and usage examples
--version Show version information

Resources

💡 Want more vendors? Feel free to open a PR to add more vendor OUIs!

License

MIT License


© 2022-2026 Daniel Kirshner. All rights reserved.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

macspoofer-1.0.3.tar.gz (1.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

macspoofer-1.0.3-py3-none-any.whl (349.6 kB view details)

Uploaded Python 3

File details

Details for the file macspoofer-1.0.3.tar.gz.

File metadata

  • Download URL: macspoofer-1.0.3.tar.gz
  • Upload date:
  • Size: 1.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for macspoofer-1.0.3.tar.gz
Algorithm Hash digest
SHA256 c9df68f3c582e58e42f05e5dab8dca0c5da02bfdf2add47edc2c282d4064b86d
MD5 ce069ae0a19c53897b772163788c4653
BLAKE2b-256 8feedfd1685a7297cfed4697a8c5f8ad1362cb59131ddce7d10ba35fbdc0ee54

See more details on using hashes here.

Provenance

The following attestation bundles were made for macspoofer-1.0.3.tar.gz:

Publisher: publish.yml on DanielKirshner/MacSpoofer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file macspoofer-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: macspoofer-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 349.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for macspoofer-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 f7d3386df39df16ae75d737a7806d2cddd2f3e723ac5f88625022fed9445d8b8
MD5 0ff9b87bfa9d7f4235864e3513433343
BLAKE2b-256 0eae8a0baa71e09cd42f362aa091772cc2d3f7a13175ff995f9d901f18770f7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for macspoofer-1.0.3-py3-none-any.whl:

Publisher: publish.yml on DanielKirshner/MacSpoofer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page