Oversimplified DNS

... or, even a rocket scientist can understand DNS


Step 4 - Finding and testing your A (address) records

GOAL: Make sure that your A records are working properly.

BACKGROUND: "A" Records are what DNS really boils down to. An A record gives you the IP address of a domain. That way, users that try to go to www.example.com will get to the right IP address.


Step 4a: Get a list of all your A records

There are several ways you can go about this. The best way is with a Zone Transfer. This will show you every record in your DNS. However, your nameservers may refuse zone transfers to any computer except the secondaries nameservers. In that case, you'll have to go to one of the nameservers, and get the master zone file.

To do a zone transfer in NSLOOKUP, first type "server nameserver.example.com", where "nameserver.example.com" is one of your nameservers (try the primary nameserver first, if it doesn't work, try the secondary(s)). Then, type "ls -d example.com". If you have a lot of entries, you might want to save it to disk using "ls -d example.com > filename.txt", where filename.txt is the name of the file to save to (you might not be able to choose a directory, it may place it automatically in the directory you are in). This will list all records in your zone; just pay attention to the A records for now.

To do a zone transfer in Sam Spade, go to the Tools menu, and choose "Zone Transfer" (if it is greyed out, go to the Edit menu, choose Options, then the Advanced table, and click 'Enable zone transfers'). Enter your domain as the domain to transfer zone information from. Enter your primary nameserver as the nameserver to use. If your primary nameserver refuses to do a zone transfer, try the secondary nameserver(s). Just pay attention to the A records for now.

If you can't get a zone transfer, the next step is to get the zone file from your primary nameserver (you'll may need to look at the instructions for your DNS server software to see where the file is located). Then, use NSLOOKUP, DIG, or other software to check all the A records (using your primary name server as the name server to use) for the domain names listed in the zone file to make sure that they match.

If you don't have access to your nameservers (if an ISP handles your DNS, for example), and you can't do a zone transfer or get the zone file, you should at least know the subdomains on your domain (for example, "www.example.com" and "mail.example.com"). Use NSLOOKUP, DIG, or other software to look up the A record for each of those domains (using your primary nameservers as the name server to use).

Note: If you know a subdomain exists (such as www.example.com), but there is no "A" record, that may be O.K. -- there could be a CNAME record pointing to another record that has an A record. For example, "www.example.com CNAME sparky.example.com" with a corresponding "sparky.example.com A 10.11.12.13". However, it is best to avoid using CNAMEs unless you are quite familiar with them!

Note: If you did a zone transfer, it will be helpful to save the results for Steps 5 and 6, where you check the MX and CNAME records.


Step 4b: Test all your A records

Go through each A record you found in step 4b.

First, make sure that every A record points to one and only one IP address (and not to a domain name).

Note: It is O.K. for a subdomain to have 2 or more A records (this also applies to most other types of records, as well). For example, you can have "www.example.com A 10.11.12.13" and "www.example.com A 10.11.12.14". That means that both IP addresses (10.11.12.13 and 10.11.12.14) can handle anything for www.example.com (technically, can handle anything an A record normally handles; for example, mail uses an MX record). You can not have 2 or more IP addresses on the same line (in the same record), however; they must be split into separate records.

Next, check to make sure that IP addresses are correct. Assuming that you know what each machine is used for, you should know how to test them (making sure to connect to the IP address). For example, if a machine is a web server, you can use a browser to connect (to http://10.11.12.13 for example). If the machine is an FTP server, FTP to 10.11.12.13. If you don't know what a machine is used for, you should find out! If you still don't know, at least try to use PING to make sure that the machine is responding ("ping 10.11.12.13").