nanog mailing list archives

Re: Time out for a terminology check--"resolver" vs "server".


From: Rob Austein <sra () isc org>
Date: Sun, 14 Feb 2010 19:17:45 -0500

At Sun, 14 Feb 2010 18:02:48 -0600, Laurence F Sheldon, Jr  wrote:

I thought I understood but from recent contexts here it is clear that I
do not.

I thought a resolver was code in your local machine that provide
hostname (FQDN?), given address; or address, given host name (with
assists to build FQDN).

And I thought a "server" was a separate program, might be on the same
machine, might be on another machine (might be on the local net, might
be distant) that the resolver code called for information that was not
in local cache.

Just what is the straight scoop?

No doubt Olafur will beat me up yet again for not having written the
DNS lexicon years ago, but:

- A "resolver" is something that implements the "resolver" (ie,
  client) role in the DNS protocol.  It might be a stub resolver, the
  client side of a recursive nameserver, a pure iterative resolver,
  ....

  The defining characteristic is that it send queries (QR=0) and
  receives responses (QR=1).

- A "name sever" is something that implements the "nameserver" (ie,
  server) role in the DNS protocol.  It might be an authoritative
  nameserver, the server side of a recursive nameserver, ....

  The defining characteristic is that it receives queries (QR=0) and
  sends responses (QR=1).

Clear enough?

Mapping protocol definitions onto the plethora of terms used by
operators in the field is left as an exercise for the reader, no
sarcasm intended.  DNS is an old protocol, there are an awful lot of
people who think they understand it, and each of those people has
their own set of terms that they're comfortable using.  The
definitions above are what I rammed through the IETF during several
rounds of standards writing, but I would be the first to admit that
not everybody uses the terms the same way as I do.


Current thread: