I built a DNS resolver from scratch in Rust
no DNS libraries
Get picks like this daily. Today's launch numbers, the top launches, AI and tech news, and a daily opportunity pick, straight to your inbox.
Want to reach these readers? Sponsor an issue.
I built a DNS resolver that lets me use https://frontend.numa instead of localhost:5173 — auto-generated TLS certs, WebSocket passthrough, path routing. No mkcert, no nginx, no /etc/hosts.
HN · launched Apr 2, 2026 · 115 upvotes (top 10%) · 0 views
Niche: networking and tunneling utilities · 190 launches, 10 in the last 7 days ▼ -17% · Explore this niche →
Category and tags
- Horizontal
- Dev tools
- Developer
- Not AI
- Hobby / open-source project
Visit website ↗ Source listing ↗
More like this: all 190 launches in networking and tunneling utilities →
Could you build this?
No Building a custom DNS resolver from scratch with TLS termination, WebSocket passthrough, and zero third-party DNS libraries requires deep systems networking, low-level binary packet parsing, and crypto engineering.
What it would actually take: A production version requires raw UDP/TCP socket handling in Rust implementing RFC 1035 packet decoding/encoding, integrated with a reverse proxy engine (like Hyper or raw Mio). It also necessitates automated ACME/TLS certificate synthesis on the fly, custom connection upgrade handling for WebSockets, and low-level OS networking expertise.
Discussion
20 comments analyzed.
Competitors mentioned: Tailscale (for DNS/network services)
Concerns raised: Vulnerable to dots embedded in labels - doesn't escape bytes properly when converting from wire format to text, Unclear whether 'I did this myself' means reading specs or just writing prompts for AI, Capitalization of 'Numa' could be clearer to distinguish from acronym
Feature requests: Handle dots embedded in DNS labels properly
Competitors
Other products that read as similar to this one : 569 launches clear the similarity bar, closest 8 shown.
Attention rank: #58 of 570 (itself plus its competitors, highest first, normalized so YC and Product Hunt are compared fairly).
Launched 154 days after the earliest competitor.
- LocalDNS · github · 2026-10-15 · 14 upvotes · similarity 0.59
- Nomina · hn · 2026-06-28 · 6 upvotes · similarity 0.58
- D.NIX. · ph · 2026-09-20 · 2 upvotes · similarity 0.51
- HTTP/3 and raw QUIC client/server APIs for Node.js · hn · 2026-06-08 · 16 upvotes · similarity 0.49
- DNStracr · ph · 2026-11-09 · 1 upvotes · similarity 0.49
- helpers.work · ph · 2026-11-11 · 1 upvotes · similarity 0.48
- OpenWorkers · hn · 2026-01-01 · 500 upvotes · similarity 0.47
- MacDNS · ph · 2026-10-20 · 2 upvotes · similarity 0.47
The niche, labels, vibe code rating and competitor comparison on this page are analysis by Nicheloom. If you use them, please credit nicheloom.com. How you may use our data.