dcsimg

Learn AD in 15 Minutes a Week: Microsoft DNS - Part 1 Page 2

By Jason Zandri (Send Email)
Posted Dec 19, 2002


[NOTES FROM THE FIELD] - This portion of the article is mainly an overview of DNS. Upcoming articles will delve into the Active Directory pieces a little more.

[NOTES FROM THE FIELD] - If This section looks familiar to you, it may be because you have already read my Understanding DNS in Windows XP Professional article. This section is basically a recap of that. If you want you can skip down to the next section titled DNS Zone Overview.

Microsoft DNS Overview

The Microsoft Domain Name System (DNS) is the name resolution service that resolves Uniform Resource Locator names (URLs) and other DNS names into their "true" dotted decimal format. http://www.zandri.net translates into a specific Internet Protocol (IP) address and it is that address resolution that enables users to reach the server destination they are seeking.

There are two different types of DNS lookup, forward and reverse. A forward lookup query resolves a DNS name to an IP address and is the most common DNS query. A reverse lookup query resolves an IP address to a name.

A DNS name server can resolve a query only for a zone for which it has authority. When DNS servers receive a resolution request, they attempt to locate the requested information in their own database.

Two types of queries can be performed in DNS: iterative and recursive.

A DNS resolution query made from a client to a DNS server where the server returns the best answer it can provide based on its local cache or stored zone data is called an iterative query. If the server performing the iterative query does not have an exact match for the name request, it provides a pointer to an authoritative server in another level of the domain namespace. The client system will then query that server and so on and will continue this process until it locates a server that is authoritative for the requested name or until an error is returned, such as name not found, or a time-out condition is met.

A DNS resolution query made from a client to a DNS server in which the server assumes the full workload and responsibility for providing a complete answer to the query is called a recursive query.

If the server cannot resolve the resolution from its own database, it will then perform separate iterative queries to other servers (on behalf of the client) to assist in returning an answer to the recursive query. It will continue this process until it locates a server authoritative for the requested name or until an error is returned, such as name not found or a time-out condition is met.

Client computers generally send recursive queries to DNS servers. Usually the DNS server is set up to make iterative queries to provide an answer to the client.

The following is an example of the query process of a client computer making a request to a DNS server to resolve the Web address of www.zandri.net.

>First the client computer generates a request for the IP address of www.zandri.net by sending a recursive query to the DNS server that it is configured to use in its network configuration. (We'll call this server LOCALCFG)

The second step is for LOCALCFG DNS server, which has received a recursive query, to look it its local database. If it does find that answer locally it is returned. If it is unable to locate an entry for www.zandri.net in its own database, it sends an iterative query to a DNS server that is authoritative for the root of the local domain. (We'll call this server LOCALROOT)

If the LOCALROOT DNS server, which is authoritative for the root domain, has the answer in its local database it sends a response to LOCALCFG. If the LOCALROOT DNS server is unable to locate an entry for www.zandri.net in its database, it sends a reply to the querying DNS server (LOCALCFG) with the IP addresses of DNS servers that are authoritative for the .net domain. (If it were .com it would send the IP addresses of DNS servers that are authoritative for the COM domain. If it were .org it would send the IP addresses of DNS servers that are authoritative for the ORG domain and so on.) We'll call this server DNSNET.

The DNS server that received the client recursive query (LOCALCFG) sends an iterative query to a server that is authoritative for the .net domain (DNSNET).

If the DNS server that is authoritative for the .net domain (DNSNET) has an entry for www.zandri.net in its local cache it will return it to LOCALCFG. If DNSNET is unable to locate an entry for www.zandri.net in its database, it will send a reply to the querying DNS server (LOCALCFG) with the IP addresses of DNS servers that are authoritative for the zandri.net domain. (We'll call this server ZANDRIDNS).

The DNS server that received the client recursive query (LOCALCFG) then sends an iterative query to a server that is authoritative for the zandri.net domain. (ZANDRIDNS)

The DNS server that is authoritative for the zandri.net domain (ZANDRIDNS) locates an entry for www.zandri.net in its database and sends a reply to the querying DNS server (LOCALCFG) with the IP address of www.zandri.net.

The DNS server (LOCALCFG) that received the recursive query sends a reply to the client computer with the IP address of www.zandri.net.

Page 2 of 3


Comment and Contribute

Your name/nickname

Your email

(Maximum characters: 1200). You have characters left.