|
|
|
|
|
by tptacek
1604 days ago
|
|
This is a surpassingly facile putdown. `miekg/dns` is being used here as a DNS request/response parser library. There's almost nothing interesting about parsing DNS messages. The interesting logic in the DNS is the recursive lookup, which is the part this post captures. As far as I know (we use the same library for our authority servers) `miekg/dns` doesn't even do recursive lookups. It's not just that, though. It's also that recursive lookups are the probably the most mystifying aspect of DNS. DNS message parsers are straight-line code; there are lots of them, including in POSIX libc. What you don't have in POSIX libc is a function that does a complete from-the-root recursive lookup for a name; most DNS "client" implementations stop at "send the request to the local recursive cache". To see that function implemented in such a tiny amount of code is itself super interesting. Essentially, what you're saying is that the article disappointed you because it purported to be about making pizza, but didn't first specify how to make the oven. |
|
People taking umbrage with the title as posted here (and the original site title) are IMO not wrong. The article title has been changed to "A toy DNS resolver" now, so obviously it was contentious enough that she thought to change it.