RustDNS: Writing a Recursive DNS Resolver in Rust, Byte by Byte
TL;DR : RustDNS is a recursive DNS resolver written in plain Rust with zero dependencies , just std::net::UdpSocket and a 512-byte array. It parses DNS packets by hand, follows compression pointers, starts every lookup at a root server and walks the tree down to the answer, then serves that answer to dig on port 2053. This post goes through the code byte by byte, and then through what broke when…
We haven't written up this one. Dev.to has the full story — the link below goes straight to it.