Skip to main content

DNS toolkit

Project description

dnspython

Build Status Documentation Status PyPI version License: ISC

INTRODUCTION

dnspython is a DNS toolkit for Python. It supports almost all record types. It can be used for queries, zone transfers, and dynamic updates. It supports TSIG authenticated messages and EDNS0.

dnspython provides both high and low level access to DNS. The high level classes perform queries for data of a given name, type, and class, and return an answer set. The low level classes allow direct manipulation of DNS zones, messages, names, and records.

To see a few of the ways dnspython can be used, look in the examples/ directory.

dnspython is a utility to work with DNS, /etc/hosts is thus not used. For simple forward DNS lookups, it's better to use socket.getaddrinfo() or socket.gethostbyname().

dnspython originated at Nominum where it was developed to facilitate the testing of DNS software.

ABOUT THIS RELEASE

This is dnspython 2.2.1 Please read What's New for information about the changes in this release.

INSTALLATION

  • Many distributions have dnspython packaged for you, so you should check there first.
  • If you have pip installed, you can do pip install dnspython
  • If not just download the source file and unzip it, then run sudo python setup.py install
  • To install the latest from the master branch, run pip install git+https://github.com/rthalley/dnspython.git

Dnspython's default installation does not depend on any modules other than those in the Python standard library. To use some features, additional modules must be installed. For convenience, pip options are defined for the requirements.

If you want to use DNS-over-HTTPS, run pip install dnspython[doh].

If you want to use DNSSEC functionality, run pip install dnspython[dnssec].

If you want to use internationalized domain names (IDNA) functionality, you must run pip install dnspython[idna]

If you want to use the Trio asynchronous I/O package, run pip install dnspython[trio].

If you want to use the Curio asynchronous I/O package, run pip install dnspython[curio].

If you want to use WMI on Windows to determine the active DNS settings instead of the default registry scanning method, run pip install dnspython[wmi].

Note that you can install any combination of the above, e.g.: pip install dnspython[doh,dnssec,idna]

Notices

Python 2.x support ended with the release of 1.16.0. Dnspython 2.0.0 through 2.2.x support Python 3.6 and later. As of dnspython 2.3.0, the minimum supported Python version will be 3.7. We plan to align future support with the lifetime of the Python 3 versions.

Documentation has moved to dnspython.readthedocs.io.

The ChangeLog has been discontinued. Please see the github project page and git history for detailed change information.

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

dnspython-2.2.1.tar.gz (281.3 kB view details)

Uploaded Source

Built Distribution

dnspython-2.2.1-py3-none-any.whl (269.1 kB view details)

Uploaded Python 3

File details

Details for the file dnspython-2.2.1.tar.gz.

File metadata

  • Download URL: dnspython-2.2.1.tar.gz
  • Upload date:
  • Size: 281.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.0

File hashes

Hashes for dnspython-2.2.1.tar.gz
Algorithm Hash digest
SHA256 0f7569a4a6ff151958b64304071d370daa3243d15941a7beedf0c9fe5105603e
MD5 c7172f4115cd7b60fd5037cfcd8f9408
BLAKE2b-256 99fbe7cd35bba24295ad41abfdff30f6b4c271fd6ac70d20132fa503c3e768e0

See more details on using hashes here.

File details

Details for the file dnspython-2.2.1-py3-none-any.whl.

File metadata

  • Download URL: dnspython-2.2.1-py3-none-any.whl
  • Upload date:
  • Size: 269.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.0

File hashes

Hashes for dnspython-2.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a851e51367fb93e9e1361732c1d60dab63eff98712e503ea7d92e6eccb109b4f
MD5 41353f4e58f1021c4fe469d901fd3f7d
BLAKE2b-256 9bed28fb14146c7033ba0e89decd92a4fa16b0b69b84471e2deab3cc4337cc35

See more details on using hashes here.

Supported by

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