drill is a command-line DNS lookup utility included with the ldns library from NLnet Labs. It provides an alternative implementation to dig for investigating DNS records and troubleshooting name resolution.
The utility can perform ordinary DNS queries, examine the responses returned by nameservers and investigate DNSSEC behaviour. It is particularly useful for checking how domain names are resolved and identifying problems with delegation or DNSSEC signatures.
drill uses the ldns codebase rather than BIND, providing an independent implementation for debugging and comparing DNS behaviour.
This is free and open source software.
Key Features
- Queries common DNS record types, including A, AAAA, MX, NS, SOA, TXT, DNSKEY, RRSIG and DS.
- Performs DNSSEC signature checking and follows signature chains towards a trusted key.
- Traces DNS resolution from root nameservers through the delegation hierarchy.
- Supports DNSSEC-enabled delegation tracing.
- Allows trusted DNSSEC keys to be supplied for validating responses.
- Displays DNSKEY records together with their corresponding DS records.
- Supports reverse DNS lookups using PTR records.
- Can query specified nameservers or read resolver settings from an alternative configuration file.
- Supports UDP and TCP queries, including configurable EDNS buffer sizes and TCP fallback.
- IPv4-only and IPv6-only query modes.
- Options for controlling DNS header flags, query ports and the local source address.
- Can save DNS responses as hexadecimal packet dumps for later inspection.
Website: github.com/NLnetLabs/ldns
Support:
Developer: NLnet Labs
License: BSD 3-Clause ‘New’ or ‘Revised’ License

drill is written in C. Learn C with our recommended free books and free tutorials.
Related Software
| Alternatives to dig | |
|---|---|
| dog | DNS client with colorful output, DNS-over-TLS and DNS-over-HTTPS support |
| doggo | Command-line DNS client for humans |
| drill | Perform DNS lookups and display answers returned from the name server(s) |
| dnslookup | Supports plain DNS, DoH, DoT, DoQ, and DNSCrypt |
| dug | Global DNS propagation checker |
| q | Support for UDP, TCP, DoT, DoH, DoQ and ODoH |
| DNS Clients | |
|---|---|
| dog | Colourful output, understands normal command-line argument syntax |
| doggo | Command-line DNS client for humans |
| q | Tiny command line DNS client supporting UDP, TCP, DoT, DoH, DoQ and ODoH |
| ddclient | Update dynamic DNS entries |
| GoDNS | Dynamic DNS (DDNS) client tool |
| dig | DNS lookup utility |
| awl | DNS lookup tool |
| ZDNS | High-speed DNS resolver and command line utility |
| dnslookup | Make DNS lookups |
| dug | Global DNS propagation checker |
| drill | Perform DNS lookups |
| dness | Dynamic DNS client |
| zns | Fast DNS lookup tool with DNSSEC validation and delegation tracing |
| In-a-Dyn | Small and simple Dynamic DNS, DDNS, client |
| doh | Query multiple DNS-over-HTTPS resolvers with JSON output |
| dnsupdate | Modern and flexible dynamic DNS client |
| ch4 | Dig-compatible DNS client with UDP, TCP and EDNS support |
| wig | Simple and lightweight DNS client |
| dyndnsc | Dynamic DNS update client |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.