Skip to main content

Fast IPv4 and IPv6 prefix aggregator written in Python.

Project description

aggregate-prefixes

Fast IPv4 and IPv6 prefix aggregator written in Python.

Gets a list of unsorted IPv4 or IPv6 prefixes from argument or SDTIN and returns a sorted list of aggregates to STDOUT Errors go to STDERR.

CLI Syntax for executable

usage: aggregate-prefixes [-h] [--max-length [LENGTH]] [--truncate [MASK]]
                          [--verbose] [--version]
                          prefixes

Aggregates IPv4 or IPv6 prefixes from file or STDIN

positional arguments:
  prefixes              Text file of unsorted list of IPv4 or IPv6 prefixes.
                        Use '-' for STDIN.

optional arguments:
  -h, --help            show this help message and exit
  --max-length [LENGTH], -m [LENGTH]
                        Discard longer prefixes prior to processing
  --truncate [MASK], -t [MASK]
                        Ttruncate IP/mask to network/mask
  --verbose, -v         Display verbose information about the optimisations
  --version, -V         show program's version number and exit

Usage as module

$ python
Python 2.7.14+ (default, Apr  2 2018, 04:16:25) 
[GCC 7.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
>>> from aggregate_prefixes import aggregate_prefixes
>>> list(aggregate_prefixes(['192.0.2.0/32', '192.0.2.1/32', '192.0.2.2/32']))
['192.0.2.0/31', '192.0.2.2/32']
>>> 

Python compatibility

Tested with:

  • Python 2.7.15
  • Python 3.6.5

Project details


Download files

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

Files for aggregate-prefixes, version 0.6.1
Filename, size File type Python version Upload date Hashes
Filename, size aggregate_prefixes-0.6.1-py2.7.egg (17.5 kB) File type Egg Python version 2.7 Upload date Hashes View
Filename, size aggregate_prefixes-0.6.1-py2-none-any.whl (12.2 kB) File type Wheel Python version py2 Upload date Hashes View
Filename, size aggregate_prefixes-0.6.1-py3.7.egg (17.8 kB) File type Egg Python version 3.7 Upload date Hashes View
Filename, size aggregate_prefixes-0.6.1-py3-none-any.whl (12.2 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size aggregate_prefixes-0.6.1.tar.gz (5.4 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page