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

Simple Failover markets itself as:

continuously monitors your servers to find out which are up and which are down, and then it dynamically updates your DNS records accordingly so that your domain name always points to a functional server.

From what I know, updating DNS records can take hours to days to propagate. As such, even if they dynamically update my server's DNS records, my users would still have to wait a few hours before they would see any change right?

If so, how could "Simple Failover" work?

share|improve this question

1 Answer 1

up vote 5 down vote accepted

DNS record lifetimes are based on the TTL (Time To Live) of the record itself. If the TTL is 1 hour then theoretically that's the maximum amount of time a DNS resolver will cache that information before it performs a new lookup for the record. Typically this would only affect DNS resolvers that already have the information in their resolver cache. Any resolver that doesn't have the information in their cache will perform a lookup and get the updated/new information immediately, since the information is not in it's cache there's no waiting for the TTL to expire.

Others are bound to warn you that some DNS servers don't honor TTL's and that certainly is a possibility. I prefer to work from the assumption that all DNS servers will honor the TTL and I'll deal with any edge cases that come up. If you start worrying about what some DNS servers may or may not do then you'll get all wrapped up in trying to troubleshoot DNS problems that aren't actually your problem. If someone else's DNS server doesn't honor my TTL then that's their problem, not mine.

As an aside: DNS is a pull technology, not a push technology. DNS records don't get propagated, as is commonly stated (or mistated). The only name servers that hold a copy of your DNS zones (and the records in those zones) are your name servers. When you make a change to your DNS, that change does not get pushed anywhere. Other DNS servers and/or resolvers may have one or more of your DNS records cached but when the TTL expires they'll pull the updated/new information the next time they perform a lookup of that particular DNS record.

share|improve this answer
    
Glad to be of service. –  joeqwerty Sep 26 '11 at 1:10
    
btw, for example when I change my dns in godaddy and they say changes may take up to 48 hours, what do they mean? (shouldn't dns updates be an immediate thing?) –  Pacerier Sep 26 '11 at 16:20
    
They're referring to caching, based on the TTL of the records being changed. They're simply hedging their bets by informing you that it may take up to 48 hours for your changes to be reflected (again, only for resolvers that have your DNS information cached). –  joeqwerty Sep 26 '11 at 16:33
    
How bad is the situation in the wild? I'm referring to rogue DNS servers which doesn't respect TTLs. Since most companies don't write their own DNS software, do you know of any DNS software (djbdns, BIND, etc) that tries to play punk? –  Pacerier May 14 at 5:12
    
They exist - mostly at ISP level which tend to do all kind of crap with DNS servers... which is why google made their public DNS serbice some point in the past. THat said, it is not too bad because companies like cloudflare use a very short TTL to handle dynamic DNS redirections. –  TomTom May 14 at 5:20

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.