Skip to content

samuelmeuli/anonymize-ip

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

About

👤 Python library for anonymizing IP addresses

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages