Testing IPv6 DNS resolution is essential for ensuring your network infrastructure properly supports modern internet standards. This guide covers command-line tools, online testing services, and debugging techniques to validate that your DNS servers can resolve IPv6 addresses (AAAA records).
Before diving into command-line tools, you can quickly test your IPv6 connectivity and DNS resolution using test-ipv6.run. This comprehensive testing tool checks:
Simply visit the site and it will immediately run all tests in parallel, providing a scored assessment of your IPv6 readiness. This is the fastest way to identify if you have DNS or connectivity issues with IPv6.
IPv6 uses AAAA records (quad-A) to map domain names to 128-bit IPv6 addresses, while IPv4 uses A records for 32-bit addresses. It's important to understand that:
These are different concepts. Any DNS server (IPv4-only or IPv6-capable) can return AAAA records. However, to query a DNS server over IPv6, your network must support IPv6 connectivity. Learn more about adding IPv6 to DNS for proper configuration.
dig is the most powerful and detailed DNS testing tool available on Linux and macOS.
Query for IPv6 addresses of a domain:
$ dig AAAA google.com
Expected output:
;; ANSWER SECTION:
google.com. 299 IN AAAA 2607:f8b0:4004:c07::71
google.com. 299 IN AAAA 2607:f8b0:4004:c07::8a
google.com. 299 IN AAAA 2607:f8b0:4004:c07::8b
google.com. 299 IN AAAA 2607:f8b0:4004:c07::65
Get just the IPv6 addresses without extra information:
$ dig AAAA cloudflare.com +short
2606:4700::6810:85e5
2606:4700::6810:84e5
Force dig to use IPv6 to contact the DNS server:
$ dig -6 AAAA example.com
This tests both your IPv6 connectivity and DNS resolution capability.
Query a specific DNS server (like Google's public DNS):
$ dig @2001:4860:4860::8888 AAAA github.com
$ dig AAAA netflix.com +stats
Look for the "Query time" field in the output to measure DNS performance.
nslookup is simpler than dig and available on Windows, Linux, and macOS.
$ nslookup -type=AAAA github.com
Expected output:
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
github.com has AAAA address 2606:50c0:8000::154
github.com has AAAA address 2606:50c0:8001::154
github.com has AAAA address 2606:50c0:8002::154
github.com has AAAA address 2606:50c0:8003::154
Enter interactive mode for multiple queries:
$ nslookup
> set type=AAAA
> facebook.com
> youtube.com
> exit
$ nslookup -type=AAAA example.com 2001:4860:4860::8844
The host command provides a simplified DNS lookup interface.
$ host -t AAAA cloudflare.com
Output:
cloudflare.com has IPv6 address 2606:4700::6810:84e5
cloudflare.com has IPv6 address 2606:4700::6810:85e5
Use the -6 flag to force querying via IPv6:
$ host -6 example.com
Get detailed information about the DNS resolution:
$ host -v -t AAAA github.com
Windows includes nslookup by default. Open Command Prompt or PowerShell:
nslookup -type=AAAA microsoft.com
For more advanced testing, install Windows Subsystem for Linux (WSL) to access dig and host commands.
macOS includes both dig and host by default. Open Terminal:
dig AAAA apple.com +short
Most Linux distributions include dig, host, and nslookup. Install if missing:
Debian/Ubuntu:
sudo apt install dnsutils
RHEL/CentOS/Fedora:
sudo dnf install bind-utils
Arch Linux:
sudo pacman -S bind-tools
Several web-based tools can test IPv6 DNS resolution from external servers:
DNSSEC (DNS Security Extensions) adds cryptographic signatures to DNS records, including AAAA records.
$ dig AAAA cloudflare.com +dnssec
Look for the ad (authenticated data) flag in the response header, which indicates successful DNSSEC validation.
$ dig AAAA example.com +dnssec +multiline
This shows the complete DNSSEC chain including RRSIG (signatures) and DNSKEY records.
If you get no results:
$ dig AAAA example.com +short
# (no output)
Diagnosis: The domain doesn't have IPv6 configured. Verify with:
$ dig ANY example.com +noall +answer
Test if your DNS server supports IPv6 queries:
$ dig -6 AAAA google.com
If this times out, your DNS resolver may not support IPv6 protocol. Solution:
ping6 2001:4860:4860::8888dig @2001:4860:4860::8888 AAAA google.com# Edit /etc/systemd/resolved.conf
DNSStubListenerExtra=[::1]:53
# Restart service
sudo systemctl restart systemd-resolved
Compare resolution times:
$ time dig A google.com +short
$ time dig AAAA google.com +short
If IPv6 queries are significantly slower, you may have:
Use test-ipv6.run to identify broken IPv6, which scores you as "0" and highlights the issue prominently.
If you're experiencing DNS-related issues with IPv6, you might want to learn about DNS64 which is a mechanism that allows IPv6-only clients to access IPv4 services.
Check multiple DNS servers:
$ dig AAAA example.com @8.8.8.8 +short
$ dig AAAA example.com @1.1.1.1 +short
$ dig AAAA example.com @2001:4860:4860::8888 +short
Inconsistent results indicate DNS propagation delays or server-specific issues.
Linux (systemd):
$ resolvectl status
Linux (traditional):
$ cat /etc/resolv.conf
macOS:
$ scutil --dns
Windows:
ipconfig /all
Check which protocol your system prefers:
$ dig google.com +short
$ dig AAAA google.com +short
Then use a tool like curl with verbose output:
$ curl -v https://google.com 2>&1 | grep "Trying"
This shows which IP (IPv4 or IPv6) your system attempts first.
$ dig -x 2606:4700:4700::1111
This queries the PTR record for the IPv6 address.
Find authoritative nameservers for a domain:
$ dig NS example.com +short
Then query them directly for AAAA records:
$ dig @ns1.example.com AAAA example.com
Testing IPv6 DNS resolution requires understanding the difference between querying for AAAA records and querying DNS servers via IPv6. The command-line tools dig, nslookup, and host provide detailed diagnostic capabilities, while online tools like test-ipv6.run offer quick, comprehensive assessments of your IPv6 readiness.
Whether you're troubleshooting connectivity issues, validating DNSSEC, or simply ensuring your infrastructure supports modern internet standards, these tools and techniques will help you thoroughly test IPv6 DNS resolution across platforms and environments.
For more detailed troubleshooting steps, see our guide on troubleshooting IPv6 DNS failures.
For the quickest and most comprehensive test, start with test-ipv6.run - it runs parallel tests for IPv4, IPv6, dual-stack support, latency comparison, and protocol preference, giving you an instant score and identifying any broken IPv6 configurations.
When troubleshooting DNS issues, consider checking which best DNS servers with IPv6 support might work better for your network.