dnstrace uses the standard DNS resolution algorithm, but follows all possible paths in the algorithm. It prints all responses it receives from DNS servers; it also prints warnings about slow servers, dead servers, misdelegated (``lame'') servers, and misformatted packets. dnstrace is similar in spirit to DOC and dnswalk but is much more effective than those tools at debugging resolution problems.
In versions 1.03 and above: You can pipe dnstrace through dnstracesort(1) for human-friendly output. dnstrace can take a long time to run, so standard procedure is to save its output in a file:
dnstrace any www.aol.com a.root-servers.net > AOL &
Then you can run dnstracesort(1) to see the results so far:
dnstracesort < AOL | less
The dnstracesort(1) output uses ul codes for boldface and underline; these codes are displayed properly by less(1).
Beware that, as of February 2000, dnstrace produces half a megabyte of output for the complete trace of a typical .com name starting from all the root servers. There are more than 200 computers around the world that can affect all .com names.
http://cr.yp.to/djbdns.html