>> I believe that the most natural perspective is from the view point of a
>> resolver attempting to classify a (non?)response to a query sent to an
>> authoritative server.
>
> Another way of thinking about this perspective is that, e.g., a
> delegation response from a.gtld-servers.net (.COM nameserver) that
> returns some set of nameservers for "example.com.":
>
>     ; ANSWER
>     ; AUTHORITY
>     example.com. IN NS ns1.provider.net.
>     example.com. IN NS ns2.provider.net.
>
> is a valid delegation response (and so not from this perspective a LAME
> delegation), whether or not the target servers actualy serve the zone.

I agree that this is a valid delegation response.  I do however
disagree with the latter part of this sentence; it *may* be a
"lame delegation" depending on the response you as a recursive
resolver get from the two delegated-to name servers when you try
to look up a name in the example.com zone.

> A LAME delegation (response) happens when "ns1" or "ns2" respond to
> queries with yet another (e.g. self) delegation that does not move the
> resolver closer to the target:
>
>     ; ANSWER
>     ; AUTHORITY
>     example.com. IN NS ns1.provider.net.
>     example.com. IN NS ns2.provider.net.

I am having problems seeing under what normal-ish circumstances
either ns1 or ns2 would provide this response.

One could be that they do not serve the example.com zone, but are
somehow hidden slave name servers for .com (which is unlikely due to
the resource requirements to run such a name server).

If they do serve example.com, I would normally expect a non-empty
answer (if queried for an existing name in the zone), an
err=NXDOMAIN response or an empty err=NOERROR response (for empty
non-terminal names), and not a delegation as above.

If they do not serve example.com, where would the delegation
response come from?  Remember, the recursive resolver querying these
name servers would do so with RD=0, so neither of them are being
asked to do a recursive lookup, so if they despite this either go
out and query the .com name servers and return the delegation or
respond with data from their cache (if they also provide recursive
service to a subset of clients), that would go against the spirit of
adhering to the RD=0.  And ... both being a publishing name server
and a recursive server is IMO rightfully frowned upon, especially if
data from the cache is allowed to leak through to a non-recursive
query.

So ... if ns1 and ns2 are both publishing-only non-recursive name
servers (which I would claim would be "normal"), and they do run a
DNS name server, I would argue that an appropriate response to a
query for a name in a zone they are not provisioned to serve would
be err=REFUSED instead of somehow cooking up a delegation response.

> A resolver would then report a LAME delegation EDE (once defined)
> accordingly, based on non-progress.

The concept of non-progress is nice.  However, I don't think we
need to define a new EDE, what's wrong with (re)using

   4.23. Extended DNS Error Code 22 - No Reachable Authority 

   The resolver could not reach any of the authoritative name
   servers (or they potentially refused to reply).

> If there's a failure at the ".COM" layer, it falls outside the DNS
> protocol, and veers into questions of intent and operator competence,
> questions of authority and responsibility to keep data up date, ...

I'm not sure what scenario this desribes -- a delegation from the
root to the .com zone which points to a name server which isn't set
up to serve the .com zone?  (That would indeed be a lame delegation
at the .com level, but would in operational reality be unlikely; the
folks managing the .com zone tend to have their ducks in a row.)

> Any protocol failure is with ns1/ns2 whether or not it is
> administratively their operator's *fault*.

Again, I'm not sure what this describes.  However, the situation
where both ns1 and ns2 fail to respond as "expected" to queries for
example.com can very much arise without the administrator of ns1/ns2
being at fault.  If the registrars for .com just allow registration
of delegations without checking for operational viability at the
time of delegation creation or modification, the domain owner of
example.com can ask for this delegation without informing the
operator of ns1/ns2.  One could question why the domain owner would
do that, "lack of knowledge" would be one valid response.  But the
operators of ns1/ns2 would not be at fault.

But you had perhaps something else in mind?

Regards,

- HÃ¥vard

_______________________________________________
DNSOP mailing list
DNSOP@ietf.org
https://www.ietf.org/mailman/listinfo/dnsop

Reply via email to