Many people have asked for the source to dnscheck over the years but it was written as a prototype and regrettably I’d be very embarrassed if I released it. So I’ve re-written it from the ground up in OO Ruby and the gem is the result.
Conceptually dnstraverse does the same thing as a DNS resolver, with the major difference that it doesn’t just pick the fastest answer it picks all the answers. It can then calculate the %age probabilities of which answer will be returned. It’s a great way of debugging DNS problems such as lame server delegation and intermediate server connectivity issues. dnstraverse is more standards compliant than dnscheck and returns errors in a more meaningful way.
Please give dnstraverse a go and let me know what you think. It’s beta, so there may be issues. If so, drop me a note and I’ll be more than happy to help you out.
On an aside note, I love Ruby as a language. I’m not sure I can ever go back to Perl again. Unfortunately, Perl still wins hands down for support modules, documentation and system administration.