$npx skillfedfor your agent

dnspython

DNS toolkit

Worth itPyPI Python ModulesReleased Sep 2025326.6M downloads / moISCPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — dnspython-2.8.0-py3-none-any.whl
v2.8.0 · released 2025-09-07 · Python >=3.10

Yes. dnspython is production-stable (Development Status 5), actively maintained with recent commits, has no required dependencies, and ranks in the top 1000 PyPI packages by downloads. The ISC license is permissive. Install it if you need DNS queries, zone operations, or DNSSEC validation in Python; avoid it only if you need simple hostname resolution.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.10 or later.
  • Optional features (DNSSEC, DNS-over-HTTPS, IDNA, Trio, WMI, DNS-over-QUIC) require additional dependencies installed via extras.
  • Low friction: pure-Python wheel with no runtime dependencies by default.

License · maintenance · safety

ISC (permissive) — ISC license is permissive and imposes minimal restrictions; you can use, modify, and distribute dnspython with few obligations.

last release 2025-09-07 (341 days) · last repo commit 2026-07-29 · 2,667 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 326,564,406 downloads/mo, #128 on PyPI

Verify before relying

pip install dnspython

Import the package and use high-level query classes to resolve DNS records, or low-level classes to manipulate DNS messages and zones directly.
  • Whether the package's DNSSEC, DNS-over-HTTPS, and DNS-over-QUIC features are production-ready or experimental.
  • Performance characteristics for high-volume DNS queries or zone transfers.
  • Specific code examples demonstrating high-level and low-level API usage.
Same gist for agents: .md · .json

What it is and what it does

dnspython is a comprehensive DNS toolkit for Python that provides both high-level query interfaces and low-level access to DNS zones, messages, names, and records. It supports nearly all DNS record types and can perform queries, zone transfers, and dynamic updates, with optional support for TSIG authentication, EDNS0, DNSSEC, DNS-over-HTTPS, DNS-over-QUIC, and internationalized domain names. The package has no required runtime dependencies beyond the Python standard library, making it lightweight to install and use.

The library is designed for DNS software testing and general-purpose DNS operations. It bypasses system DNS configuration and performs direct DNS queries, making it suitable for applications that need explicit DNS control. High-level classes simplify common tasks like looking up records by name, type, and class, while low-level classes allow direct manipulation of DNS structures for advanced use cases.

Use it for

  • Perform DNS lookups and queries for specific record types in Python applications.
  • Implement DNS zone transfers and dynamic DNS updates for DNS management tools.
  • Validate DNSSEC signatures and perform secure DNS operations when dnssec extra is installed.
  • Build DNS testing and validation tools that need direct control over DNS messages and records.
  • Query DNS over HTTPS or QUIC for privacy-focused DNS operations with optional extras.
  • Resolve internationalized domain names when idna extra is installed.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

dnspython is production-stable (Development Status 5), actively maintained with recent commits, has no required dependencies, and ranks in the top 1000 PyPI packages by downloads. The ISC license is permissive. Install it if you need DNS queries, zone operations, or DNSSEC validation in Python; avoid it only if you need simple hostname resolution.

Install

dnspython on PyPI

Before you install

Low friction: pure-Python wheel with no runtime dependencies by default. Active maintenance with recent commits and 2667 repository stars. Supports Python 3.10 and later.

Requires Python 3.10 or later. Optional features (DNSSEC, DNS-over-HTTPS, IDNA, Trio, WMI, DNS-over-QUIC) require additional dependencies installed via extras.

License in practice

ISC license is permissive and imposes minimal restrictions; you can use, modify, and distribute dnspython with few obligations.

Quickstart

pip install dnspython

Import the package and use high-level query classes to resolve DNS records, or low-level classes to manipulate DNS messages and zones directly.

Verify before relying

  • Whether the package's DNSSEC, DNS-over-HTTPS, and DNS-over-QUIC features are production-ready or experimental.
  • Performance characteristics for high-volume DNS queries or zone transfers.
  • Specific code examples demonstrating high-level and low-level API usage.

Package facts

LicenseISC permissive
Python supportSupports the current Python release >=3.10
Install frictionLow. Pure-Python wheel
Runtime dependenciesNone
MaintenanceActively maintained 341 days since the last release
Last repo commit
First released
Downloads326,564,406 / month, #128 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: System AdministratorsLicense :: OSI Approved :: ISC License (ISCL)Operating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Topic :: Internet :: Name Service (DNS)Topic :: Software Development :: Libraries :: Python Modules

Evidence: dnspython-2.8.0-py3-none-any.whl

Tags

Capabilities
DNS queries and lookupszone transfer libraryDNSSEC validationDNS dynamic updatesDNS toolkit pythonTSIG authenticated DNSDNS record manipulationDNS-over-HTTPS support
Topics
dns-toolkitnetwork-protocolzone-management

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “zone transfer library”

  • dnspythondnspython is a DNS toolkit that handles queries, zone transfers,…
  • backports.zoneinfoProvides IANA time zone support for Python 3.6–3.8 by backporting the…
  • roonapiPython client library for the Roon music server API, enabling…

Give your agent the search over MCP, or paste the wish link into any chat.

More Python Modules packages

idna Worth it
PyPI · Python Modules · released Jun 2026

Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.

Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.

BSD-3-Clausepure Python · 3.9+
1.8Bdownloads / mo
setuptools Worth it
PyPI · Python Modules · released Aug 2026

Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.

MITpure Python · 3.10+
1.6Bdownloads / mo
PyYAML Worth it
PyPI · Python Modules · released Sep 2025

PyYAML parses and emits YAML 1.1 data format, enabling serialization and deserialization of configuration files and Python objects to and from human-readable YAML text.

MITcompiled wheel · 3.8+
1.2Bdownloads / mo
pydantic Worth it
PyPI · Python Modules · released May 2026

Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.

MITpure Python · 3.9+
1.1Bdownloads / mo
annotated-types Worth it
PyPI · Python Modules · released Jul 2026

Provides reusable metadata objects for use with PEP-593 `typing.Annotated` to express common constraints like bounds, collection sizes, and predicates on types.

Install it if you use or build libraries that need to express type constraints in a standardized, inspectable way—or if you want to annotate your own types with…

MITpure Python · 3.10+
871.3Mdownloads / mo
typing-inspection Worth it
PyPI · Python Modules · released Aug 2026

Provides runtime tools to inspect and introspect Python type annotations, enabling programmatic examination of type hints at execution time.

MITpure Python · 3.10+
783.0Mdownloads / mo

See also dnslib · nslookup · nextdns · pycares · dns-lexicon · azure-mgmt-dns · python-designateclient · aiodns · idna_ssl · py3dns