Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

i'm moving my hosted site (same host) to a static IP, I understand there will be some downtime due to DNS caching - does anybody have any tips how to minimize this time and to avoid my users seeing "page not found?"

thanks in advance

share|improve this question
    
Thanks everybody for the comments, it seems anyway I look at it there will be some downtime. A few hours is not the end of the world and I will send out an email to all site users a day or so beforehand. –  Sherif Buzz Oct 19 '10 at 20:39

5 Answers 5

up vote 8 down vote accepted

I'm assuming that you're referring to The DNS record that resolves to your web site address. If that's the case then here's my answer. It's slightly different from the answers alreay posted, and I'm not trying to start an argument with anyone:

  1. DNS records don't progagate, they cache. DNS is a pull technology, not a push technology.

  2. DNS records should be cached only for the TTL of the record in question.

  3. 99.999% of all DNS clients in the entire world (this includes web browsing clients and other DNS servers) won't have your web site DNS record in their cache. For these clients they'll get the updated information immediately because they'll have to perform a lookup for your web site's DNS record and will find the new information.

  4. The .001% of DNS clients that do have your web site DNS record in their cache will continue to use the old information until the TTL for the DNS record expires, at which time they'll perform a new lookup and get the new information.

So for all intents and purposes you really don't have much to worry about. My suggestion would be to make sure the TTL on the record is reasonable (say 1 hour to 24 hours) and to change the record at a time you expect to have the least traffic, based on the TTL. For example: If the TTL is 1 hour and your site is not busy from midnight to 8 AM then change it sometime between midnight and 8 AM. If the TTL is 24 hours and the site is not busy on weekends then change it over the weekend, etc., etc.

Also, as others are sure to point out, some DNS servers don't honor the TTL. There's nothing you can do about that. That's their problem, not yours. If DNS clients of those DNS servers can't access your site because they're caching the old information beyond the life of the TTL then it's their issue to resolve not yours. You can't account for every one off, errant, misconfigured, or otherwise faulty DNS client or server.

share|improve this answer
    
+1; this is what i meant by altering which server used vs changing the actual record (but worded better). Doing what the OP is doing should be fine. –  Sirex Oct 19 '10 at 11:56
    
@Sirex: I agree. Changing name servers may take longer as you stated (If I get what you meant in your answer) but changing the DNS record for the web site should have very little impact. –  joeqwerty Oct 19 '10 at 12:19

Tightly control your TTL values before the change. See articles such as:

You may also want to leave a 302 redirect page on the existing IP address for a week or so.

share|improve this answer

The best/only way of minimising downtime would be to maintain both IP addresses for 48 hours, preferably on the same server, if your supplier will allow this.

share|improve this answer
    
Thanks for the suggestion, I will check with them. –  Sherif Buzz Oct 19 '10 at 11:17

should be minimal. Changing the dns server used in the control panel of your hosting service will take longer, typically 24 hours give or take a bit, but changing the IP pointed to by that dns server should be a very small time, although there might be a delay between entering it and the dns reloading. I think its about 15-30 mins on the DNS service i use.

share|improve this answer
    
I've always been warned 48 hours for DNS changes to propogate, and working with offices distributed in many odd locations where DNS servers may be configured in strange ways, this seems about right. –  dunxd Oct 19 '10 at 11:06
1  
No - it should be the TTL configured on the DNS record + 3 hours –  symcbean Oct 19 '10 at 11:13
    
Yes - it should be, but depending on where the people you want to visit your site are based, you still want to allow more time. I've seen ISP DNS servers in a few locations completely ignore the TTL specified in the DNS record, and update according to their own schedule. 48 hours seemed a good compromise between what we wanted, and what we got (which was more like two weeks in one location!) Short story - pick a number that seems reasonable, and longer than you'd hope for, and you should be ok... –  dunxd Oct 19 '10 at 11:44

Keep in mind that some browsers maintain their own DNS caches that are separate from the host platform's DNS resolver. See "Client Applications" in this PDF article by Simple Failover.

Firefox has an addon available called "DNS Cache" which adds network.dnsCacheExpiration=0 to about:config, effectively enabling or disabling the feature on demand.

For Internet Explorer, see How Internet Explorer uses the cache for DNS host entries.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.