'dig -t any ...' question

Barry Margolin barmar at alum.mit.edu
Sat Jun 12 07:43:34 UTC 2004


In article <caeb4f$29aj$1 at sf1.isc.org>,
 Ladislav Vobr <lvobr at ies.etisalat.ae> wrote:

> Jim Reid wrote:
> >>>>>>"Sara" == Sara  <demone33 at yahoo.it> writes:
> > 
> > 
> >     Sara> Hi all, please take a look at the below reported commands I
> >     Sara> issued from DNS (BIND 9.2.1 on Red-Hat 7.3) and the output I
> >     Sara> got Briefly, I issued:
> > 
> >     Sara> # dig -t any ericsson.com 
> >     Sara> # dig -t mx ericsson.com 
> >     Sara> # dig -t any ericsson.com
> > 
> >     Sara> and I got different output for the dig -t any ericsson.com
> >     Sara> commands.  So, which is the way the 'dig -t any' command
> >     Sara> works?  Thank you all.
> > 
> > There's nothing strange happening here. All you're seeing is routine
> > cacheing and resolving behaviour. Your name sever knew nothing about
> > ericsson.com. So the first lookup terminates when your name server
> > retrieves the name servers for ericsson.com from the .com name
> > servers. 
> 
> jim, basically what you saying is that it answers with glue records, but 
> how come the glue is provided to the recursive client talking to the 
> recursive server, shouldn't it provide only *answers* or better than that??
> 
> how come the recursive server doesn't not even try to get better answer 
> for a 'recursion required' client, when the recursive server definitely 
> knows it is just a glue, or it doesn't ...? perhaps erricsson servers 
> don't not exist at all and nobody will ever find out after this single 
> dig since it doesn't even try to ask them...

When you ask for ANY, you get whatever happens to be in the cache at 
that moment.  The Recursion Desired flag only means that it should 
recurse if necessary.  But if the answer is already cached, recursion is 
not necessary.  An ANY query will only recurse if the server has no 
records cached for that name; if anything is cached, that's what you get.

You seem to expect ANY to mean "all", but that's not what it means.

What is the particular problem you're trying to solve by sending ANY 
queries to a caching server?  If you want to see all the records for a 
name, send the query to its authoritative server.

-- 
Barry Margolin, barmar at alum.mit.edu
Arlington, MA
*** PLEASE post questions in newsgroups, not directly to me ***


More information about the bind-users mailing list