--- layout: page permalink: /providers/dns/ title: "Encrypted DNS Resolvers" description: "Don't let Google see all your DNS traffic. Discover privacy-centric alternatives to the traditional DNS providers." breadcrumb: "DNS" --- {% include sections/dns.html %}

#### Terms

- DNS-over-TLS (DoT) - A security protocol for encrypted DNS on a dedicated port 853. Some providers support port 443 which generally works everywhere while port 853 is often blocked by restrictive firewalls. DoT has two modes:

- Oppurtunistic mode: the client attempts to form a DNS-over-TLS connection to the server on port 853 without performing certificate validation. If it fails, it will use unencrypted DNS.
- Strict mode: the client connects to a specific hostname and performs certificate validation for it. If it fails, no DNS queries are made until it succeeds.

- DNS-over-HTTPS (DoH) - Similar to DoT, but uses HTTPS instead, being indistinguishable from "normal" HTTPS traffic on port 443.
- DNSCrypt - An older yet robust method of encrypting DNS.

#### How to verify DNS is encrypted

- DoH / DoT
  - Check DNSLeakTest.com.
  - Check the website of your DNS provider. They may have a page for telling "you are using our DNS." Examples include AdGuard and Cloudflare.
  - If using Firefox's trusted recursive resolver (TRR), navigate to `about:networking#dns`. If the TRR column says "true" for some fields, you are using DoH.
- dnscrypt-proxy - Check dnscrypt-proxy's wiki on how to verify that your DNS is encrypted.
- DNSSEC - Check DNSSEC Resolver Test by Matthäus Wander.
- QNAME Minimization - Run `dig +short txt qnamemintest.internet.nl` from the command-line (taken from this NLnet Labs presentation). If you are on Windows 10, run `Resolve-DnsName -Type TXT -Name qnamemintest.internet.nl` from the PowerShell. You should see this display: `"HOORAY - QNAME minimisation is enabled on your resolver :)!"`

### Software suggestions and Additional Information

- Encrypted DNS clients for desktop:
  - Firefox comes with built-in DoH support with Cloudflare set as the default resolver, but can be configured to use any DoH resolver. Currently Mozilla is conducting studies before enabling DoH by default for all US-based Firefox users.
  - DNS over HTTPS can be enabled in Menu -> Preferences (`about:preferences`) -> Network Settings -> Enable DNS over HTTPS. Set "Use Provider" to "Custom", and enter your DoH provider's address.
  - Advanced users may enable it in `about:config` by setting `network.trr.custom_uri` and `network.trr.uri` as the address you find from the documentation of your DoH provider and `network.trr.mode` as `2`. It may also be desirable to set `network.security.esni.enabled` to `True` in order to enable encrypted SNI and make sites supporting ESNI a bit more difficult to track.
- Encrypted DNS clients for mobile:
  - Android 9 comes with a DoT client by default.
  - We recommend selecting Private DNS provider hostname and entering the DoT address from documentation of your DoT provider to enable strict mode (see Terms above).
  - DNSCloak - An open-source DNSCrypt and DoH client for iOS by the Center for the Cultivation of Technology gemeinnuetzige GmbH.
  - Nebulo - An open-source application for Android supporting DoH and DoT. It also supports caching DNS responses and locally logging DNS queries.
- Local DNS servers:
  - Stubby - An open-source application for Linux, macOS, and Windows that acts as a local DNS Privacy stub resolver using DoT.
  - Unbound - a validating, recursive, caching DNS resolver. It can also be ran network-wide and has supported DNS-over-TLS since version 1.7.3.
  - See also Actually secure DNS over TLS in Unbound on ctrl.blog.
- Network wide DNS servers:
  - Pi-hole - A network-wide DNS server mainly for the Raspberry Pi. Blocks ads, tracking, and malicious domains for all devices on your network.
  - NoTrack - A network-wide DNS server like Pi-hole for blocking ads, tracking, and malicious domains.
- Further reading:
  - On Firefox, DoH and ESNI
  - Trusted Recursive Resolver (DoH) on MozillaWiki
  - Firefox bug report requesting the ability to use ESNI without DoH
  - Firefox bug report requesting the ability to use Android 9+'s Private DNS (DoT) and benefit from encrypted SNI without having to enable DoH
  - Encrypt it or lose it: how encrypted SNI works on Cloudflare blog
  - QNAME Minimization and Your Privacy by the Internet Systems Consortium (ISC)
  - DNSSEC and BIND 9 by the ISC