Skip to content

Commit 064d7ac

Browse files
committed
Better document the Firefox DoH canary domain plugin
Fixes #2954
1 parent c474965 commit 064d7ac

File tree

1 file changed

+21
-1
lines changed

1 file changed

+21
-1
lines changed

dnscrypt-proxy/plugin_firefox.go

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,24 @@
1-
// Work around Mozilla's evil plan - https://sk.tl/3Ek6tzhq
1+
// Firefox DoH Canary Domain Plugin
2+
//
3+
// This plugin prevents Firefox from bypassing dnscrypt-proxy and using external DoH servers.
4+
// Firefox queries "use-application-dns.net" (the canary domain) to determine if it should
5+
// enable its built-in DoH. When this domain returns NXDOMAIN, Firefox respects the local
6+
// DNS configuration and doesn't override it with external DoH servers.
7+
//
8+
// Why this is important:
9+
// - Without this plugin, Firefox may bypass dnscrypt-proxy entirely and send DNS queries
10+
// directly to external DoH servers (like Cloudflare), defeating the purpose of running
11+
// a local DNS proxy for privacy, filtering, or security.
12+
// - This is especially critical when NOT using local DoH, as Firefox would otherwise
13+
// route around the proxy.
14+
// - Even when using local DoH, this plugin ensures Firefox respects the user's DNS choice.
15+
//
16+
// Technical details:
17+
// - Firefox performs a lookup for "use-application-dns.net" and its subdomains
18+
// - If the query returns NXDOMAIN (name error), Firefox disables its automatic DoH
19+
// - This allows dnscrypt-proxy to handle all DNS queries as configured
20+
//
21+
// Reference: https://sk.tl/3Ek6tzhq (Mozilla's canary domain documentation)
222

323
package main
424

0 commit comments

Comments
 (0)