feat: implement M1 — core DoH forwarding

- Axum HTTP server with /dns-query endpoint (GET + POST per RFC 8484)
- DNS wire-format parsing via hickory-proto
- Upstream DoH client with round-robin selection
- TOML config file with resolver definitions
- SERVFAIL fallback when upstream is unreachable
- /health endpoint
- Unit tests (7) and integration tests (5)
- Zero warnings, clippy clean, fmt clean
This commit is contained in:
2026-07-06 16:42:28 +03:30
parent b11d042732
commit 3a5c0d2aba
16 changed files with 2601 additions and 7 deletions

View File

@@ -85,7 +85,7 @@ See [docs/plan.md](docs/plan.md) for the full project plan and milestone checkli
| Milestone | Status |
|-----------|--------|
| M1 — Core Forwarding | 🔲 Not started |
| M1 — Core Forwarding | ✅ Done |
| M2 — Multiple Upstreams & Config | 🔲 Not started |
| M3 — Caching | 🔲 Not started |
| M4 — Observability | 🔲 Not started |