Process if ServerA goes down (taking the primary nameserver with it!): 1. When I notice the main server is down or decide to take it down I will manually update all my domain's zone records at NS2.Host.com to direct traffic to the working IP (and temporary webpage). 2. When ServerA/NS1 come back up NS2 automatically requests a zone transfer from NS1, overwriting the manual changes made in Step 1.
Is that correct?
What kind of TTL values should I permanently use to ensure this works in a timely fashion? I don't want to set them so low that the server sees a lot of extra DNS traffic. I would be happy if everybody in the world saw the Server Down page within 5 minutes of Step 1 above being performed. What kind of issues would prevent this from working? TIA!
NS2 will only transfer the zone from NS1 if NS1's copy of the zone has a more recent (which usually means bigger) serial number in its SOA record. Therefore, you'll need some process on NS1 to continually update the serial number, and you should set low refresh and retry values on the zone so that NS2 will constantly check for newer versions. The refresh and retry values might not be necessary, since I think that BIND sends a NOTIFY packet to all of the listed slaves whenever it loads an updated copy of a zone.
Originally posted by dan_erat The refresh and retry values might not be necessary, since I think that BIND sends a NOTIFY packet to all of the listed slaves whenever it loads an updated copy of a zone.
I wondered this as well. In any case (NOTIFY or Refresh/Retry) is there any way to force NS1 to feed NS2 with the old zones (to "restore" the original DNS state before the downtime)? Won't the zones only transfer if the serial number on NS1 is newer than NS2? The only way I can think of is to manually update the serials of the zones on NS1 before the NOTIFY, but that would require my being there, and I would prefer an automatic solution.
I'm confused - which TTLs need to be changed to ensure minimal downtime? The main SOA TTLs or the Negative Caching TTLs? Can I safely assume that most resolvers out there use Minimum TTL field for Negative Caching?
Is there a better way to set up a temporary "Server Down" message?
You will need to set the TTLs for the "@" and "www" A records (or whichever records you want to fail over). Negative caching only applies when a record doesn't exist, and the TTL on the SOA record only applies to the SOA record itself.