WHAT IS A DNS QUERY?
A DNS query (also known as a DNS request) is a demand for information sent from a user’s computer (DNS client) to a DNS server. In most cases a DNS request is sent, to ask for the IP address associated with a domain name. An attempt to reach a domain, is actually a DNS client querying the DNS servers to get the IP address, related to that domain.
When you open your browser and type in “www.example.com”, or a domain name system client needs to look up a name used in a program, it queries DNS servers to resolve the name. A DNS Query message from the DNS Client contains mainly below information.
1) Fully Qualified Domain Name (FQDN): Fully Qualified Domain Name (FQDN) of the resource the client is trying to resolve. If there is no DNS suffix provided by the application, the DNS Client will add it.
2) Query Type: What type of resource record, the client is trying to resolve
3) Class: Generally mentioned as IN (Internet) class
The Fully Qualified Domain Name (FQDN) as www.webcomkenya.com, but for IP communication, the computer needs to know the corresponding IPv4 address of www.webcomkenya.com. To resolve the Fully Qualified Domain Name (FQDN) www.webcomkenya.com to an IP address, domain name system Client must send a DNS Query to the domain name system Server.
HOW DNS QUERY WORKS
Step 1: After entering the URL and hitting “Enter”, the computer immediately needs to resolve the Fully Qualified Domain Name (FQDN) to an IP Address. The DNS Resolver will prepare a DNS Query and will send it to the IP Address of DNS Server, configured in TCP/IP configuration settings (here it is 18.104.22.168).
The DNS Server operates using UDP, on Well-known Port number 53
Step 2: After receiving the DNS Query from DNS Client, DNS Server will perform the name resolution steps. Finally will send a DNS Reply back to the DNS Client. The DNS Reply contains the answer for the DNS Query, if the name resolution process was successful.
Types of queries
In general, there are two ways of resolving a host or a domain name to an IP address, using the domain name system – a Recursive query and a non-Recursive query.
- The Recursive query is, when a domain name system client directly gets the IP address of a domain, by asking the name server system to perform the complete translation.
- The non-Recursive query is, when a domain name system client contacts the name servers, one by one, until it finds the server, containing the needed information.