Overview
Deploy a privacy-focused DNS resolution system in the network namespace that provides:
- Standard DNS (port 53) with no client configuration needed
- DNS-over-HTTPS (DoH) support for privacy-aware clients
- Anonymous upstream resolution via DNSCrypt with relay routing
- High-performance caching with Unbound
- IP-based access control
Architecture
- Frontend: Unbound (port 53) + DoH endpoint (port 443)
- Backend: DNSCrypt-proxy with anonymized relays
- Caching: Multi-tier with persistence
- Monitoring: Prometheus metrics + Grafana dashboards
Structure
kubernetes/apps/network/dns-resolver/
├── dnscrypt-proxy/
├── unbound/
└── shared/
Acceptance Criteria
- Standard DNS queries work from allowed IPs
- DoH endpoint accessible and functional
- Anonymous relay routing verified
- Monitoring dashboards operational
- Performance meets <50ms average latency
- Documentation complete
Technical Requirements
- Latency: <50ms p99 for cached queries
- Throughput: 10k+ queries/second
- Availability: 99.9% uptime SLO
- Cache Hit Rate: >80% after warm-up
- Security: DNSSEC validation, access control, encrypted upstream
Implementation Tracking
This epic will be implemented through 8 phases, each tracked as a separate issue.
Implementation Phases
Phase Issues:
Track progress through these linked issues.
Overview
Deploy a privacy-focused DNS resolution system in the network namespace that provides:
Architecture
Structure
Acceptance Criteria
Technical Requirements
Implementation Tracking
This epic will be implemented through 8 phases, each tracked as a separate issue.
Implementation Phases
Phase Issues:
Track progress through these linked issues.