Fog Creek Software
Discussion Board




DNS Propagation - any way to speed up?

Here's what happened to me over the last couple of days.

I've had a domain with web host A for several years. Recently I've been moving all of my content to host B. The main thing I use this domain for is email delivery.

To make the process incremental and seamless, I did the following.

- Several days ago, I set up an email redirector at host A to redirect all email from host A to host B (to an alternate domain not affected by this transferral issue.) This was to cover the transitional time when the DNS changeover took place, so that email would wind up at the right place.

- I use Directnic.com for the domain's registration. They have an email redirector and host parking feature.  I enabled this feature (name servers in DNS record were set to ns1.directnic.com, etc) I pointed the email redirector for the domain to host B and I pointed the parked page thingie to host B (the alternate domain for both, natch.)

- Checking after a couple of days, it seemed that email was being routed to host B even when sent to the domain address. I checked from several different hosts, web email services, and a couple of shell accounts. Most important, traceroute and ping from two different shell accounts listed directnic as the destination for the domain. And I was getting email addressed to the domain, arriving at the new host B.

- I then canceled my hosting account with host A, confident I had seen the DNS propogation settle out. Checking it, I have seen that my account admin screen at host A has dissappeared.

- Now I see that I am getting NO emails at host B. Most unsettling, pings and traceroutes from one shell account point back to... host A!

The point is, I transferred my domain and set up safeguards to catch email while things were in transition, and I kept the old host going until things seemed OK. Only after formally deleting the old account, DNS from some hosts is now saying that the domain is still at the old host, which now won't accept any requests. It's as though canceling the account 'de-freshened' everyone's notion of where the domain lives.

Yes, the directnic record still shows directnic's server as the DNS of choice.

Is it possible to speed this transition process up somehow? What the *hell* makes a DNS transfer get 'undone'?! I know I'm losing emails.

Dammit, dammit.

Bored Bystander
Friday, May 30, 2003

The big problem is that during the bandwidth scares of the late '90's, the philosophy was "cache everything." One huge target was DNS - people thought of DNS like street addresses, and figured "they don't change very often, so we'll cache the heck out of them"

What they forgot was that when DNS *does* change, you want the change apparent immediately, and that's the downside to caching.

I know of a few sysadmins that have set their DNS servers to cache for eight days. There is nothing you can do to fix this.

For future reference - for mission critical systems, run old and new hosts in parallel for a month.

Philo

Philo
Friday, May 30, 2003

I don't have an answer or explanation, but I went through the same process of changing host providers and DNS registration a few months ago, and I kept the old provider account for a month of overlap. I was still seeing occasional emails going through the old provider about 2 weeks (maybe slightly more, may have been closer to 3 weeks) after changing the DNS information at the domain registrar.

Philip Dickerson
Friday, May 30, 2003

Philo: since it sounds like you know more than I do about this stuff, here's a another question: would it assist this process to set up an alternative DNS at a location like granitecanyon.org (free DNS) or another DNS service that points to the right place, and add those servers to the domain's list of DNS servers?

Bored Bystander
Friday, May 30, 2003

No.
Well, couldn't hurt. ;-)

But think about how DNS works and what's going on - DNS is a name->number lookup service. Some DNS servers cache DNS addresses for [x] days.

For example:
Let's say that BigISPCo.com has DNS servers that cache for eight days. They look up the IP address for BoredBystander.com on Monday and find that it's 192.168.1.10. On Tuesday you move your website. When someone types "BoredBystander.com" into their browser on Thursday, their system is going to go to BigISPCo's DNS server, which is going to return 192.168.1.10 without even checking the root servers.

So - nothing you can do. :-/

Philo

Philo
Friday, May 30, 2003

Sometimes best effort means no effort.

Nat Ersoz
Friday, May 30, 2003

actually doesn't dns have time-to-live as a value?
so if you know you are about to change, you set the ttl down to a very low number. then after you change you set it back up.

of course you still need at least a week of overlap.

you shouldn't lose too much mail however, as mail to the wrong server should bounce. if you're real lucky you had your own ip address (yeah right) and the sender will automatically try again.

mb
Friday, May 30, 2003

TTL is a hit-or-miss thing. Some DNS caches respect it, and some don't. Regardless, it seems silly to set your TTL to, let's say, 1 hour, just because sometime in the next 4 years you plan to move your site to a new host. :-p

Brad Wilson (dotnetguy.techieswithcats.com)
Friday, May 30, 2003

On the other hand, nothing silly about lowering the TTL temporarily to eg. 1 hour for a couple of weeks, and putting it back to a more reasonable value once the DNS changes have spread around the Net.

Moral of the story: don't bet on remote DNS server to respect the TTL that you set in your zones, and keep the old servers running for at least a month, using redirection so that eg. people are sent to the new mail or web server.

Yup, been bitten too :-)

Frederic Faure
Saturday, May 31, 2003

My solution is to use a DNS hosting company that is completely separate from my web and email hosts. (I use EasyDNS.com but I'm sure there are others). This way I can change email and web providers very quickly, without the chance of anyone screwing up the domain transfer. (EasyDNS email routing changes in real-time, but the web server IP will require the normal DNS settling time).

A few months ago I had to take advantage of this when my web host screwed up my account; I had everything set up at a new web hosting company in 12 hours.

Dan Maas
Sunday, June 01, 2003

The well-known way to do this, is to lower your TTL values for a while before making a DNS change.  However, there are three big issues with this:

1) sometimes you don't know when you'll be making such a change

2) lots of ISPs set the DNS TTL to several days, and stubbornly refuse to make an exception for you, particularly because you generally ask them when you are leaving as a customer, and they probably don't know how anway

3) various client programs and DNS client modules do their own caching, and do not process DNS TLL anywhere near correctly.  This includes, for example, Google's web spider.  I moved my web site a while back, and more than a week past the DNS change and TTL expiration, the old server was *still* getting a slow stream of hits from Googlebot trying to spider the site.


I have now concluded that to be completely safe (i.e., no person or search engine will think your site is missing), you should allow a month overlap - the server at the old IP address should continue to work for that duration.

Kyle Cordes (www.kylecordes.com)
Sunday, June 01, 2003

*  Recent Topics

*  Fog Creek Home