Skip to main content

Democritus functions for working with asns.

Project description

Democritus Asns

PyPI CI Lint codecov The Democritus Project uses semver version 2.0.0 The Democritus Project uses ruff to format and lint code License: LGPL v3

Democritus functions[1] for working with asns.

[1] Democritus functions are simple, effective, modular, well-tested, and well-documented Python functions.

We use d8s (pronounced "dee-eights") as an abbreviation for democritus (you can read more about this here).

Installation

pip install d8s-asns

Usage

You import the library like:

from d8s_asns import *

Once imported, you can use any of the functions listed below.

Functions

  • def asn_standardize(as_number: str) -> Optional[str]:
        """Standardize the ASN format."""
    
  • def standardize_asn_decorator(func):
        """Standardize the first argument as an ASN."""
    
  • def asn_announced_prefixes(as_number: str) -> Iterable[str]:
        """."""
    
  • def asn_adjacent_asns(as_number: str) -> Iterable[str]:
        """."""
    
  • def asns_find(text: str) -> Iterable[str]:
        """Parse ASNs from the given text."""
    
  • def asns() -> Iterable[Tuple[str, str]]:
        """Get a list of ASNs from http://bgp.potaroo.net/as1221/asnames.txt."""
    
  • def asn_number(as_number: str) -> int:
        """Get the number value of the given ASN."""
    
  • def asn_is_private(as_number: str) -> bool:
        """Check if the given ASN is private."""
    
  • def asns_private_numbers() -> Iterable[int]:
        """Return the reserved (private) ASN numbers.
    
    Data is collected from:
    
    https://www.iana.org/assignments/iana-as-numbers-special-registry/iana-as-numbers-special-registry.xhtml
    
    This function only returns the private ASN numbers.
    The `asns_private_ranges` function returns more information about the private ASN ranges."""
    
  • def asns_private_ranges() -> List[Dict[str, str]]:
        """Return the reserved (private) ASN ranges.
    
    Data is collected from:
    
    https://www.iana.org/assignments/iana-as-numbers-special-registry/iana-as-numbers-special-registry.xhtml"""
    
  • def asn_name(as_number: str) -> Optional[str]:
        """Get the name of the given asn."""
    

Development

👋  If you want to get involved in this project, we have some short, helpful guides below:

If you have any questions or there is anything we did not cover, please raise an issue and we'll be happy to help.

Credits

This package was created with Cookiecutter and Floyd Hightower's Python project template.

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

d8s_asns-0.8.0.tar.gz (97.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

d8s_asns-0.8.0-py3-none-any.whl (20.7 kB view details)

Uploaded Python 3

File details

Details for the file d8s_asns-0.8.0.tar.gz.

File metadata

  • Download URL: d8s_asns-0.8.0.tar.gz
  • Upload date:
  • Size: 97.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for d8s_asns-0.8.0.tar.gz
Algorithm Hash digest
SHA256 de81f3433cc5db5000be996c158afbdb0ab87e3eff0d2ef7dfdcc7daec26b23a
MD5 cd9f87de50a0f4e8f5cf229c27e3d07b
BLAKE2b-256 372ce9d5b7cb9ef7e9f557a6915627a6274b119c0dcbe934807c7cf9aa1c0a84

See more details on using hashes here.

Provenance

The following attestation bundles were made for d8s_asns-0.8.0.tar.gz:

Publisher: release-please.yml on democritus-project/d8s-asns

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file d8s_asns-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: d8s_asns-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 20.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for d8s_asns-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 94061ace78d2fad448b8805fc6db2fd62a6618235daf9c624a9fc3715ecb59c5
MD5 608607fe5c8f01c459e415eb94ec83ac
BLAKE2b-256 fdf958fb3378c10a44455f527d8fdec229b597eb414a7d2f8362315a48db0f01

See more details on using hashes here.

Provenance

The following attestation bundles were made for d8s_asns-0.8.0-py3-none-any.whl:

Publisher: release-please.yml on democritus-project/d8s-asns

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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