finds.dev← search

// the find

jvns/dns-lookup

★ 350 · HTML · updated Sep 2024

A tiny web tool from Julia Evans for making DNS queries against 8.8.8.8 and tracing how resolution actually happens (root → TLD → authoritative). It's aimed at developers who want to see raw DNS behavior without parsing dig output or understanding resolver internals.

The trace tool is the actual value here — walking through the full resolution chain step by step is a better teaching tool than a one-shot dig wrapper. Stack is dead simple: a small Go backend (dns.go) plus vanilla JS/HTML on the frontend, no framework, trivial to read in one sitting or self-host via the included Makefile and netlify.toml.

No tests anywhere in the tree, and dns.go almost certainly hand-rolls DNS packet construction/parsing — that's exactly the kind of code where subtle bugs (truncation, EDNS, compression pointers) hide for years without test coverage. It's a website, not a library: there's no documented API or package boundary, so you can't easily pull dns.go into your own project. Last pushed September 2024 and the README gives zero architecture detail, so understanding the Go side means just reading the source.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →