I'm having trouble moving the DNS for a site. We migrated our site from a shared-hosting server to a virtual private server (VPS). The custom name server for the VPS account has been running domains properly for two years. But now it won't resolve for the domain of the site we migrated.

The hosting company and our registrar keep pointing fingers at each other and won't fix whatever the issue is.

I know very little about DNS and have just relied the records the host adds to VPS when we migrate a domain -- or the Add DNS Zone feature in the accounts WHM dashboard.

I've tried to compare the DNS records of the newly migrated site to the records for the domain that ARE resolving from the same custom name server. Here's what I've found:

  • The new, non-resolving domain has a record that none of the working domains have: test 14400 IN A (ip address)

  • All but one of the working domains have the following records that the non-resolving domain doesn't have: autoconfig 14400 IN A (ip address) autodiscover 14400 IN A (ip address) _autodiscover._tcp 14400 IN SRV 0 0 443 cpanel.maildiscovery.net.

  • The one working domain that doesn't have the above records has: ftp 14400 IN A (ip address) default_domainkey 14400 IN TXT (long character string)

Can anyone tell me what's going on? Do I need to add autoconfig, autodiscover and _autodiscover._tcp to the domain that's not working?

  • If you gave the name involved, people could have troubleshooted things better for you.... – Patrick Mevzek May 30 '18 at 14:49

The extra records that you found shouldn't effect whether or not the domain name resolves. To get your domain name to resolve:

  1. Make sure your domain registrar is pointing the NS records to your DNS servers
  2. Ensure that your DNS servers are all returning the correct IP address when queried for the hostname and subdomains.

I recommend testing this with the command line tool dig. If you don't have it on the command line, it is also available through a web interface: https://toolbox.googleapps.com/apps/dig/

Check the name server (NS) records first. Substitute your domain name instead of example.com. Check the answer section and make sure that the DNS servers listed are what you expect. The DNS servers for example.com are a.iana-servers.net and b.iana-servers.net. You should have at least two DNS servers and may have as many as four. The name server host names are supplied by your DNS host, but entered into your domain registrar. If any of the NS information is incorrect it will need to be changed through your domain registrar.

$ dig NS example.com
example.com.        5457    IN  NS  a.iana-servers.net.
example.com.        5457    IN  NS  b.iana-servers.net.

Next check each of the DNS servers for the domain name. Check both the bare domain name, the www subdomain, and other subdomains you have active. Ensure that the IP address returned in the answer section is the correct IP address for your webserver in all cases. From the commands below, we see that the IP address for example.com is Substitute your domain name for example.com and a.iana-servers.net for your dns server when running the commands below. The IP address for your site is supplied by your web host, but needs to be entered into the settings on your DNS server. If any of the IP address records are wrong, they need to be changed with you DNS host.

$ dig @a.iana-servers.net example.com
example.com.        86400   IN  A

$ dig @a.iana-servers.net www.example.com
www.example.com.    86400   IN  A

$ dig @b.iana-servers.net example.com
example.com.        86400   IN  A

$ dig @b.iana-servers.net www.example.com
www.example.com.    86400   IN  A

Your domain registrar, and your DNS host each have to have the correct settings and records for your domain name to resolve to your webserver. With the dig tool, it isn't hard to check that each has the correct settings.

  • Thanks. I will try what you suggest. I thought of another detail about the situation. All of the IPs are the same. Each domain and the name server are on the same IP. When I changed the NS at the registrar it immediately populated the IP information with the correct address -- the address used by the domains that are functioning on our NS. Once I submitted the change I looked at it on LeafDNS.com. It had parent NSs that were on an entirely different domain from the ones our functioning domains have, gtld-servers.net (unfortunately I neglected to copy the domain of the other parent NS). – pattonmcg Sep 13 '16 at 15:12
  • Right, you have to put your DNS configuration on all your DNS servers (at least two.) I've given you the commands above to check all of them (the commands with the @.) – Stephen Ostermiller Sep 13 '16 at 15:16
  • I would also recommend NOT running a DNS server on the same machine as your web server. It isn't sufficient for DNS (it is just one server and you need at least two.) All DNS hosts offer multiple DNS servers and usually have a way to configure them centrally, often from a web interface. Your web hosting company may even have DNS servers that they let you use included with your hosting plan. Your domain registrar may also be able to do the DNS hosting for free. Even if you have to pay for DNS hosting separately, I wouldn't pay more than one or two dollars a month. – Stephen Ostermiller Sep 13 '16 at 15:17
  • You can check the whole path of resolution online with tools like zonecheck.net and dnsviz.net ; the first one may be simpler for beginners, the second one has more features. – Patrick Mevzek May 30 '18 at 14:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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