Skip to main content
Background Image

DNSDiag 2.7.0 Release

·272 words·2 mins·
Babak Farrokhi
Author
Babak Farrokhi
Engineering and Technical Operations Leader

DNSDiag 2.7.0 is now available. This update adds DNS over HTTP/3 (DoH3) support in dnsping, updates transport dependencies, and requires Python 3.10+.

Release highlights
#

dnsping now supports DoH3 via the -3 or --http3 flag. Updated to dnspython 2.8.0 for improved DoQ and DoH support. Output includes accurate round trip timings, clearer DNS flags, and proper EDE payloads. Python 3.10 is now required.

New features
#

DNS over HTTP/3 support added to dnsping via new flag. DoH3 runs over HTTP/3/QUIC and is separate from existing DoQ support. Improved error handling for DoH3 connections.

Example run:

$ ./dnsping.py --http3 -c 3 --flags -s 1.1.1.1 sidn.com
dnsping.py DNS: 1.1.1.1:443, hostname: sidn.com, proto: HTTP3, class: IN, type: A, flags: [RD]
42  bytes from 1.1.1.1: seq=1   time=67.881  ms  NOERROR [QR RD RA]
42  bytes from 1.1.1.1: seq=2   time=65.862  ms  NOERROR [QR RD RA]
42  bytes from 1.1.1.1: seq=3   time=62.755  ms  NOERROR [QR RD RA]

--- 1.1.1.1 dnsping statistics ---
3 requests transmitted, 3 responses received, 0% lost
min=62.755 ms, avg=65.499 ms, max=67.881 ms, stddev=2.582 ms

Breaking changes to plan for
#

dnspython 2.8.0 requires Python 3.10+. Internal module renamed from util to dnsdiag to avoid naming conflicts. Update imports if using DNSDiag helpers in custom scripts.

Quality of life
#

dnspython upgrades improve DoQ and DoH3 reliability. Fixed round trip time calculations, improved response time formatting, clearer DNS flags display, and proper EDE payload formatting.

Download & verify
#

Prebuilt archives are available on the v2.7.0 release page with GPG signatures.

Install with pip install dnsdiag or uv add dnsdiag (requires Python 3.10+).

Thanks & feedback
#

Feedback and bug reports welcome in the issue tracker.