Free DNSSEC Checker
Enter any domain below to check whether DNSSEC (Domain Name System Security Extensions) is enabled. We check for DNSKEY records, DS delegation at the parent zone, and whether responses are validated with the Authenticated Data (AD) flag.
New to DNSSEC? Below the checker we explain what DNSSEC is and how to enable it.
What is DNSSEC?
DNSSEC (Domain Name System Security Extensions) adds a layer of cryptographic authentication to DNS responses. It allows resolvers to verify that DNS answers (IP addresses, MX records, etc.) have not been tampered with in transit. Without DNSSEC, attackers can forge DNS responses (cache poisoning) to redirect traffic to malicious servers.
DNS was designed in the 1980s with no way to prove an answer is genuine: a resolver trusts the answer it receives. Dan Kaminsky showed in 2008 that planting a forged answer in a resolver's cache was far easier than previously believed, and everyone who uses that resolver is then sent to the attacker's server.
DNSSEC protects people whose resolver validates, as Cloudflare's 1.1.1.1, Google's 8.8.8.8 and Quad9 do: when a signature does not match, the resolver returns an error (SERVFAIL) instead of the forged answer.
Why Should You Enable DNSSEC?
- Prevent DNS Spoofing: DNSSEC makes it cryptographically impossible for attackers to forge DNS responses, protecting your users from being redirected to phishing or malware sites.
- Foundation for Other Protocols: DANE (DNS-based Authentication of Named Entities) requires DNSSEC. DANE allows you to publish TLS certificate constraints in DNS.
- Email Security: DNSSEC protects MX, SPF, DKIM, and DMARC records from being spoofed, strengthening your entire email authentication chain.
- Trust Signal: DNSSEC is increasingly expected by security-conscious organisations and is a requirement in many government procurement frameworks.
How DNSSEC works: the chain of trust
Each level of DNS vouches for the one below it, from the root zone down to your domain.
- The root zone is signed with its own key. Validating resolvers come with the root's key installed as their trust anchor.
- The top-level domain (such as .uk or .com) is vouched for by a DS (Delegation Signer) record that the root publishes.
- Your domain is vouched for by a DS record in its parent zone, run by the registry (such as .com or .co.uk), and your DNS host signs the records in your zone.
- A validating resolver follows the chain from the root to your domain and checks each signature. When every link matches, it sets the AD (Authenticated Data) flag on its answer. When one does not, it rejects the answer.
Without a DS record at the parent, the chain stops there: resolvers treat your zone as unsigned, however well it is signed.
| Record | What it does |
|---|---|
| DNSKEY (KSK) | The key signing key: a long-lived key that signs the zone's DNSKEY records. A hash of it is published as the DS record at the parent zone. |
| DNSKEY (ZSK) | The zone signing key: a shorter-lived key that signs the records in the zone, such as A, MX and TXT. The KSK vouches for it, so it needs no DS record of its own. |
| DS | Delegation Signer: published at the parent zone, it holds a hash of the child zone's KSK and links the two levels of the chain. |
| RRSIG | The signature on each set of records. Every RRSIG has an expiry time, so the zone has to be re-signed before it passes. |
| NSEC / NSEC3 | Proof that a name does not exist, so an attacker cannot forge a “no such record” answer. NSEC3 hashes the names, which makes it harder to list every name in the zone. |
How to enable DNSSEC
Enabling DNSSEC takes two steps in two places: your DNS host signs the zone, and your registrar publishes the DS record in the parent zone.
- Turn on signing at your DNS host. Cloudflare, AWS Route 53 and Google Cloud DNS all support it. The host creates the keys, signs your records and gives you the DS record details: key tag, algorithm, digest type and digest.
- Add the DS record at your registrar, using exactly the values your DNS host gave you. This is the step that links your zone into the chain of trust.
- Wait for the change to spread. It usually takes minutes, but can take up to 48 hours depending on TTLs.
- Check the chain with the checker at the top of this page. A working set-up reads “DNSSEC is active and validating”.
Where your DNS host is also your registrar, as with Cloudflare Registrar, turning DNSSEC on can publish the DS record for you.
Common DNSSEC mistakes
A broken chain is worse than no DNSSEC: validating resolvers return SERVFAIL, so the domain stops resolving, websites and email included, for everyone who uses them. These are the usual causes.
- Expired signatures: if the zone is not re-signed before its RRSIG records expire, validating resolvers reject its answers. Managed DNS hosts normally re-sign for you; a zone you sign yourself needs monitoring.
- A DS record that no longer matches: moving DNS host, or replacing the KSK, without updating the DS record at your registrar leaves the parent pointing at a key you no longer publish, and validation fails for every lookup. The checker shows whether each DS record matches a published key.
- A key rollover done out of order: removing the old key, or its DS record, before the new one has spread breaks validation. Automated key management, which Cloudflare and other managed hosts offer, reduces this risk.
- Turning DNSSEC off in the wrong order: if you stop signing but leave the DS record at your registrar, resolvers still expect signatures and the domain stops resolving. Remove the DS record first, wait for the change to spread, then turn signing off. Do the same before moving to a DNS host that will not sign your zone.
- Large responses: signatures make DNS answers bigger, and some firewalls block large UDP packets. Make sure your network allows EDNS0 and DNS over TCP.
What this tool checks
- DNSKEY records: whether the zone publishes signing keys, with each key's tag, role (KSK or ZSK) and algorithm.
- DS records: whether the parent zone holds a DS record, and whether its digest matches a key the zone publishes.
- Validation: whether Cloudflare's resolver (1.1.1.1) confirms the chain and sets the AD flag. When a zone has keys and a DS record but Cloudflare does not confirm it, we ask Google (8.8.8.8) too.
- What broke: when the chain fails, the reason the resolvers give, such as an expired signature, and what to do about it.
- Retired algorithms: a warning when the zone is signed with algorithm 5 or 7, or its DS record uses a SHA-1 digest, which RFC 9905 and RFC 9904 (the successor to RFC 8624) retire.
Need Automated Monitoring?
This free tool is great for one-off checks. If you need continuous monitoring of DNSSEC, CAA, SSL, DMARC, and more across all your domains, start a free trial for 30 days free.
Want the full picture?
Our Security Grade checks DNSSEC alongside DMARC, SPF, MTA-STS, CAA, SSL, and domain registration in one scan.
Frequently Asked Questions
Does my registrar support DNSSEC?
Most major registrars and DNS providers now support DNSSEC, including Cloudflare (automatic), Namecheap, and GoDaddy. If you use a third-party DNS host, you may need to export DS records and add them at your registrar.
Can DNSSEC break my domain?
If DNSSEC is misconfigured (e.g. expired signatures, a DS record that no longer matches your keys, or key rollover failures), validating resolvers will return SERVFAIL, making your domain unresolvable. This is why monitoring DNSSEC status is important after enabling it.
Is DNSSEC required for DMARC?
DNSSEC is not required for DMARC to function, but it strengthens the chain of trust. Without DNSSEC, an attacker who can poison DNS could modify your SPF, DKIM, or DMARC records. DNSSEC prevents this by cryptographically signing DNS responses.
Does DNSSEC affect my Security Grade?
Yes. DNSSEC is a check in the Security Grade framework. Passing it counts towards a strong Security Grade.