How to Check DNS Records (3 Easy Ways)
Part of our guide to DNS Records Explained: A Complete Guide to Every Record Type.
The 3 Ways to Check DNS Records
You can look up any domain's DNS records three ways: a free online DNS analyzer (no install, all record types at once), the dig command on macOS or Linux, and nslookup on Windows or any platform. The online tool is the fastest for most people; dig and nslookup shine when you are already in a terminal or scripting checks. All three read the same public DNS data, so they return the same answers.
Not sure what each record does, or how an A record differs from an MX or TXT record? Read DNS records explained first. The record types themselves trace back to RFC 1035, and that pillar guide covers each one in plain language. This article focuses purely on the mechanics of looking them up. When records have recently changed, also see DNS propagation explained to understand why different tools may briefly show different results.
Method 1: The Free Online DNS Analyzer (Easiest)
The simplest way to check DNS records is the free DomainIntel DNS analyzer at the site root. Type in a domain and it resolves A, AAAA, MX, TXT, NS, CNAME and CAA records in a single request, with no software to install and nothing to memorize. It formats the results clearly, shows the TTL for each record, and runs queries against public resolvers so you see what the rest of the internet sees.
This is the recommended method if you just want a fast, complete snapshot. It is also handy for comparing results during a migration, since it queries authoritative data rather than your local cache.
Method 2: The dig Command (macOS / Linux)
dig (Domain Information Groper) is the standard command-line lookup tool on macOS and Linux. Pass the domain followed by the record type:
dig example.com A
dig example.com MX
dig example.com TXT
dig example.com NS
By default dig prints a verbose answer. Add +short to get only the values, which is ideal for scripts:
dig +short example.com A
dig +short example.com MX
You can also query a specific resolver by appending @server, for example dig @8.8.8.8 example.com A to ask Google's public DNS directly.
A caveat: dig example.com ANY used to return every record at once, but most resolvers now refuse ANY queries (per RFC 8482) and return a minimal or empty response. Query each record type individually instead, or use the online analyzer in Method 1 to get them all in one shot.
Method 3: nslookup (Windows / Cross-Platform)
nslookup ships with Windows and is also available on macOS and Linux, making it the go-to when you cannot install anything. Open Command Prompt or PowerShell and run:
nslookup example.com
nslookup -type=MX example.com
nslookup -type=TXT example.com
nslookup -type=NS example.com
A plain nslookup example.com returns the A record. The -type= flag selects any other record type. To query a specific resolver, add its address at the end, such as nslookup -type=MX example.com 1.1.1.1.
Command Cheat Sheet
| Record type | dig command | nslookup command |
|---|---|---|
| A (IPv4) | dig example.com A |
nslookup -type=A example.com |
| AAAA (IPv6) | dig example.com AAAA |
nslookup -type=AAAA example.com |
| MX (mail) | dig example.com MX |
nslookup -type=MX example.com |
| TXT (SPF, etc.) | dig example.com TXT |
nslookup -type=TXT example.com |
| NS (nameservers) | dig example.com NS |
nslookup -type=NS example.com |
| CNAME (alias) | dig example.com CNAME |
nslookup -type=CNAME example.com |
Reading TTL and Checking Multiple Resolvers
Every DNS answer carries a TTL (time to live) in seconds, which tells resolvers how long to cache the record. In dig it appears in the answer section between the domain name and the record type; a low TTL means changes propagate quickly, a high one means caches hold the old value longer. nslookup shows it when you enable set debug.
Because resolvers cache independently, it is worth checking from multiple resolvers: query @8.8.8.8 (Google) and @1.1.1.1 (Cloudflare) and compare. If they disagree, a record probably changed recently and is still propagating. See DNS propagation explained for what to expect during that window, or DNS records explained for a refresher on the record types themselves.
Run a Free DNS Check Now
The quickest way to see every record for a domain is to run a free DNS check at the site root: A, AAAA, MX, TXT, NS, CNAME and CAA, all resolved at once with TTLs shown and nothing to install.
Frequently asked questions
How do I check the DNS records for a domain?
You have three reliable options. The easiest is a free online DNS analyzer that resolves every record type at once with no install. On macOS or Linux you can run the dig command, such as dig example.com MX. On Windows, nslookup is built in: run nslookup -type=MX example.com.
What is the dig command to check a specific record type?
Put the record type after the domain. For mail records run dig example.com MX, for text records dig example.com TXT, and for nameservers dig example.com NS. Add +short to strip the output down to just the answer values, e.g. dig +short example.com A.
How do I check DNS records on Windows?
Windows ships with nslookup, so no install is needed. Open Command Prompt or PowerShell and run nslookup example.com for the default A record, or specify a type with nslookup -type=MX example.com to see mail records.