The essential steps in moving are:

  1. Move your domain name to an alternative registrar (if your web host registered your domain name for you.
  2. Move your nameservers/Edit your DNS as appropriate
  3. Consider your e-mail provider
  4. Choose a new account
  5. Set up the account and migrate data
  6. Test the site
  7. Point your DNS records to your new account
  8. Cancel your old account

This article will deal with steps 1 – 3.

Move your domain name to an alternative registrar

If your domain is registered by your web host, transfer it to a Registrar. There are several very inexpensive companies to choose from, and transferring extends your domain’s subscription for a year with most registrars.

All registrars ultimately send your information to ICANN. It costs them about $6.50/year to do so…so you should expect to pay at least that much. Many registrar’s make most of their money by upselling you on other services, such as private registration and webhosting (just say no to web hosting).

The basic steps are:

  1. Find out from your web host how log in to their domain management module.
  2. Once logged in, make sure that your domain is not locked.
  3. If it is locked, you will need to request an EPP code, which will be sent to the e-mail on file. (This is designed to prevent someone from hacking your password and stealing your domain name.
  4. Create an account on your new registrar, and provide them with your EPP code.
  5. Done

One thing to be aware of is that some registrars also provide DNS services which will help to simplify the next step, but is certainly not necessary.

Some registrars that have gotten multiple positive reviews on webhostingtalk.com are listed below. This is neither a recommendation nor a complete list—just a convenience listing. Like the phone company, some companies hide fees in their quotes to make them appear lower.

  1. namecheap.com (includes DNS services)
  2. namesilo.com
  3. netearthone.com
  4. dynadot.com
  5. moniker.com

Here are some registrars that are recommended against:

  1. Godaddy (unreliable as of late)
  2. Network Solutions (expensive)
  3. Your current or future webhost

DNS Hosting

When/if you changed Registrars whatever name servers you were using were automatically put into the new registrar. If you are currently using your web host’s name servers, I recommend using alternative name servers (DNS hosting). DNS stands for Domain Name Server, and works like a phone directory for the internet.

When you type a website into your web browser, the request is directed to a DNS (name server). The name server tells your browser what IP address to go to. Most websites have multiple name servers in different geographical regions so that if the first one fails, the second (and third, etc.) act as a back up. You can host your own name servers, but unless you have multiple VPS or dedicated servers throughout the country, you’re better off using a DNS hosting service.

The directions below should work for most simple websites. If your needs are more complicated, then it should at least point you in the right direction.

Before we begin, there are some definitions we need to cover:

  • A record: These are the “main records” and are directed at an IP address.
  • CNAME: These can be thought of as a redirect to a website (or other server). For example, www is usually a CNAME that redirects back to your domain so that domain.com and www.domain.com will both go to the same place.
  • MX: The MX record is the mail record that tells mail servers where to direct e-mail sent to your domain. Ideally you should have several mx records with multiple mail servers.
  • Redirects: allow you to redirect a server name to almost anywhere. For example, you could point support.domain.com to www.domain.com/support/contact.html. A records and CNAMEs cannot point to a website folder or page—only servers.
  • TTL: Time to Live. Your name servers are communicated to other name servers throughout the internet, and they are all sharing their records with one another. The TTL tells the other servers how long they should wait before refreshing the information. The TTL is set in seconds.

Setting up your DNS hosting

  1. Find out what your current DNS records are.
  2. Create an account with a DNS hosting service if your domain registrar does not provide it.
  3. Re-create your DNS records in the new DNS host
  4. Double check your DNS entries.
  5. Change the name servers listed by your domain registrar to your new DNS host.
  6. Test and make sure they work.

Choosing a DNS host

There are many reliable DNS hosts and many domain registrars provide free DNS services to customers. Namecheap.com even provides them for free to non-customers. Most of the free DNS hosts have a limit on the number of domains they will host. Some host as few as 1 for free, while others will host as many as 50.

Some free hosts that have received good feedback on webhostingtalk are listed below. Same caveats as with the registrars above.

  • Namecheap.com
  • clouddns.com
  • pointhq.com
  • Lowendbox.com has a page with a list of more free DNS hosts

Testing your new DNS:
Once you change your name servers with your registrar, you will need to wait a little while for the changes to “propagate” throughout the internet. It’s like a rumor spreading through a crowd. It can supposedly take as long as 48 hours to fully propagate, although I have noticed that changes begin to be reflected within 5-15 minutes and within a two hours, it seemed like for all practical purposes, they were propagated enough.

So with the above in mind, be aware that different testing services may have different results based on how propagated your nameservers have become. And even then, sometimes one DNS testing service comes up with weird errors when the others are reporting just fine. So if you’re receiving e-mail, and you can visit your websites, and there are no security issues, I wouldn’t worry too much about one weird DNS report.

The following sites provide free DNS testing:

  • intodns.com
  • dnssy.com
  • thednsreport.com
  • dnscolos.com

Choosing a mail server

The next step in preparing for a move is choosing an e-mail provider. There are basically four choices:

  1. Use your web host provided mail server (usually only for shared hosting and managed accounts).
  2. Administer your own mail server. Not recommended for newbies. Yes, it can be simple to set up with tutorials and scripts, but learning how to manage and secure it as well as deal with spam is not simple. Moreover, running your own mail server may decrease the performance of your
  3. A third party mail service. There are free and paid e-mail services. List of known free services here.
  4. Google Apps: Yes, I know this belongs to number 3, but it’s really deserves it’s own section, because the choice to use it is so complicated. I’ll cover it in some detail in the next installment.

I would personally recommend going with either option 1, 3, or 4 unless you really know what you’re doing. If you go with option 1, there’s nothing you need to do at this point. If you go with option 3 or 4, you’ll need to create your account and then point your mx DNS records to the mail servers they provide you with. I’ll cover how to do this with Google Apps in some detail in the next installment.

At this point you are completely mobile. It should be a smooth transition to whatever web host you choose.

In future installments, I’ll talk about

  1. Considering Google Apps
  2. Setting up a Linux VPS
  3. Making the move