Intra
Intra copied to clipboard
Proposal: Desktop DoH client (Windows + Linux)
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.
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.