Sam Trenholme's webpage
Support this website

The OnceTV update


December 6 2013

I discuss the OnceTV update from the other day and some possible consequences of the code change I did.

==Note on updating Deadwood==

When updating Deadwood to fix the bug, be sure to delete Deadwood’s cache:

  • Stop Deadwood
  • Remove the cache file
  • Start Deadwood again

Otherwise, Deadwood will have bad NS referrals in its cache.

==The speed up==

Let’s suppose we have the following gluless name referral to follow to resolve

  • First we go the the root name servers
  • Which point us to the .net servers, who point out the nameservers for are and




  • We now go back to the root name severs
  • Which take us to the .org name server who give us this packet:




Now, with versions of Deadwood before the update, we would now go to one of the name servers before getting our final answer; the update saves us a single DNS query by resolving the glueless record when querying the .org name servers.

In most cases, when resolving glueless name server records, this saves us one DNS lookup.

One minor disadvantage is that if we want to find another record in, Deadwood and have cached all the records needed to solve, Deadwood will now have to do two instead of one lookup (since earlier versions of Deadwood would cache the nameservers for, but current Deadwood will instead cache the IP for either or

==A new corner case==

Let us suppose we are looking for and the upstream DNS server gives us this record:




The updated Deadwood, when getting this packet, will assume only has one IP, in this case since that was the first IP in the packet Deadwood got. Should be the only server that can resolve (and lists as its glueless name server), Deadwood would now be unable to resolve

Should I see a real-world case where this particular corner case causes a domain to be unable to resolve, I will update Deadwood to handle it. At this point I only update Deadwood to solve real-world domain resolution issues (as well as security issues); theoretical problems are put on the back burner.

==Deadwood roadmap==

I plan on releasing Deadwood 3.2.04 soon; at this point, 3.2.03e would only be released should I discover another security issue. 3.2.04 will first be a testing release; I will mark it as being a stable release after seeing no problems caused by it for a couple of months.

To post a comment about this blog entry, go to the forum (self-signed https). New accounts may post once I approve the account.