Enforces strict DNS-over-HTTPS, blocks WebRTC IP leaks, disables telemetry, and strips tracking headers — all before Discord touches the network.
Discord runs on Chromium. That means plaintext DNS, WebRTC IP leaks, and fingerprinting headers — unless you patch it at the source.
All DNS queries forced through Mullvad's encrypted DoH resolver. Plain DNS fallback removed — queries fail securely rather than silently downgrade.
Blocks non-proxied UDP via disable_non_proxied_udp. Your local LAN IP is never exposed to Discord's voice servers or other call participants.
Cancels requests to /science, /track, /analytics, Sentry, Mixpanel, Segment, and Amplitude at the Electron network layer.
Strips Electron/x.x.x and DiscordApp/x.x.x from all outgoing headers so servers cannot fingerprint your exact Electron build.
Minimum TLS enforced via setSSLConfig. Connections to servers using outdated, insecure TLS are blocked entirely.
All geolocation requests denied at the Electron layer via both setPermissionRequestHandler and setPermissionCheckHandler.
Chromium's spellchecker — which can send typed text to remote cloud APIs — disabled via setSpellCheckerEnabled(false).
Google's Chromium ID header plus X-Goog-Visitor-Id and X-Firebase-Client stripped from every request via webRequest.onBeforeSendHeaders.
Breakpad crash reporting disabled and upload endpoints blocked independently. Your crash data stays on your machine, not Discord's servers.
DcDNS injects a JS payload into Discord's index.js. All protections activate before any network connection is established.
index.js is automatically backed up as index.js.dcdns.bak."Encrypted By DcDNS" when active. All protections are live before the first network request.index.js. After any Discord update, re-run DcDNS and click Install to re-apply the patch with your saved settings.
Saved to dcdns_conf.json in Discord's userData directory. Applied at startup — no code editing required.
DcDNS improves network-level privacy within Discord. It does not make you anonymous — you are still logged into your account.
Every line — Python launcher, JS payload, and UI — is visible in the public GitHub repository. No compiled black boxes.
DcDNS transmits zero data. The only external call is a read-only GitHub API check for update notifications.
One-click Uninstall restores original index.js from backup. If no backup exists, the payload is cleanly stripped without corrupting the file.
SHA-256 of the target file displayed before and after patching so integrity can be verified independently at every step.
Full release history — latest always at the top. Fetched live from GitHub.