Table of Contents

DNSSEC Explained

DNS Security Extensions (DNSSEC) is a set of extensions to the Domain Name System (DNS) that allows DNS responses to be cryptographically verified.

DNSSEC helps ensure that DNS records have not been modified or forged while they travel across the Internet.

DNSSEC provides:

DNSSEC does not provide encryption or privacy.


Why Was DNSSEC Created?

Traditional DNS was designed without security.

An attacker may attempt to convince a recursive resolver that a fake IP address belongs to a domain.

Example:

Attacker

example.com
        │
        ▼

203.0.113.200  (Fake)

instead of

93.184.216.34

If the resolver accepts the forged response, users may be redirected to a malicious website.

DNSSEC prevents this by allowing DNS responses to be digitally signed.


How DNSSEC Works

Each DNS zone has a pair of cryptographic keys.

The authoritative DNS server signs its DNS records using the private key.

Resolvers verify the signatures using the corresponding public key.

Authoritative Server

DNS Record
      │
      ▼
Digital Signature
      │
      ▼
Recursive Resolver
      │
Verify Signature
      │
      ▼
Trusted Answer

If verification fails, the resolver rejects the response.


Chain of Trust

DNSSEC works through a chain of trust.

Each level of the DNS hierarchy signs the next level.

Root Zone
     │
     ▼
.com
     │
     ▼
example.com

The root zone is the trust anchor for the entire DNSSEC system.

If every signature is valid, the resolver can trust the final DNS record.


DNSSEC Record Types

DNSSEC introduces several additional DNS record types.

Record Purpose
DNSKEY Public key for the DNS zone
DS Delegation Signer (links parent and child zones)
RRSIG Digital signature for DNS records
NSEC Authenticated proof that a record does not exist
NSEC3 Similar to NSEC, but hides zone contents
CDS Child Delegation Signer (automation)
CDNSKEY Child DNSKEY (automation)

DNSSEC Validation

When a resolver receives a DNS response, it performs validation.

Steps:

  1. Retrieve the requested DNS record.
  2. Retrieve its RRSIG record.
  3. Retrieve the DNSKEY.
  4. Verify the signature.
  5. Verify the chain of trust up to the root zone.

If validation succeeds, the response is accepted.

Otherwise the resolver returns an error.


DNSSEC Does NOT Encrypt DNS

A common misconception is that DNSSEC encrypts DNS traffic.

It does not.

DNSSEC provides:

It does not provide:

DNS queries remain visible on the network.

For encrypted DNS, technologies such as DNS over HTTPS (DoH) and DNS over TLS (DoT) are used.


DNSSEC vs DoH vs DoT

Technology Authentication Encryption
DNS No No
DNSSEC Yes No
DNS over TLS (DoT) No Yes
DNS over HTTPS (DoH) No Yes
DNSSEC + DoH Yes Yes

DNSSEC and DoH solve different security problems and are often used together.


Advantages

DNSSEC provides:


Limitations

DNSSEC does not:

It only verifies the authenticity of DNS data.


How Can I Check Whether a Domain Uses DNSSEC?

A domain usually supports DNSSEC if:

Example:

example.com

DNSKEY
RRSIG
DS

DNSSEC and Telenegar

Telenegar DNS Check can help determine whether a domain supports DNSSEC by:

Future versions may also perform DNSSEC validation.


Common Misconceptions



dns dnssec dnskey ds rrsig nsec doh dot security