Skip to content
👤 Python library for anonymizing IP addresses
Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci
anonymizeip
tests
.editorconfig
.gitignore
LICENSE
MANIFEST.in
Pipfile
Pipfile.lock
README.md
setup.py

README.md

anonymize_ip

This is a simple Python library for anonymizing IP addresses. Both IPv4 and IPv6 addresses are supported.

Examples:

  • IPv4: 95.239.169.1195.239.169.0
  • IPv6: 5219:3a94:fdc5:19e1:70a3:b2c4:40ef:ae035219:3a94:fdc5:19e1::

Usage

pip install anonymizeip
from anonymizeip import anonymize_ip

address = "fe80::0202:b3ff:fe1e:8329"
anonymized = anonymize_ip(address)
print(anonymized)

# Prints "fe80::"

Settings

The number of address blocks that are set to 0 can be customized.

Besides the IP address, the function anonymize_ip takes two optional parameters:

anonymize_ip(
  address,
  ipv4_mask="...",
  ipv6_mask="..."
)
  • ipv4_mask: Defaults to 255.255.255.0, i.e. the last octet will be anonymized (set to 0)
  • ipv6_mask: Defaults to ffff:ffff:ffff:ffff:: (same as ffff:ffff:ffff:ffff:0:0:0:0), i.e. the last four blocks will be anonymized (set to 0)

Development

  1. git clone
  2. pipenv install --dev
  3. Make your code modifications
  4. pipenv run test
  5. pipenv run lint

Contributions are always welcome. Please first discuss changes via issue before submitting a pull request.

Credits

The implementation of this library was strongly inspired by php-ip-anonymizer by Geert Wirken.

You can’t perform that action at this time.