Friday, December 05, 2008

Custom Domains, DNS, and Latency

One of the least understood details about Google Custom Domains is the need to wait, when setting up, or when making changes to, the DNS addressing for the domain.

This is important, before publishing the blog within Blogger, or telling our readers about our new non-BlogSpot blog. Daily, we see anxious queries
I just used the "Buy a Domain For My Blog" wizard, and paid for my domain with my credit card. The credit card company confirmed the charge. But I see that it's "In Transition"??
or
You told me how to fix my DNS problem, and I did just what you told me. But I don't see my changes when I Dig the addresses for my domain. I know that I made the changes!

What is going on here? Why do I have to wait, unpredictably?

The answer is reasonably simple - though the symptoms can be intriguingly complex.
  • A new domain isn't going to be visible everywhere, immediately, because there are millions of DNS servers, all over the Internet.

    Your domain uses one identified DNS server, possibly provided by the registrar, which becomes the authoritative server for your domain. You, and your readers, have your own DNS servers, which you use to retrieve address information for every web site that you access.

    When you, or your reader, accesses your domain, your local DNS server provides you the address of your domain, and becomes non-authoritative for your domain.

    Each non-authoritative (local) DNS server (that you or your readers - or Google - access) isn't going to immediately retrieve the DNS information for your new domain.

    Each DNS server maintains its own master list of all domains on the Internet, and it caches the list on its own terms. Some servers only update their master list once a day, others every 2 or 3 days.

  • Changes to an existing domain won't be visible, immediately, because the domain addresses retrieved by each non-authoritative server will be cached on that server.

    The cache retention period is based upon Time To Live, which is provided by the authoritative server for the domain. Until the cache expires, the non-authoritative server will continue to provide the addresses previously retrieved.

  • Most ISPs and registrars use clusters of servers, geographically separated - and interconnected with multiple communication lines. This strategy protects against any local disaster interrupting service to all customers, simultaneously.

    If a DNS server is part of a cluster, there is no guarantee that all servers will update at exactly the same time.

    Only one server is authoritative for your domain, at any time. If you (your readers, Google) access the same domain repeatedly, you may get different information each time, until all servers are synchronised with the authoritative server.

If you purchased the domain using "Buy a domain", none of the above became a problem, because of the Transition time period, applied by Blogger. If you setup the domain yourself, after purchasing from a registrar - as is the case for every domain purchased after 2012 - you need to maintain a Transition period, yourself, or expect problems, during the first week or so.

For more discussion, you can read (again, alphabetised):

And, try this interesting DNS Propagation Checker, for experimentation.

>> Top

7 comments:

Pareen Lathia said...

My registrar doesnt allow me to set TTL to 3600. Least I can set is 14400. Would this be the cause of domain not working?

Chuck said...

Pareen,

I suspect that you haven't read Custom Domains, DNS, and Time To Live. No, "14400" (3 hours) won't damage the custom domain, though you will have to wait longer to see your changes. It could be a contributor to the not working condition, but it won't cause it on its own.

Hemantgiri S. Goswami said...

Hi,

I did follow this posts, and it helps me a lot. My custom domain is now working perfectly.

Thanking you

Hemantgiri S. Goswami | http://www.sql-server-citation.com/

Eli M said...

this is a great post... i am not good with this kind of stuff at all so i am one to be like "why is this not working, and NOW!!!" but this really puts everything into perspective, and helps me understand it better! i was one to post in the forum over this exact same issue oops! but i added you since and want to thank you for the speedy reply and informative response!

Eli

My Smart Hands - Boise said...

it has been a week and a half since I purchased my custom domain name through google, and (they charged my debit card) I am still receiving a 404 code. What's the deal?

Chuck said...

it has been a week and a half since I purchased my custom domain name through google

Have you started a discussion in BHF: Something Is Broken, where we can diagnose the problem, and hopefully advise you properly?

Samiullah ... said...

Hi Nitecruzr - Blogger Top Contributor, you helped me a lot in resolving my CNAME issue with my registrar..Thanks and your blog is too good for blogging kind of stuff..great work..