Intra icon indicating copy to clipboard operation
Intra copied to clipboard

Proposal: Desktop DoH client (Windows + Linux)

Open Pouria03 opened this issue 3 months ago • 1 comments

Desktop DoH Client (Windows/Linux) — Proposal

Purpose Build a cross-platform desktop app that acts as a local DNS-to-DoH proxy, replicating Intra’s Android functionality with a minimal GUI for Windows and Linux.

link to forked repository --> https://github.com/Pouria03/Intra


Design Notes

  • Language & Core: Python3 or Go
  • DNS Parsing
  • GUI
  • Service Modes:
    • Dev mode: bind to port 5353 (non-privileged).
    • Production: bind to port 53 (Windows service / setcap on Linux).
  • Core Requirements:
    • Support UDP & TCP DNS.
    • DNS caching with TTL (LRU strategy).
    • Retries, timeouts, error handling.
  • Packaging:
    • Windows: PyInstaller → NSIS installer (+ code signing if possible).
    • Linux: PyInstaller → AppImage / .deb package.
  • System Integration:
    • Windows: PowerShell to set DNS to 127.0.0.1.
    • Linux: NetworkManager / systemd-resolved configuration.
  • CLI & Config:
    • Headless/daemon mode.
    • Config file for resolver list and settings.
    • Logging with levels (info/debug/warn).
  • Security & Privacy:
    • No telemetry by default.
    • privacy.md: resolver choices and logging policy.
    • SECURITY.md: vulnerability reporting guidelines.
  • Testing & CI:
    • Unit tests with mock DoH server.
    • Integration tests for end-to-end resolution.
    • GitHub Actions: Windows + Linux matrix.
  • Fallback Plan:
    • Option to call upstream Go DoH proxy as subprocess for performance.
  • Licensing:
    • Apache-2.0 for all new files, matching upstream repo.

Pouria03 avatar Sep 29 '25 09:09 Pouria03

Yes, I really need it! I don't understand why DOH isn't working in my browser on Windows 7. I used Opera and Chrome with Cloudflare. I ran a test here, https://one.one.one.one/help/, and it showed that I'm connected to DOH, but the website I need isn't working, although everything works fine on Android. Obviously, I need to create a virtual environment. Perhaps DOH support in browsers isn't effective or fully functional.

SergioSikoni avatar Nov 11 '25 18:11 SergioSikoni