[Bug 287117] drill(1) uses obsolete root hints

From: <bugzilla-noreply_at_freebsd.org>
Date: Wed, 28 May 2025 16:09:10 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=287117

            Bug ID: 287117
           Summary: drill(1) uses obsolete root hints
           Product: Base System
           Version: CURRENT
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: bin
          Assignee: bugs@FreeBSD.org
          Reporter: leon+freebsd@darkk.net.ru

drill(1) still uses the outdated IP address 128.63.2.53 for h.root-servers.org,
which has been obsolete since December 1, 2015, as noted here:
https://web.archive.org/web/20250121132716/https://h.root-servers.org/renumber.html

It also uses 128.8.10.90 for d.root-servers.org, despite that address having
been changed on January 3, 2013:
https://www.icann.org/en/blogs/details/advisory--d-root-is-changing-its-ipv4-address-on-3-january-2013-14-12-2012-en

By default, drill(1) relies on hardcoded root hints and does not load
root.hints from the filesystem unless explicitly(!) instructed via the -r
option.

As a result, there's a non-trivial chance of noticeable stalls when running
drill -T queries. For example, `timeout 4s drill -T ya.ru` fails in
approximately 17% of cases in my tests — quite close to the theoretical failure
rate of 2 out of 13.

The issue has been addressed in ldns version 1.8.4, which includes an updated
root.c:
https://github.com/NLnetLabs/ldns/commit/46fa15db56787c95200d3455a2c6e52df5b8f6ae

Please consider updating root.c and/or the bundled ldns library to align `drill
-T` behavior with the principle of least astonishment.

-- 
You are receiving this mail because:
You are the assignee for the bug.