[TriLUG] Slides from last night's DNS Presentation

Aaron S. Joyner aaron at joyner.ws
Fri Oct 15 15:23:36 EDT 2004


Matt Pusateri wrote:

>... Wouldn't it also be possible for a server to be lame due to a
>valid DNS change that hasn't propagated through to all name servers
>yet.  For example, you make a request to your ISP name server since
>you are using it as a forwarder.  They have example.com cached so they
>give you the NS from their cache.
>
Actually, you didn't miss anything.  What you understood is correct, and 
is actually perhaps the most useful use of the "lame server" feature.  
In the case you mentioned, if example.com had *removed* an NS entry, yet 
you.isp.net had it cached, and you were using your ISP for recursive 
lookups, it goes something like this.

Your ISP tries to lookup newquery.example.com
Your ISP finds 3 cached NS records for example.com
Here, two things can happen...

If
Your ISP chooses one of the cached NS records at random, and happens to 
pick the one that is no longer valid
It queries the server, gets a non-authoritative response, and marks it 
as lame.
Since it's lame, it won't query it again any more for that domain, until 
it expires from it's local cache.
It will then choose another of it's cached NS records and try again.

Else...
Your ISP chooses one of the cached NS records at random, and happens to 
pick one of the still-valid NSes
Hopefully, the new NS has correct NS records.  It will return the new NS 
records as glue along with your query
The name server will see an authoritative update of the NS records, and 
drop the old no-longer valid record

In the situation where *none* of the records your ISP has cached are 
valid, it will try them each in turn, mark them as lame, and then 
eventually fall back to querying the com servers again for example.com.  
If after getting a response from the com servers back, and all of those 
responses are lame, it will give up entirely with an error.

Tanner's distinction was useful to understand, but there are situations 
like what you originally had in mind, they're just very short-lived, as 
they only happen during maybe a 48 hour window, and are usually involved 
in the proper functioning of cache updating.

Aaron S. Joyner



More information about the TriLUG mailing list