I cannot explain why dig says things are OK while your own
resolver does not.
I haven't looked into this at all (don't really have time right
now...maybe over the
weekend), so I don't know the answer either, but my guesses are the obvious
ones: either Road Runner's dns doesn't cache, or there is a bug in the
homebrewed client or a misinterpretation of its results.
That being said, if your DNS servers are not performing recursive
queries, then you will not be getting any name resolution outside
of the Road Runner network (and the support line would be flooded
with complaining customers).
This is incorrect. Normally (when Recursion Desired bit is not set), if
a server doesn't
know the answer, then it will provide suggestions for servers that are
more likely to know
the answer. The idea is, the client can then ask those servers. If RD
is set, then
the server goes out and queries other servers on its own and then
returns the result.
This recursive feature is optional for dns server implementations.
--Ray