Each domain can have many different records kept on its authoritative DNS servers. The most common information is the IP address for this name, which interests us, for example, if we want to connect to a web server and download a web page that is located on the domain.
The records kept on the authoritative DNS server are divided into so-called zone files. Each such file contains records about a specific domain and may also contain records of its own subdomains (i.e. lower-order domains), if they do not have their own zone files, or for specific subdomains to specify the names of authoritative DNS servers that contain its zone. The server can also refer to itself, which means that the subdomain has records on the same server, but its own zone file is reserved for it.
In the most commonly used DNS server implementation – BIND – zone files are actually text files in the server’s file system, where each line corresponds to one DNS record. The zone is edited by simply editing this file with any text editor. When the changes are complete, the administrator calls the DNS command to tell the DNS server that the change has been made, and the server reloads the file into memory and propagates the updated information.
Each record (zone file line) contains the following items:
- the domain name
- TTL record (Time To Live) – the length of validity of the record in the cache (seconds)
- class – the family of protocols to which the record relates, IN means Internet; other types exist but are not used
- record type (A, MX, SOA, NS, CNAME,…)
There are two ways to list domain names in DNS records. If the name ends with a period, it means that it is a Fully Qualified Domain Name (FQDN) – the dot at the end shows the root of the DNS system. If there is no dot at the end, the name is relative and the current domain is added after the end. Therefore, if we have a record named “mff” in the zone file of the cuni.cz domain, the full name will be “mff.cuni.cz.”. Relative names can be used for simplified record entry.