Skip to main content

Retrieve, store and query information about Regional Internet Registries

Project description

Retrieve, store and query information about Regional Internet Registries

Build_Status codecov PyPI_Version Python_Version

Installation

pip install iprir

Usage

Query by ip:

>>> import iprir
>>> from ipaddress import IPv4Address, IPv6Address
>>> iprir.by_ip(IPv4Address('8.8.8.8'))
RIRRecord(country='US', type='ipv4', start='8.0.0.0', value='16777216', status='allocated')

Attributes of RIRRecord:

>>> record = iprir.by_ip(IPv4Address('8.8.8.8'))
>>> record.ipv4
IPv4Address('8.0.0.0')
>>> record.ipv4_network
IPv4Network('8.0.0.0/8')
>>> record.length
16777216
>>> record.as_int
134217728

Use IpSet:

>>> us = iprir.by_country('ipv4', 'US')
>>> IPv4Address('8.8.4.4') in us
True
>>> IPv4Address('1.2.3.4') in us
False
>>> from iprir.ipset import IpSet
>>> db = iprir.get_db()
>>> us_and_ca_v6 = IpSet(db.by_country('ipv6', 'US') + db.by_country('ipv6', 'CA'))
>>> IPv6Address('2001:4860:4860::8888') in us_and_ca_v6
True

Update database:

# update text db and sqlite db
python3 -m iprir.updater

# show more choices
python3 -m iprir.updater -h

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 iprir, version 0.3.0.dev0
Filename, size & hash File type Python version Upload date
iprir-0.3.0.dev0-py3-none-any.whl (12.4 MB) View hashes Wheel py3
iprir-0.3.0.dev0.tar.gz (8.7 kB) View hashes Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page