DNS: 1.1.1.1, 8.8.8.8 or 9.9.9.9, which to choose?

Every time you visit a website, your device first asks a DNS resolver a question (“what’s the IP of wikipedia.org?”). By default, that resolver belongs to your ISP. It sees every domain you visit, often logs it, and sometimes hijacks typos into ad pages.

Swapping it for a public resolver is a one-line change, and here’s why it’s worth pairing with encryption:

you  
wikipedia.org?
185.15.59.224
your ISP reads both ways
wikipedia.org?
185.15.59.224
resolver answers
query answer

The question and the answer cross the wire in clear text. Your ISP can log every domain you visit, or rewrite the answer, whichever resolver you picked.

The contenders

The only real decision is: do you want the resolver to filter anything?

AddressWhoBlocksSecondary
Cloudflare Nothing. Fastest almost everywhere
Cloudflare Malware
Cloudflare Malware + adult
Google Nothing. Google-grade logging
Quad9 Malware. Swiss non-profit, no logging
Quad9 Nothing. “For experts only”
Quad9 Malware, + ECS for faster CDN routing
AdGuard Ads + trackers + malware
Click any address to copy it.

The last digit is a mode switch

Quad9 confuses people because 9.9.9.9, 9.9.9.10 and 9.9.9.11 sound like three different places. They’re the same infrastructure: the last octet just flips features on and off (official list):

9.9.9.
  • Malware blocklist
  • DNSSEC validation
  • ECS (faster CDN routing)

The default. Refuses to resolve domains on its threat-intel blocklist.

Cloudflare copied the pattern: 1.1.1.2 and 1.1.1.3 are 1.1.1.1 with blocklists bolted on.

Which one

What do you want from it?

Set it

Otherwise, set it per-machine in your OS network settings, and enable “secure DNS” (DoH) in the browser so queries are encrypted in transit. That’s the toggle from the demo above.

Prove it

# Who is resolving my queries?
dig +short resolver.dnscrypt.info txt
# DNSSEC validation on? An answer here means NO. It must fail.
dig +short dnssec-failed.org
# Malware filter live? Blocked on 9.9.9.9, resolves on 9.9.9.10.
dig +short isitblocked.org @9.9.9.9
dig +short isitblocked.org @9.9.9.10

No terminal: on.quad9.net for Quad9, one.one.one.one/help for Cloudflare.

When things break

For how DNS works, see the series starting at How DNS works. For the exhaustive version (jurisdictions, logging policies, protocols) see Privacy Guides. This is deliberately the short one.