IPy
Class and tools for handling of IPv4 and IPv6 addresses and networks
What it is and what it does
IPy is a lightweight Python library for working with IP addresses and networks. It provides an IP class that parses and represents IPv4 and IPv6 addresses in multiple formats—dotted decimal, hexadecimal, CIDR notation, and range notation—and converts between them. It also includes an IPSet class for aggregating, subtracting, and performing set operations on multiple address ranges.
The library is useful for network administration, firewall rule generation, DNS reverse-lookup generation, and any task requiring flexible IP address manipulation. It has no external runtime dependencies and works across operating systems. However, the package is dormant: the last release was 2020-12-01, and there is no active maintenance.
Use it for:
- Parse and normalize IP addresses in different formats (hex, CIDR, range) for consistent handling in network tools
- Generate reverse DNS names for IP ranges to populate DNS zone files or audit reverse zones
- Aggregate overlapping IP ranges into minimal CIDR blocks for firewall rules or routing tables
- Subtract IP ranges to identify available address space or gaps in network allocations
- Iterate over all addresses in a network block for scanning, validation, or inventory tasks
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
IPy provides Python classes for parsing, manipulating, and working with IPv4 and IPv6 addresses and networks in multiple formats, including CIDR notation, hex, and range notation.
Yes, with conditions. IPy is stable, permissively licensed, and has no dependencies, making it suitable for production use in network administration and scripting tasks. However, install it only if you need its specific IP manipulation features and can accept that the package is unmaintained—no updates or bug fixes are expected. Verify compatibility with your Python version before relying on it.
Install
ipy on PyPI
pip
pip install ipyuv
uv add ipypoetry
poetry add ipyInstalling IPy
Before you install
High install friction due to source-only distribution. No runtime dependencies, but the package is dormant with last release on 2020-12-01.
License in practice
BSD License (permissive) means you can use, modify, and distribute IPy freely in commercial and open-source projects with minimal restrictions, provided you include the license notice.
Quickstart
from IPy import IP
ip = IP('127.0.0.0/30')
for addr in ip:
print(addr)
ip.reverseNames()
Verify before relying
- Whether the package works reliably on Python versions beyond 3.7 (documentation states 2.6-3.7 support)
- Current maintenance status and whether the GitHub repository accepts contributions or bug reports
Package facts
| License | BSD License (permissive) |
| Python support | not specified |
| Install friction | high — source build required |
| Runtime dependencies | none |
| Maintenance | dormant — 2,082 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,565,942/month — #3,758 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: IPy-1.01.tar.gz
Keywords: ipv4, ipv6, netmask
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
ipaddrProvides utilities for parsing, validating, and…
permissive · top 15,000 on PyPI
py-radixImplements a radix tree data structure for…
permissive · top 15,000 on PyPI
cidr-trieStores and queries CIDR IP address blocks (IPv4…
permissive · top 15,000 on PyPI
iptoolsProvides utilities for parsing, validating, and…
permissive · top 15,000 on PyPI
netaddrRepresents and manipulates IPv4, IPv6, MAC…
permissive · top 5,000 on PyPI
ifcfgIfcfg parses network interface configuration…
permissive · top 15,000 on PyPI
ipaddressProvides IPv4 and IPv6 address manipulation for…
permissive · top 5,000 on PyPI
isc-dhcp-leasesReads and parses ISC DHCP server lease files…
permissive · top 15,000 on PyPI
ipwhoisRetrieves and parses whois and RDAP data for…
permissive · top 15,000 on PyPI
ciscoconfparseParses and queries Cisco IOS-style network…
copyleft · top 15,000 on PyPI