DNS toolkit
Project description
dnspython
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 of dnspython
2.8.0.
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.
- To use a wheel downloaded from PyPi, run:
pip install dnspython
- To install from the source code, go into the top-level of the source code and run:
pip install --upgrade pip build
python -m build
pip install dist/*.whl
- To install the latest from the main 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 WMI on Windows to determine the active DNS settings
instead of the default registry scanning method, run
pip install dnspython[wmi]
.
If you want to try the experimental DNS-over-QUIC code, run
pip install dnspython[doq]
.
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
supports Python 3.10
and later. Future support is aligned with the lifetime of the Python 3 versions.
Documentation has moved to dnspython.readthedocs.io.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file dnspython-2.8.0.tar.gz
.
File metadata
- Download URL: dnspython-2.8.0.tar.gz
- Upload date:
- Size: 368.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
181d3c6996452cb1189c4046c61599b84a5a86e099562ffde77d26984ff26d0f
|
|
MD5 |
5f2ceb19b1c269f9e1ccef8bf2a1e8c5
|
|
BLAKE2b-256 |
8c8b57666417c0f90f08bcafa776861060426765fdb422eb10212086fb811d26
|
Provenance
The following attestation bundles were made for dnspython-2.8.0.tar.gz
:
Publisher:
publish.yml
on rthalley/dnspython
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1
-
Predicate type:
https://docs.pypi.org/attestations/publish/v1
-
Subject name:
dnspython-2.8.0.tar.gz
-
Subject digest:
181d3c6996452cb1189c4046c61599b84a5a86e099562ffde77d26984ff26d0f
- Sigstore transparency entry: 482423577
- Sigstore integration time:
-
Permalink:
rthalley/dnspython@77fd94cd9716faf23e0a6e333f6568fc24284402
-
Branch / Tag:
refs/tags/v2.8.0
- Owner: https://github.com/rthalley
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com
-
Runner Environment:
github-hosted
-
Publication workflow:
publish.yml@77fd94cd9716faf23e0a6e333f6568fc24284402
-
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file dnspython-2.8.0-py3-none-any.whl
.
File metadata
- Download URL: dnspython-2.8.0-py3-none-any.whl
- Upload date:
- Size: 331.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
01d9bbc4a2d76bf0db7c1f729812ded6d912bd318d3b1cf81d30c0f845dbf3af
|
|
MD5 |
04e6a7b3771bd54c3e7ddeba08155269
|
|
BLAKE2b-256 |
ba5a18ad964b0086c6e62e2e7500f7edc89e3faa45033c71c1893d34eed2b2de
|
Provenance
The following attestation bundles were made for dnspython-2.8.0-py3-none-any.whl
:
Publisher:
publish.yml
on rthalley/dnspython
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1
-
Predicate type:
https://docs.pypi.org/attestations/publish/v1
-
Subject name:
dnspython-2.8.0-py3-none-any.whl
-
Subject digest:
01d9bbc4a2d76bf0db7c1f729812ded6d912bd318d3b1cf81d30c0f845dbf3af
- Sigstore transparency entry: 482423598
- Sigstore integration time:
-
Permalink:
rthalley/dnspython@77fd94cd9716faf23e0a6e333f6568fc24284402
-
Branch / Tag:
refs/tags/v2.8.0
- Owner: https://github.com/rthalley
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com
-
Runner Environment:
github-hosted
-
Publication workflow:
publish.yml@77fd94cd9716faf23e0a6e333f6568fc24284402
-
Trigger Event:
workflow_dispatch
-
Statement type: