Skip to main content

madmac: MAC address generator

Project description

MadMAC Build Status

MAC address generator library for testers.

Content

Installation

Using pip:

pip install madmac

Using source:

$ git clone https://github.com/laminko/madmac.git
$ cd madmac
$ python setup.py install

Usage

As a command

Can be used madmac as command. The following will generate random MAC address.

madmac

To see help, enter madmac --help.

madmac --help
usage: madmac [-h] [-o OUI] [-r START] [-s STOP] [-t TOTAL] [-d DELIMITER]
              [-c CASE]

MAC address generator library for testers.

optional arguments:
  -h, --help            show this help message and exit
  -o OUI, --oui OUI     6-digit organizationally unique identifier
  -r START, --start START
                        NIC specific start address
  -s STOP, --stop STOP  NIC specific end address
  -t TOTAL, --total TOTAL
                        Number of MACs to generate
  -d DELIMITER, --delimiter DELIMITER
                        Delimiter for MAC address
  -c CASE, --case CASE  Use lower or upper

NOTE: madmac is not a binary file. You need to install python 3.5 to execute the command.

As a module

Import MacGenerator class from madmac module. And create an object using MacGenerator and call its member generate() function. generate() function will return python generator object.

The following code will generate single MAC address using default values.

from madmac import MacGenerator

macg = MacGenerator()
macs = macg.generate()  # generator object which contains one item
from pprint import pprint
pprint(list(macs))

Default values are as follows:

# 'oui':  None,
# 'start': None,
# 'stop': None,
# 'total': 1,
# 'delimiter': ':',
# 'case': 'lower'

One can provide oui:

from madmac import MacGenerator

macg = MacGenerator(oui='F0-9F-C2')
list(macg.generate())

Also specify start address and end address if they are known:

from madmac import MacGenerator

start = '00-B0-A0'
stop = '00-B0-DF'
macg = MacGenerator(start=start, stop=stop)

NOTE: Above snippet describes to use random oui, but to use certain range from start and stop values. It will ignore total parameter. Delimiter and Case will be default values.

Sometimes, we might want to generate certain amount of MAC addresses:

from madmac import MacGenerator

macg = MacGenerator(total=100)

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

madmac-1.0.1.tar.gz (5.4 kB view details)

Uploaded Source

Built Distribution

madmac-1.0.1-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file madmac-1.0.1.tar.gz.

File metadata

  • Download URL: madmac-1.0.1.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.5.6

File hashes

Hashes for madmac-1.0.1.tar.gz
Algorithm Hash digest
SHA256 06b581352f827280c57e0f35282c635439eb98e9cfab9ed517fbade4db2acc9b
MD5 99de1763e013cf553073727a8a1d0931
BLAKE2b-256 862c3867b95f154f48164d927ef45f43e0d0d62ecf7ab099edb131caf4507bbb

See more details on using hashes here.

File details

Details for the file madmac-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: madmac-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.5.6

File hashes

Hashes for madmac-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 af4da44b9d586fb176af6cc6a42ea0bda5408f247b6376714f1bebc7d968aaf7
MD5 cdcb7cd7060866bb3b3e5fa168f22778
BLAKE2b-256 dbedc41925b65b172728971c8e3618ff23dcb9d03218ac70fea846018f061f00

See more details on using hashes here.

Supported by

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