4

So I got a VPS set up (LAMP) and have transfered a couple of sites over. Now I want to point my domain names from the old host to the new VPS host, which does not have any name servers yet.

On my registrars console I have set the domain name 'www.mydomain.com' domain host settings to point to my VPS's ip address, eg:

ns1.mydomain.com = 111.222.3.4

and

ns2.mydomain.com = 111.222.3.4

I then lowered the TTL to one hour.

I then switched the Nameservers on that domain to these new ones. (ns1/2.mydomain.com)

In WHM I then set the servers name servers to ns1.mydomain.com and ns2.mydomain.com.

I waited an hour to test...but nothing changed - the domain name still directed to the old host.

Have I missed something? Is the some other record I need to change on the DNS? I find this very confusing, does anyone know a resource or can provide a step by step guide on how to configure a new servers nameservers?

Thanks

EDIT: added image (sorry bout the censoring. Client insists)

On my regisrars console: enter image description here

And on my VPS' WHM:

enter image description here

2 Answers 2

5

It sounds like your domain records have not propagated yet. This means that the domain name servers around the world that store a record of your domain information haven't updated with the latest details, so they are still 'sending' visitors to your old server.

The solution is to wait. It can take between 0 and 48 hours for domain name changes to update around the world. (More here.)

Lowering the TTL to one hour won't immediately affect the speed of this update – if your previous TTL was 12 hours, it will take 12 hours before the new TTL of one hour takes effect. You'll also have to wait whatever time your previous TTL specified before the nameserver changes take effect.

To check whether global nameservers have updated with your latest domain information, you can do a DNS propagation check:

  1. Visit http://www.whatsmydns.net/
  2. Type your domain name into the box on that page.
  3. Select "NS" from the drop down (instead of "A")
  4. Click "Search"

You'll see a list of nameservers records from around the world that look like this:

DNS propagation example

If you see the old nameservers next to your domain for some of the locations, it means that your change hasn't propagated around the Internet yet and you'll have to wait longer.

If you see the new nameservers next to your domain for all locations but you're still seeing the data at the old server when you visit your domain, then your computer could be caching the old domain information. You can flush your local DNS cache and revisit your site to force your local records to update.

You can also confirm what the nameservers appear to be from your own location by using the dig tool in the command line (installed by default on Mac/Linux, but available to download for Windows):

dig NS stackexchange.com

Response:

;; ANSWER SECTION:
stackexchange.com.  300 IN  NS  ns3.serverfault.com.
stackexchange.com.  300 IN  NS  ns1.serverfault.com.
stackexchange.com.  300 IN  NS  ns2.serverfault.com.
4
  • Thanks! That is really helpful. However, I've followed all this and it all seems to be correct - on the propagation check the NS records are pointing to the new one I set up. However, I also tested A records and they are still pointing to the old servers IP. I have set the A records in on the Registrar console to point to the new servers IP. Is this still a propagation thing?
    – MeltingDog
    May 23, 2013 at 23:46
  • It sounds like your WHM nameserver configuration contains no A records, or incorrect ones. Personally, instead of running a nameserver on your VPS, I would just use your registrar's nameserver. You would need to: (a) reset your nameservers in your domain registrar's control panel to use theirs instead of yours and (b) add an A record in your domain registrar's control panel that points to your new server's IP address (don't forget to add an A or CNAME record for the 'www' subdomain as well). That way, you can switch the nameserver off on your VPS and use all its resources for the web server.
    – Nick
    May 24, 2013 at 15:09
  • thanks but still no luck! I have added screen shots from my registrars console and from WHM above. Could I trouble you once more to take a quick look? This really has me stumped. Ive offered a bounty
    – MeltingDog
    May 27, 2013 at 2:15
  • Thanks for the screenshots. It looks like the NS records for your domain are set to use the planetdomain.com nameservers, but that no A or CNAME entry exists in your domain record to point to your VPS server. So visitors are being sent to the parked domain server at park.planetdomain.com. (Correct?) You could: 1. Add an A record for [censored].com.au. or * that points to the VPS IP address and 2. Remove the CNAME record for park.planetdomain.com then 3. Wait the necessary time for DNS propagation and check the A record with dig or the DNS service above.
    – Nick
    May 27, 2013 at 7:45
1

I just went through this a bit myself(different circumstances/providers/etc), but the checklist:

  • Make sure you are updating the Serial Number. Since you noted you are hosting the DNS from your VPS, you will need to make sure this is updating.
  • Make sure your nameserver is registered with your registrar and not just in your dns configs. Just adding ns1.xyz.com and ns2.xyz.com to your dns records won't tell the registrar to respect it as a nameserver. There should be an option to add or register a new nameserver.
  • ns1 and ns2 pointing to the same host... some interfaces will reject this.
  • "* CNAME to park.planetdomain.com" might be catching stuff.
  • Perform a local lookup check on your nameserver to make sure that your configs are correct and serving what you expect them to be serving out.

While most updates happen quickly, in as little as an hour. I've seen some take more than a day or two.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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