On Fri, Aug 01, 2008 at 11:54:09PM -0400, Barry Margolin wrote: > > Can someone clarify for me the section in RFC 2308 on type 3 NODATA > > responses when there is a CNAME? > > > > The RFC shows an example where the response is a NOERROR with 0 answers, > > 0 authorities and 0 additionals, indicating that this is a type 3 NODATA > > response, and then goes on to say that a CNAME could also be included, > > "in which case it would be the value of the last CNAME for which NODATA > > would be concluded." > > > > The reason for my question is that all 4 of the authoritative > > nameservers for news.bbc.co.uk respond with what looks to me like a type > > 3 NODATA response, but clearly news.bbc.co.uk is very popular and works > > well. > > What's the problem? The server is authoritative for the bbc.co.uk > domain, but not for bbc.net.uk, and has recursion disabled, so it can't > resolve the CNAME. The client nameserver restarts its query using the > target of the CNAME.
I guess perhaps the problem is RFC 2308 was written in the days before bailiwick checks. So, would you say the correct algorithm to detect a NODATA in this situation is to check if the value of the last CNAME is in-bailiwick or not? If it's in-bailiwick then it's a type 3 NODATA, if it's outside then the nameserver will restart the query with the traget? Likewise, in the case of bailiwick bbc.co.uk, NOERROR, 2 ans, 0 auth, 0 add lookup news.bbc.co.uk type A Answer 1: news.bbc.co.uk CNAME something.else Answer 2: something.else CNAME news2.bbc.co.uk Would I be correct in saying a resolver should not accept this as a type 3 NODATA and should ignore the out-of-bailiwick second CNAME, and restart using the target of the first CNAME? Thanks for your help. James
