Skip to main content

Check whether an IP address belongs to a cloud provider

Project description

RadixTarget

Python Version License Black tests Codecov

RadixTarget is a performant radix implementation designed for quick lookups of IP addresses/networks and DNS hostnames.

RadixTarget is:

  • Written in pure python
  • Capable of ~100,000 lookups per second regardless of database size
  • 100% test coverage
  • Used by:
    • BBOT
    • cloudcheck Written in pure python and capable of roughly 100,000 lookups per second regardless of database size, it's perfect for production .

Installation (PyPi)

pip install radixtarget

Example Usage

from radixtarget import RadixTarget

rt = RadixTarget()

# IPv4
rt.add("192.168.1.0/24")
rt.get("192.168.1.10") # IPv4Network("192.168.1.0/24")
rt.get("192.168.2.10") # None

# IPv6
rt.add("dead::/64")
rt.get("dead::beef") # IPv6Network("dead::/64")
rt.get("dead:cafe::beef") # None

# DNS
rt.add("net")
rt.add("www.example.com")
rt.add("test.www.example.com")
rt.get("net") # "net"
rt.get("evilcorp.net") # "net"
rt.get("www.example.com") # "www.example.com"
rt.get("asdf.test.www.example.com") # "test.www.example.com"
rt.get("example.com") # None

# Custom data nodes
rt.add("evilcorp.co.uk", "custom_data")
rt.get("www.evilcorp.co.uk") # "custom_data"

Project details


Download files

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

Source Distribution

radixtarget-2.0.0.32.tar.gz (103.6 kB view details)

Uploaded Source

Built Distribution

radixtarget-2.0.0.32-py3-none-any.whl (104.1 kB view details)

Uploaded Python 3

File details

Details for the file radixtarget-2.0.0.32.tar.gz.

File metadata

  • Download URL: radixtarget-2.0.0.32.tar.gz
  • Upload date:
  • Size: 103.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.20

File hashes

Hashes for radixtarget-2.0.0.32.tar.gz
Algorithm Hash digest
SHA256 8e2051ee06ed16d20762e70a8a7d7e656b30f670c611c522d734ee6d40f2d320
MD5 975f4314f2e0a3b76fd5dcf18bd2c775
BLAKE2b-256 583048fa52faf6e2adc0b933f194a34df88e7499155e0eeed6d32a0ec0a25d67

See more details on using hashes here.

File details

Details for the file radixtarget-2.0.0.32-py3-none-any.whl.

File metadata

File hashes

Hashes for radixtarget-2.0.0.32-py3-none-any.whl
Algorithm Hash digest
SHA256 9040225a48c85efa7ccc4931c1c2f5ba6444fed121c58c005b7dc0e74b3c07b2
MD5 ae3887e03c624c4d58df3810c3a00cce
BLAKE2b-256 a6dd6d794a41041d4789956bb02271ffb0139028f3e67479f7fd062528bda5ba

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page