Every website has an associated IP address. It is difficult to remember IP addresses for all the sites and hence we use domain names instead (e.g. buddytutor.com). Domain Name System (DNS) is responsible for translating a domain name (e.g. buddytutor.com) to an IP address. This also allows you to change the servers without changing the address of your website. DNS is a hierarchical and decentralized naming system. Hierarchy starts from top-level domains (.com), second level domains (.co.in), subdomain (blog.buddytutor.com) etc.
Domain names are part of the DNS system, and has several DNS settings, also known as DNS records, including the ip address of the server. We register domains through domain registrars (e.g. godaddy) and these registrars usually provide us with control panels to configure the DNS settings. WhoIs database is a place where we can find most details about registered domain names including who has registered when, the expiry date etc. Following regulatory authorities are also involved in the process: Internet Assigned Numbers Authority(IANA), Internet Corporation for Assigned Names and Numbers (ICANN) etc.
DNS namespace is composed of various DNS zones, which can be considered as an administrative space within the DNS that represents a boundary of authority subject to management by certain entities. The total of all DNS zones, which are organized in a hierarchical tree-like order of cascading lower-level domains, form the DNS namespace. The authority over each DNS zone is delegated to a legal entity or organization (i.e. a country-code top-level domain registry) or a company/individual registered to use a certain sub-domain within the system.
Each zone contains a single start of authority (SOA) record. An SOA record stores info such as name of the server that supplied the data for the zone, administrator of the zone, current version of the data file, number of seconds a secondary name server should wait before checking for updates or before retrying a failed zone transfer, maximum seconds that a secondary name server can use data before it must either be refreshed or expire, and a default number of seconds for the time-to-live (TTL) file on resource records. TTL equals the time for which a DNS record is cached on the local system or the resolving server.
DNS Management facilities are usually provided by domain registrars and hosting providers through their control panels. DNS Management facilities include edit and create NS Records, A Records, TTL, CNAME Records, MX Records, SRV Records, WHOIS Records and more. NS (Name Server) records are used by top level domain servers to direct traffic to the content dns server which contains the authoritative dns records. A (Address) Record or host record is used to point a logical domain name, such as "google.com", to the IP address of its hosting server, "74.125.224.147".
A CNAME (Canonical Name) record is used to specify an alias for another domain, which is the "canonical" domain. When a DNS resolver encounters a CNAME record, it will restart query using the canonical name. CNAME records must always point to another domain name, never directly to an IP address. Alias defined in a CNAME record must have no other types of resource records (MX, A, etc.). CNAME records that point to other CNAME records should be avoided due to their lack of efficiency, but are not an error. The DNS specification does not allow CNAME records on the zone apex (the base domain. e.g. buddytutor.com).
The ALIAS record maps a name to another name like CNAME, but can coexist with other records on that name and work for apex domains (e.g.buddytutor.com). The ALIAS record will automatically resolve your domain to one or more A records at resolution time and thus resolvers see your domain simply as if it had A records. Alias records can be used to map resource record sets in your hosted zone to ELBs, cloudfront distributions or S3 buckets that are configured as websites. Amazon route 53 automatically detects changes in the record sets that the alias resource record refers to (e.g. change in IP address of the ELB).
A mail exchanger record (MX record) specifies a mail server responsible for accepting email messages on behalf of a recipient's domain, and a preference value used to prioritize mail delivery if multiple mail servers are available. The set of MX records of a domain name specifies how email should be routed with the Simple Mail Transfer Protocol (SMTP). A Service record (SRV record) is a specification of data in the DNS defining the location, i.e. the hostname and port number, of servers for specified services. Some Internet protocols such as the SIP and the XMPP often require SRV support by network elements.
Summary
In real world, there might be further abstractions provided by various control panels. For example, when you buy a hosting space with most providers, they may give you a set of nameserver addresses, and all you have to do is to add that under namespaces in your domain control panel. Hosting providers may also provide control panels like cpanel which abstracts lot of configurations for you. Certain things will be clearer when you do hands on exercises. This note just a brief introduction to the most important terms in Domain Name System (DNS). Please explore more starting with URLs given in the references.
References (Deprecated):
https://en.wikipedia.org/wiki/Domain_Name_System
https://en.wikipedia.org/wiki/IPv4
https://en.wikipedia.org/wiki/IPv6
https://www.ntchosting.com/encyclopedia/dns/domain-name-system/
https://www.ntchosting.com/encyclopedia/dns/zone/
http://searchnetworking.techtarget.com/definition/start-of-authority-record
https://en.wikipedia.org/wiki/CNAME_record
https://my.bluehost.com/cgi/help/508
https://support.dnsimple.com/articles/differences-between-a-cname-alias-url/
https://support.dnsimple.com/articles/alias-record/
- heartin's blog
- Log in or register to post comments
Recent comments