Have you ever wondered how the Internet really works? Many people think about what goes on behind the screen when doing something as basic as surfing through Google. In fact, the Internet heavily relies on the DNS, a database of network names and IP addresses. These three little letters hold huge weight in the Internet. Without it, the Internet as we know it, would not exist. Without it, we'd be dealing in ones and zeroes. That is why experts usually call DNS "The Phonebook of the Internet".
So, what the heck is DNS and why it is important? Well, in brief, it is a comprehensive translation system that is used to search the Internet. "Translate what?", you might ask. In the simplest form of definition, DNS is the term used to describe a system that assigns user-friendly names to unique IP addresses. It translates unfathomable amounts of data into words and phrases in order to provide clear and accurate search results.
WebHostingGeeks.com = 162.247.79.100
Each IP address must be distinct in its network, which therefore allows users to reach a particular website. An IP address could be a set of any four numbers, from 0 to 255, like "162.247.79.100". While computers communicate using strings of numbers, humans do not communicate in such a way. DNS translates the strings of numbers in IP addresses into human-friendly phrases. When you type a domain name into your browser, the DNS system bursts into action, translating the browser name into the IP address associated with the website. Once the website IP address is found, your computer connects with the website host and the page is displayed on your computer.
While the concept seems basic, DNS is the cornerstone for how we use the Internet daily. Without DNS, everyday activities such as shopping, web browsing, research, communications, or downloading would not be possible.
It is imperative for users surfing the Web to be aware of the evolution and history of DNS. This system was initially conceptualized to support the growth of communication via email on the ARPANET, but it now supports the Internet on a global scale. Looking at this protocol and covering its early history can be quite challenging. However, as it is built to provide services that enable effective communications, it is key to describing its fully functional characteristics.
Initially, working with a few sets of numbers, leads to assigning alphabetic hosts to ARPANET. Afterwards, the use of alphabetic names are enhanced since they are easier to remember. The development of host names is useful for the growth of computer programs, and being aware of their network is important. Since the core of each of these host names was built by numbers, each site was awarded a host name that would provide a guide through the network addresses in simple text records.
On the other hand, as early data types began to be carried, Internet mail was also re-defining its attempts in making mail systems benefit from the use of DNS. These attempts included the added application features, however, they were not successful as it was not ideal to hook other applications to DNS roots just yet. Retrospectively, it took nearly a decade to create the first major update to the specific DNS protocol published.
What was the update?
Well, it was the inclusion of a more flexible and dynamic method. This update kept them up to date with the use of Incremental Zone Transfer (IXFR) and NOTIFY, which were both impactful mechanisms at that time.
However, users soon realized that keeping multiple copies of hosts is inefficient and human error could pertain. Therefore, in 1973, a central system was allocated to be the official source of the host master files. This system worked well for a decade, but by the 1980s, the disadvantages of a centralized management were becoming obvious. This, coupled with the need of replying to emails to encourage the progress of the domain concept, was problematic.
A group of programmers held a meeting in 1982 to come up with a solution to relaying emails. Initially, emails were sent from site to site and would have to go through several different links. Sending emails was becoming a tedious task. In a bid to solve this matter, domain names were constructed to give individuals the same address, regardless of the destination of the email.
Hence, there was a need to construct a registered administrative domain, which could be maintained better. After a series of communications, the concept was developed in November 1983. It was published under the name "Domain Names Plan".
The most effective way to enhance first generation DNS was by providing continuity when multiple servers answered numerous queries simultaneously. This renamed a server as "master", denoting the other servers as "slave" servers. Practically, each slave followed instructions to keep updated with the master, determining changes in data periodically.
The game changer in the second generation DNS was NOTIFY. This prevented the master from waiting on slaves for feedback. Moreover, delaying problems were solved as well, as previously, the master could not send notification messages to its respective slaves in order to prompt them to acquire fresh data. Meanwhile, IXFR highlighted the way data was to be communicated through records, notifying hundreds of changes instead of just the primary. It changed the system of sending central messages, as now, with each specific change, changes were enabled to be sent, rather than sending out multiple messages at a time.
The third generation provided a turning point in the dynamic changes later adopted, mentioned as RFC 2136. Comparatively, in the first generation, an administrator used to access the master server, do file editing, and then wait till the master reloaded the file, all before slaves finished with their updates. However, administrators were no longer required to log into the master, as they could carry out their updates across the network.
Although this sounds like a minor establishment, its effect was impactful in the long run. Updates now reused original messages with their original format for other purposes. Meanwhile, other efforts to define extensions were added, and this modernized the entire system overall. Additionally, the structural integrity of the protocol increased with the codes being added. Moreover, this led to DNS security, which was the next grand focus for modification to be made in later times to come.
The Internet Engineering Task Force (IETF) is the name given to a body of a global Internet community that consists of network designers, operators and researchers. It is concerned with developments in the field of Internet. The membership of this community is open to anyone who might be interested. The organization holds meetings three times a year and much of the work is distributed via emails.
Additionally, the technical work is carried out by working groups that are divided into further topics. These various working groups come under the command of the area directors. Therefore, they are members of the Internet Engineering Steering Group. Their prime job is to provide an overview to all the tasks carried out by said group. This group is also responsible for any failure the group might encounter, which the board would have to investigate for an appeal.
The other organization that is involved in the regulation of this system is the Internet Assigned Numbers Authority (IANA). It is the key coordinator for the guidelines of specific Internet projects and their standards. The body is governed by the Internet society and acts as the regulator to allocate and coordinate the innumerable Internet protocols. These guidelines are presented in the IETF Standards Process.
In the outline, creating an Internet standard is very basic. It requires a specification and careful analysis of the information by the Internet community. This is adopted to uphold the standard. However, in reality, the process is much more complicated, since it demands creating high-tech specifications, consulting all the stakeholders, and the necessity to establish a wide-ranging community and evaluating a particular specification.
A Request for Comments (RFC) is a term used to describe an official request from the IETF, which occurs after the committee has constructed rules. Usually, it is done after the stakeholders present a review. Each RFC is of a different nature. While some are informational, others are intended to construct Internet standards. Once the RFC has been finalized, no further comments can be made to alter it. If a change is required, it can be done by suppressing other RFCs
Interestingly, RFCs were first constructed in 1969 and are currently a part of the official functions of the IETF. Furthermore, they comprise larger extents of the global community of Internet researchers as well. The first RFC was drafted and then its copies were distributed among leading IT experts. The earlier versions of the RFCs were to encourage discussion. Conversely, its form of writing does not indicate authoritativeness. This less formal style has now become a common form of writing of the RFC.
The University of California was responsible for some of the earlier RFCs, as it became the face of the interface message processors. It also became home to the Augmentation Research Center (ARC) and was one of the first sources of early RFCs. These centers became one of the first to transmit RFCs besides other network information. After the original contract with the United States Government had expired, the Internet society, acting on behalf of the IETF, assumed the role of editorship and took the responsibilities of working on the RFC. The most recent RFC development has been on the editing duties. The IETF working groups under the IEFT director handles the publication of these documents. In 2008, a new model proposed to split the task into several different stages. This also included a new role of RFC series advisory group. Moreover, it was revised again in 2009 with standards defined for their style. Up until late 2011, the system has been revised, and Heather Flanagan was appointed as the permanent RFC editor.
In its simplest form, the DNS is a database that maintains the names of websites, such as webhostinggeeks.com, and links them to a particular IP addresses that consist of a number pattern. However, this can be defined as its simplest task. Linking addresses to names is the basic function of DNS, as is it used for a variety of services, apart from host to address mapping.
Some of the major functions of DNS involves locating IP addresses to specific site names, and then storing this data. This process is also called “maintaining records”. The second function is to distribute the DNS over a vast network of connections. Additionally, a DNS can also store a vast library of records. For many experts, DNS is the term used to define a database and, most importantly, a database that can be easily shared. This is, because each server holds only a minor portion of the host name to IP address details and manages to create a mapping out of that.
Moving on, each DNS server is configured with a special record that informs where the DNS server is located. Since it is a database of sorts, it will also look up where the server is located and look up unrecognized records. Due to this process, each DNS server holds a small part of the host to IP mapping address. This collection of ‘host to IP address mapping’ is also called the namespace. When looking up a name in the DNS system, the user must first check the high-level database. This procedure tells the client how to check the DNS server host. As a next step in the process, it specifies queries the client can address through the hostname given by the DNS server. The process continues until the user is sure to find the accurate server that hosts the DNS required.
Additionally, finding the correct DNS and identifying the correct mapping of records stored by the database permits the DNS to maintain records. These record types are useful for several other purposes and may help other applications. For example, the record of The Mail Exchanger provides mail servers with the data needed to pass on sender-to-recipient emails. Another important record used by Microsoft Active Directory is to locate network services exactly.
Although it may seem as if DNS are complicated, their importance lies in the fact that other processes solely rely on it to function.
This services relies on DNS for human-friendly navigation. Users can easily access a website by entering the IP address of a particular site or web browser. However, remembering several numbers is not the best way to approach the site. Therefore, it is much easier to remember the DNS name for a website that will present user-friendly names, such as google.com.
E-mails were the main reason the DNS was developed and are one of the most popular functions of the DNS. Through the web, DNS links the names to IP addresses for various sites, although email servers need a more advanced record than what is required of basic host names. For instance, when an email is sent by a user through Outlook or Gmail, it can either be sent to the recipient at their domain or to another email server that is providing a good service. If the email specifies an outgoing mail server that is not the target domain, then the user is using a reliable process.
Besides, an email address contains two portions. It has a host and a recipient. For instance, in the address postmaster@domain.tld, postmaster is the recipient and the mail transfer agent is responsible for ensuring that the message reaches the recipient. Pragmatically, any application that requires the Internet connects two or more hosts, which then shares information or communicates using DNS services.
Other uses of DNS servers include the more recent upgrade in 2008 that supports a zone type called the stub zone. This is a zone that contains features and records of resources that are used to identify forceful DNS servers for that zone. This zone operates in such a way that lets the parent zone be aware of a forceful DNS server for its child zone. Another key feature of the DNS, is that it provides integration with other Microsoft networking services. These features include connection with services, such as Windows Internet Name Service and Dynamic Host Configuration Protocol. With its improved ease of administration, DNS now allows graphical user interface to manage DNS server services. In addition to DNS console, other applications help manage and support DNS servers better.
The DNS hierarchical distributed database and a set of protocols are what define the DNS architecture. It is a mechanism for updating the database, replicating information and a schema of the database. DNS was conceptualized in early days of the Internet when it was just a minor network established by the United States Department of Defense. The various host names in DNS were administered by a single host that was located in the central server, and anyone that required the host name downloaded this file. On the other hand, as Internet became common, the size of this file expanded with the traffic it generated. The need for a new host soon rose, which further featured support for various data types.
Therefore, the Domain Name System was introduced in 1984, and it became the new system that was needed in the Internet world. For the DNS, the host name is stored in a database that can be distributed among multiple servers. This will then decrease the pressure on any one server and will also allow access to this database without any location constraints. DNS is said to support hierarchical names and allows the use of various data in addition to mapping. Since the data is shared and the size of the host is unlimited, the performance of the DNS does not degrade when more servers are added.
The domain name lies at the top of the hierarchy, as DNS is a database that contains different types of data, including host names and domain names. The names in the DNS form a hierarchical tree structure; this is called the domain namespace. These names are of individual labels, which are subsequently divided through dots. A fully qualified domain name is unique enough to be easily identified by the hosts' position in the DNS's structure. This can be done through the hierarchical tree or by specifying the dots that state the path from the host to the root. The namespace is dependent on the concept of a tree that consists of named domains. Each level, branch or leaf can represent a different stage of the hierarchy. Adding on, a branch is a stage where more than one name is used to identify the collection of named resources. A leaf represents a single name that is used only once to mention a specific resource.
Any name that is used in the tree is technically a domain. However, experts have found that there are five main ways that a level can be used. For example, a DNS domain name assigned to Microsoft is a second-level domain. This occurs due to the name having two parts that indicate whether they are located near the root or the top of the tree. Several DNS names have two or more labels, each of which indicates an additional stage in the tree.
Habitually, the Internet domain name is managed by a name registration authority on the Internet, and it is responsible for maintaining the profile of top-level domains that are allocated by countries and regions. These follow international compliant standards and often exist in abbreviations reserved for organizations, as well as for countries.
A DNS database can be divided into several zones, and each zone carries a portion of the DNS database. This contains the resource records with the owner names that are part of the namespace. Zone files are part of the DNS servers, and these can be configured to host zero or multiple zones.
Characteristically, each zone is then part of a particular domain name, which is refereed to its root. This zone contains all the information about the names and ends in the zone’s domain root name. Yet, this DNS server is considered authoritative for a name. A name within the zone can also be used to allot to a different zone that is then hosted by a different DNS server. Moreover, delegation is a process of giving the responsibility of the DNS namespace to a DNS server owned by a separate entity. This can be another organization or a working group.
The root zone is a global list of top domain levels, which consist of information. The information that root zones contain can vary from generic top level domains to top country code level domains. These include two letter codes, which represent each country, for instance, “.se”, symbolizing Sweden. In addition to this, internationalized top level domains are incorporated, which indicates that countries, generally more or less equivalent, are coded together.
Collectively, each of those top-level domains, contains its own root zone in the numeric addresses of name servers. These aid with the top level domain’s subjects, and the root servers respond to reports when requested about a top level domain.
Some of the organizations that operate these root servers are US Army Research Lab, Internet Systems Consortium, NASA AMES Research Center, US Department of Defense, University of Maryland, Cogent, University of Southern California, Net nod, RIP, Verisign, ICANN, and WIDE. These are the top 12 organizations using the root servers. Yet, some of these firms have been using the root servers since the invention of the Domain Name System.
In other words, there are over three hundred root servers that have been distributed globally and onto the six most populated organizations. Moreover, each one can be reached through thirteen different IP addresses. Each organization can have one or two IP addresses, such as that of Verisign, which has two. Furthermore, any DNS query that will be sent through these addresses will get a fast response. Interestingly, times have changed since a decade ago, when there were only 13 root servers worldwide.
The Domain Name System is a major form that converts the Internet domain names into numeric addresses. The hierarchy of these Domain Name Systems, also known as the authoritative name servers, consists of different levels of information. The DNS root zone is the most senior DNS zone in the classified namespace of the DNS of the Internet. The root name server is the combination of servers of the DNS.
Besides, the root name server is the server name of the root zone of the DNS or Domain Name System. It is known to answer requests directly through the root zone. It is also known to record other requests through several authoritative name servers by assigning proper top-level domains, also referred to as TLD. These root servers are essential, as they are used primarily in case of solving or interpreting human decipherable host terms into IP addresses. This is key for when one needs to communicate between different Internet hosts. The translation is done through a resolver, which answers the users’ queries directly. Likewise, it tries to identify each and every command word by word.
UDP, a short form of User Datagram Protocol is known to be the combination of several protocols and certain limits in the Domain Name System. This practical size of non-fragmented User Datagram Protocol led to the conclusion that the number of root servers can be limited to thirteen server addresses. However, it should be noted that if any cast is used, then the root server number tends to be higher than predicted.
As you already know, TLD stands for Top-Level Domain, which can be seen whenever one writes the domain name or the web address or URL. To be exact, wherever your email address ends is where the top level domain lies. TLD is commonly known as the last part of the name of any website, domain, or email address. Some of the examples of Top Level Domain include .COM, .BIZ, .ORG, .NET, and so on.
These Top-Level Domains can be categorized into two basic forms, mainly the gTLDs and the ccTLDs. TLDs are taken care of by the Internet Assigned Number Authority, popularly known as IANA. This is the administration that is responsible for the root of the Domain Name System or DNS. The IANA is being operated by the ICANN, which stands for the Internet Corporation for Assigned Names and Numbers. It should be considered that the second part of the TLD is the dot, which helps us separate the TLDs. This is known as the second level domain and is supposed to be registered with a registrar.
The generic Top-Level Domains, or gTLDs, as the name suggests, are generic. Hence, they are not for any specific country. These can be used by anyone who is surfing the Internet. Some of the top level domains include .COM, .ORG, .NET, .GOV and .MIL. These are generic top level domains that can be expanded to 22 gTLDs. Therefore, gTLDs tend to be more restricted, indicating that only a specific group can register and access them, after which they will be eligible. However, it should be noted that this does not mean that they are bound to any specific country.
On the other hand, ccTLDs denote country code Top-Level Domains. These are more commonly known as the “two-letter TLDs”, which means they are allotted to countries established customarily on the ISOC 3166 list of country codes.
Furthermore, some countries have selected or opted to function their ccTLD solely for domains that will be used inside their country or within its geographic territory. It should be considered that some of the countries do not permit individuals to record the "Second-Level Domains" under the TLD. However, as an alternative, they choose to entail individuals to register Third-Level Domains under one of the wide range of different Second-Level Domains that are available. Some countries, such as the United Kingdom, are required to register their domains of .UK such as, .CO.UK or .ORG.UK. This will basically change the generic top level domain to a country code top level domain.
The country code Top Level Domain is specific to certain countries. Hence, each domain is based on a residency or the country extension. Although some have restrictions on who can register, most do not have this formality. .TV, .ME, .CC and .WS are some of the extensions that are said to be open for registration by the common public. Some of these extensions have also been repurposed for general usage.
Ever since the Internet became an Internet phenomenon, ICANN has been constantly asked to approve the support for character sets in the top level of the DNS, other than the 26 letters of the basic Latin alphabet. With the approval of Internationalized Domain Names, TLDs can now include characters other than the traditional ASCII characters (a through z).
Currently, the Internet is undergoing its largest expansion with more than 1,300 new gTLDs proposed to be online by the end of 2016. It represents the major milestone in the development of the Internet namespace. As of January 2016, almost 900 new TLDs are already online to create opportunities for both businesses and consumers.
The New gTLD Program aimed at adding an unlimited number of new gTLDs to the Root Zone, the Internet's authoritative database. The first round of application started on the 12th of January, 2012, and it ended on the 20th of April, 2012. Applicants applied through TLD Application System (TAS) to run the registry for the TLD they choose. Although the application window should have closed on the 12th of April, a glitch in the TAS system caused a shutdown for a while before it was reopened for another week to allow applicants complete their applications.
On the "Reveal Day" (June, 13th), there were 1,930 applications: This means it is possible that the first round of the new gTLD program would create 1,409 new TLDs, including:
The IP is said to address a scheme, whereby computers can communicate through a given network. Some of the networks, to get a better connection, combine these Internet protocols with a Transmission Control Protocol also known as TCP, which is a higher level protocol. This will help create a virtual connection between the endpoint and the source. To understand this concept better, the Internet protocol can be compared to a postal system where a package that has an address is dropped into the system and the postal system helps you connect the sender to the receiver. In other words, IP is just the connection that is formed between the two hosts.
IPv4, the Internet Protocol version 4, is simply the fourth version of the Internet Protocol. The main purpose of this is to recognize the devices in the addressing system that are passing through the network. Consequently, it has been formulated to perform as a link in the interconnected system.
Moreover, IPv4 is said to be one of the most common form of Internet protocol which used to connect devices over the Internet. This version uses a 32-bit address scheme and allows over four billion addresses. However, because of the growth of the Internet, those IPv4 addresses that are not used will eventually run out. This is due to the requirement of an address on every device, such as computers and smartphones.
The newest edition is the one known as IPv6. This is the new Internet addressing system that is mainly used due to many Internet addresses. Also called the IPng, which stands for “Internet Protocol next generation”, it is the Internet Protocol that has basically replaced the IPv 4. The successor is designed in such a way that the Internet and IPv6 will go hand in hand slowly. This is in terms of the total amount of data that is being transferred, or the traffic, and also with respect to the amount of hosts that are being connected. However, it should be noted that IPv4 and IPv6 are said to coexist together for at least a few years.
The next generation Internet Protocol, or IPv6, has been in the development phase since 1990. The main reason for its birth was due to the fact that people were concerned about the gap between the demand and the supply of IP addresses. Although many people fear that the transition from IPv4 to IPv6 will not be easy, because many are not familiar with the impact of this new technology. The difference and the impact that it will have are explained as follows.
The main difference between the IPv4 and the IPv6 is that the Internet Protocol addresses are different. The IP address is a set of binary numbers which are different for both versions. The IPv4 is written in four numbers, which are separated by periods in the 32-bit address, and each of the numbers can be anything starting from zero to 255. On the other hand, IPv6 is a 128-bit IP address, which means it is written in hexadecimal and is said to be separated by colons, rather than dots. This makes the entire procedure easier to use and implement.
IPv4 was basically used to transfer data from one device to the other. Every device, such as PC, Mac, or even a smartphone, will have its own address and is assigned a unique numerical IP address, as mentioned earlier. These are vital, as without an Internet Protocol, we would not be able to transfer or communicate any data. Hence, this can be regarded as the infrastructure of the web.
Although the main function of IPv6 is mainly the same as that of the IPv4, it does have a huge difference. IPv4 utilizes 32 bits while IPv6 is 128 bit. The former means that IPv4 can support up to 2^32 IP addresses, which totals up to 4.29 billion. While this may seem like a large quantity, we face a crisis, because we have run out of these addresses. Although some of the addresses are not being used as yet, we are still almost out of these addresses. This is where IPv6 steps in, as it utilizes more Internet addresses. The IPv6 can support over 2^128 addresses, which is a significant amount. This will keep the Internet operational for centuries to come. The problem lies with the switch between the two. Although the progress started over a decade ago, only a small fraction has switched over to IPv6. In conclusion, one should note that both the IPv4 and IPv6 run parallel to each other due to which exchanging data needs special gateways, hence, slowing down the process.
The Domain Name System, or DNS, is simply a server-based software designed to match and connect easy-to-read web addresses to officially registered numerical IP addresses. DNS uses a network of servers to carry out these matchups. These servers are known as “domain name servers”, “DNS servers”, or “Name Servers”. Of course, you can bypass this entire process by simply entering the IP address of your webpage into the browser’s address bar. However, most people usually cannot remember the IP addresses of all the websites they intend to visit.
Managing the entire directory of the Internet can get slightly complicated, because millions of people worldwide make billions of requests to load IP addresses daily. This is made simpler by the use of specific Internet protocols mentioned in the last section, for instance, the IPv4 as well as IPv6.
It is important to understand that the DNS resolution process is an extra step that has to be processed. This can be time-consuming, as it adds to the time it takes to load a webpage. Thankfully, this does not happen every single time you visit a website. Instead, your computer has a mechanism to cache DNS results. Once your computer learns that a certain domain name is translated into a specific IP address, it saves that information for a certain period of time, so as not to overburden your RAM.
Furthermore, resolving a hostname IP address query will give you a more in-depth understanding of all the minute steps involved in processing domain name resolutions, as various types of servers are involved. We start by identifying important terms one should comprehend and then focus on the operation of a domain name resolution.
As you may recall from prior reading, the management of the domain name system is broken down into regions known as the DNS zones. The system of millions of name servers worldwide processing domain name resolutions, which is managed by a hierarchical system where the top level is the DNS root zone. The DNS root zone includes 13 clusters of root servers that are the "authoritative," or the go-to servers for queries of the TLDs.
Recursive DNS nameservers are responsible for providing the proper IP address of the intended domain name to the requesting host. Think of it as a search engine which searches other pages, it is one that answers queries by asking other nameservers for the answer. When you type a website name into your browser, like webhostinggeeks.com, your computer will then make a request to Recursive DNS server to find the correct IP address associated with the requested website. To do this, your web browser sends the query to a Recursive DNS server. From there, the Recursive server will check to see if it has a cached DNS records of the domain you are trying to reach from the Authoritative DNS nameserver. If not, the Recursive server then queries the Root DNS server for the TLD of the domain you are trying to reach.
The purpose of the Authoritative DNS servers is to respond to the Recursive DNS servers, providing answers with the IP "mapping" of the requested website. They are the authority on the subject matter the Recursive DNS servers are searching for. Their responses contain all the essential DNS information for each website, such as corresponding IP addresses, a list of mail servers and other necessary DNS records.
This entire resolver operation is carried out in a span of nanoseconds. There is no need to have the same request to resolve for the IP address of www.google.com to an Authoritative DNS server by the same ISP millions, if not billions, of times daily. As such, DNS caches store DNS resolutions for a fixed period of time, known as “time-to-live” (TTL). Such DNS caches are usually maintained by an ISP. However, routers used for home networks also have built-in mechanisms for DNS caches to improve overall speed and network efficiency.
From the webmaster point of view, every domain name has at least two nameservers, provided by the hosting provider in order to get a website online.
A primary DNS server is in charge of perusing information dealing with the domain zone from a record that is stored on the web server of a hosting account. The primary server is additionally in charge of corresponding with the secondary DNS server which is known as a zone exchange or zone transfer. Every domain name is given its DNS records for redundancy, and to make the recovery procedure of server administration easy. There's a possibility that a primary server already has the zone data for domain, this data does not have to be replicated due to the fact that both primary and secondary server share zone data without any interruption. In simple terms, when a request is issued to a domain name it goes through the primary DNS server first to reach the website's server.
Secondary DNS server acts as a backup when primary server fails to direct the user to the web hosting server. A secondary DNS server, also known as a slave server, is in charge of acquiring zone data from the primary DNS server quickly in the wake of being set up. Every time a secondary DNS server operates it gets data from the primary DNS server. It ought to be noticed that a secondary DNS server does not always have to get data from a primary DNS server, as secondary servers can also be made master servers. Secondary servers are about as essential as primary DNS servers since they offer redundancy. Secondary DNS servers additionally alleviate the collective resource load put on the primary DNS server.
Relationship between Primary and Secondary DNS:
Record types are part of a bigger structure known as DNS zones. DNS zones are configurations implemented on Domain Name Servers. Continuing our last example, when a specific Authoritative DNS server directs a Recursive server for a specific TLD, it directs it to a certain TLD zone, a form of a hierarchical layout of several domains and/or subdomains.
Nevertheless, when referring to DNS zones as a building, DNS record types should be considered as its individual rooms. A DNS record is a single data point which provides directions to DNS zones on how to process incoming queries. For example, the DNS zone for google.com can have multiple DNS Records such as www.google.com, mail.google.com, or maps.google.com.
A DNS record has three details attached: a record name, a record data or value, a.k.a. a record type, and time-to-live, or TTL. A record data/value are basically the instructors of various operations, while TTL is import, as it specifies how quickly a record is refreshed.
Specifically, TTL is a fundamental part of DNS Records that sets the time lag before a DNS Record is refreshed. It does so by defining the cache timeframe of DNS Records in seconds. The TTL process starts out with a name server inquiry for a DNS record. Consequently, the name server confirms to see if it has provided a cached DNS record within the TTL. If it has, it will do so again for the new query. If it has not, it will request the DNS zone for the record again and cache that for the period of the record TTL.
Another aspect of TTL to consider is the fact that any changes to record values will only start to take effect once the TTL expires. Until that time, the record will remain stale with older data or value.
These are common errors you will face while managing networks with DNS.
This is a stereotypical error faced by the majority. TCP/IP settings are part of a network's interface, which includes a list of DNS servers used by it. If those settings for a computer on the network are of an IP address that belongs to a public DNS server, as of an ISP, then the TCP/IP resolver will not be able to view Service Locator (SRV) records. These advertise domain controller services, Global Catalog, LDAP, and Kerberos. And if you do not have these, authentication problems will arise, which will complicate the operations of DNS.
Fixing this problem is simple. All that is required is for you to enter the correct DNS entries in TCP/IP settings at the DC, populate the zone with SRV records by stopping and starting the Netlogon service. Additional changes to the DHCP scope option would also have to be made, as well as manually correcting DNS entries for any statically mapped servers and desktops.
DNS servers require each query to specify a target domain in order to select the proper zone file. Some DNS resolvers accept the regular domain name from the user, and then append a suffix to form Fully Qualified Domain Names (FQDN). This can then be sent to the DNS server. Usually, it is done by the resolver, as it can obtain the DNS suffix from the AD domain name, among others.
The domain to which a certain desktop or server belongs has a DNS name, as well as a simple host name. This can be found in the Properties of the local system, also known as the Primary Suffix, as per the TCP/IP Settings window. If that query fails and the "Append Parent Suffixes" option has been checked, the resolver strips the leftmost element from the primary suffix before trying again. So for www.google.com, the resolver first appends www.google.com then google.com.
This is a common error that usually originates for various clients due to an incomplete website setup. To resolve this error, clients must have a suite of offerings for database management, centralized domain, easy integration options, a full range of diagnostics and auditing, additionally, with verification, as well as data integrity, as a holistic approach to prevent this error from arising.
SNAME errors are another common malady in terms of DNS errors, as they occur due to domain names not having a valid IP address. As such they are usually a result of invalid IP addresses, and they occur by advising users to validate all IP addresses well before the settings are actually finalized.
Typically, the aspect of malware programs hijacks traffic to a certain degree and redirects it to another malicious site. DNS hijacking works as a scammer uses programs containing viruses. These end up changing the designated DNS server to a malicious DNS server that points to the user. This happens as they visit websites run by the scammers.
These issues can be rectified by continuously running antivirus software checks and upgrades. Users should be keenly on the lookout for error messages pertaining to websites with encryptions certificates (HTTPS), such as bank websites. If a user is visiting a bank's website but is seeing "invalid certificate" messages for the website, the user is mostly likely a victim of DNS hijacking where culprits have successfully misguided the user to a fake website, masquerading as the user’s bank website to gain login credentials.
A very common problem with a name server and the DNS resolver operations is that it can be susceptible to security issues. The most common type of security issue is the DNS hijacking.
DNS hijacking works as follows. Usually, a scammer with the use of virus programs changes the designated DNS server to a malicious DNS server. This then guides the user visiting popular websites such as www.google.com or www.facebook.com to websites run by those scammers.
Practically, a user attempting to visit www.google.com enters it into his webpage address bar and a DNS resolution inquiry is launched. The ISP name servers respond back with the correct IP address. However, a pre-installed malicious software goes into action and directs the user to a malicious DNS server operated by the scammers, getting the malicious DNS server to reply back with their own IP address, which is completely different.
Although, the user would see "facebook.com" in their web browser’s address bar, they may actually be at an entirely different site. It may look like the original website, but in reality, the malicious DNS server has led the unsuspecting user to an entirely different IP address site designed to gain vital credentials. This also leads to access to other sensitive personal information of users as well as their devices.
To rectify these issues, users are advised to continuously run antivirus software checks, as well as antivirus software upgrades. Users should also be on the lookout for error messages pertaining to websites with encryptions certificates (HTTPS), such as bank websites. If a user believes he is visiting a bank’s website but is seeing “invalid certificate” messages for the website, the user is mostly likely a victim of DNS hijacking where culprits have successfully guided the user to a fake website masquerading as the user’s bank website to gain his/her login information.
Likewise, another alternative would be to use third-party DNS servers. As you learned earlier, users by default use their ISP’s DNS servers for domain name resolutions. Although, they can use third party DNS servers, most popular of which is OpenDNS. Such third party DNS servers are excellent for providing extra layers of protection via use of filter, as well as improved speed.
Improved speed is accomplished as more servers are utilized by the third party with a higher probability of accessing DNS servers within a closer proximity to the user, thereby reducing hops and latency of domain name resolution. Obviously, such gains in efficiency will depend on how far the third party servers are to the user relative to his or her current ISP DNS servers.
Additionally, the use of filtering by third party DNS server providers is an advantage. An example would be parental controls requiring the filtering of pornographic material. Third party DNS servers will return a "blocked" message for websites containing pornographic material.
Domain Name Systems, or DNS, can be slightly complicated to understand. Therefore, below is a guideline of the most common terms and meanings associated with DNS that you can use as a refresher for yourself.
A Record --- ‘A record’ is a single data point based on a certain type that provides directions to DNS zones on how to process incoming queries. For example, the DNS zone can have multiple DNS records, such as, www.google.com, mail.google.com, or maps.google.com.
Authoritative --- The purpose of the Authoritative DNS server is to provide an answer for the Recursive resolver, also named Recursive server. An Authoritative DNS server has the mapping of the IP addresses of the websites requested.
CNAME --- This is a record that can be used as alias for a hostname. For example, maps.google.com is a CNAME for the host name google.com.
Delegation --- This is the process of assigning responsibility of handling certain domains and sub-domains to a name server.
DNS Query --- An inquiry from a user to translate, or resolve, a domain name for an IP address.
DNS Zone --- A specified section of the DNS namespace that has been broken up into sections, or zones; for the better management of DNS queries in the DNS zone. Each DNS Zone has specific DNS records that include information mapped to that zone about a domain.
IP Address --- This has a specific identifier for a computer system that helps other computers on the Internet to locate any specific computer. It is exactly as the name implies, an address.
MX Server --- The MX Server is the server responsible for handling emails for a specific domain. MX stands for Mail Exchange.
Name Server --- The name server forms part of the domain name system that has been set up to answer queries regarding a certain set of domains. This is a DNS server designated to handle DNS queries and/ or provide additional information about the domain.
Recursive Query --- This identifies requests from a user for information pertaining to domain name to identify its IP address.
Resolver --- It is also known as the Recursive resolver, or a Recursive server. A Recursive server sends out requests for information which bounce back in order to eventually provide to its original requestor.
Root --- These are name servers that are known among all name servers. They forward the ISP’s Recursive DNS server to an Authoritative DNS server, which is responsible for handling that specific domain. This ultimately provides the corresponding IP address for the website being sought.
Start of Authority Record (SoA) --- The start of authority record provides details of the basic properties of a zone, and is the first resource record in the system for that zone. Some of the details it includes are the host name, email of the person responsible for the domain, the zone serial number, TTL, and more.
Top Level Domain (TLD) --- It is the highest level of the DNS hierarchy, examples of which are .COM, .ORG, .NET, and the like.
Time-to-Live (TTL) --- TTL is a fundamental part of DNS Records, as it sets the time lag before a DNS Record is refreshed. IT does so by defining the cache timeframe of DNS Records within seconds.
| DNSCAP - DNS traffic capture utility | A DNS traffic capture utility that provides DNS-specific functionality beyond that of tcpdump. | www.dns-oarc.net/tools/dnscap |
| DSC - DNS Stats Collector | A DNS tool that creates statistical information for DNS traffic. | www.dns-oarc.net/tools/dsc |
| fpdns - DNS fingerprinting tool | A tool used to fingerprint DNS resolvers. | www.dns-oarc.net/tools/fpdns |
| dnstop | A tool that builds statistics based on DNS traffic seen on the network. | dns.measurement-factory.com/tools/dnstop/ |
| dnsstat | A DNS-specific tool that builds statistics based on DNS traffic seen on the network. | www.caida.org/tools/utilities/dnsstat/ |
| dig | A powerful command line utility for debugging and troubleshooting DNS. | www.isc.org |
| host | A DNS lookup command line utility. | www.isc.org |
| nslookup | A command line DNS lookup utility included in many operating systems. | www.isc.org |
| dnsdump | A tool that will monitor and display DNS messages seen on the network. | dns.measurement-factory.com/tools/dnsdump/ |
| dnsmap | A tool that collects all available information for a sub-domain. | code.google.com/p/dnsmap/ |
| TXDNS | A multithreaded Win32 tool used primarily to send many DNS queries at a time for testing DNS servers. | www.txdns.net/ |
| Open Resolver Test from The Measurement Factory | A web-based tool that will check DNS servers to determine if they support recursion from the Internet. | dns.measurement-factory.com/cgi-bin/openresolvercheck.pl/ |
| dnsenum | A tool that attempts to collect all possible information available for a domain. | code.google.com/p/dnsenum/ |
Kahn, R., "Communications Principles for Operating Systems", Internal BBN Memorandum, 1972.
Dunlap, K. J., Bloom, J. M., "Experiences Implementing BIND, A Distributed Name Server for the DARPA Internet", Proceedings USENIX Summer Conference, Atlanta, Georgia, 1986.
Dunlap, K. J., "Name Server Operations Guide for BIND", Unix System Manager's Manual, SMM-11. 4.3 Berkeley Software Distribution, Virtual VAX-11 Version. University of California, 1986.
Quarterman, S.J., Hoskins,C.J., "Notable computer networks, Communications of the ACM", v.29 n.10, pp.932-971, 1986.
Murray, A.D., "Internet Domain Names: The Trade Mark Challenge", International Journal of Law and Information Technology 6(3): 285-312, 1988.
Middleton, G., "Australia: Intellectual Property-Domain Names", Computer and Telecommunications Law Review 11, 2005.
Middleton, G., "Electronic Commerce-Domain Names", Computer and Telecommunications Law Review 9, 2003.
Zhou, Tao, "Web Server Load Balancers". Windows & .NET Magazine, 2000.
Rose, S. and Nakassis, A. "Minimizing Information Leakage in the DNS" IEEE Network Magazine vol. 22 no. 2, 2008.
Rastegari, S., Saripan M. I., and M. Rasid, F. A., “Detection of Denial of Service Attacks against Domain Name System Using Neural Networks", IJCSI, Volume 6, Issue 1, 2009.
Liu, C., Albitz P., "DNS and BIND", 5th Edition, 2006.