An application protocol that resolves domain and computer names to IP addresses

Skip to main content

This browser is no longer supported.

Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.

Domain Name System (DNS)

  • Article
  • 01/10/2022
  • 2 minutes to read

In this article

Applies to: Windows Server 2022, Windows Server 2019, Windows Server 2016

Domain Name System (DNS) is one of the industry-standard suite of protocols that comprise TCP/IP, and together the DNS Client and DNS Server provide computer name-to-IP address mapping name resolution services to computers and users.

In Windows Server 2016, DNS is a server role that you can install by using Server Manager or Windows PowerShell commands. If you are installing a new Active Directory forest and domain, DNS is automatically installed with Active Directory as the Global Catalogue server for the forest and domain.

Active Directory Domain Services (AD DS) uses DNS as its domain controller location mechanism. When any of the principal Active Directory operations is performed, such as authentication, updating, or searching, computers use DNS to locate Active Directory domain controllers. In addition, domain controllers use DNS to locate each other.

The DNS Client service is included in all client and server versions of the Windows operating system, and is running by default upon operating system installation. When you configure a TCP/IP network connection with the IP address of a DNS server, the DNS Client queries the DNS server to discover domain controllers, and to resolve computer names to IP addresses. For example, when a network user with an Active Directory user account logs in to an Active Directory domain, the DNS Client service queries the DNS server to locate a domain controller for the Active Directory domain. When the DNS server responds to the query and provides the domain controller's IP address to the client, the client contacts the domain controller and the authentication process can begin.

The Windows Server 2016 DNS Server and DNS Client services use the DNS protocol that is included in the TCP/IP protocol suite. DNS is part of the application layer of the TCP/IP reference model, as shown in the following illustration.

An application protocol that resolves domain and computer names to IP addresses

Feedback

Submit and view feedback for


Additional resources

Summary

This article discusses the different methods of host name to IP address resolutions used by Microsoft Windows clients. The sequence of methods is different than the sequence used to resolve NetBIOS names to IP addresses.

More Information

On a network using the TCP/IP protocol, it is necessary to convert names of resources to IP addresses to connect to these resources. Microsoft Windows clients will follow a sequence of methods in attempting to resolve a name to an address, stopping the search when it successfully matches a name to an IP address.

There are two main sequences used in almost all cases: NetBIOS resolution and Host name resolution. Clients connecting to resources on Microsoft servers, typically through Windows File Manager or Network Neighborhood, most often use NetBIOS name resolution.

For additional information, please see the following article in the Microsoft Knowledge Base:

119493 NetBIOS over TCP/IP Name Resolution and WINS

Host name resolution resolves the names of TCP/IP resources that do not connect through the NetBIOS interface. The most common example of this is a Web browser such as Microsoft Internet Explorer. Other examples include Internet applications such as Ping, FTP, and Telnet. Many modern database and mail applications that connect using Winsock, the Microsoft Windows implementation of TCP/IP sockets, also use host name resolution. Examples of these types of applications are Outlook and Exchange.

When troubleshooting name resolution issues, it is important to narrow down whether the application is resolving a NetBIOS name or a host name.

NOTE: In the context of this article, the term "client" does not necessarily refer to a workstation. A Windows NT server will take the role of client when it requires access to resources that require host name resolution.

Host name resolution generally uses the following sequence:

  1. The client checks to see if the name queried is its own.

  2. The client then searches a local Hosts file, a list of IP address and names stored on the local computer.

    NOTE: The Hosts file location depends on the operating system:

    Windows NT %Systemroot%\System32\Drivers\Etc
    Windows 95 \
    Windows for Workgroups \
    Windows 3.1 \
    MS-Client 3.0 \Net
    Lan Manager 2.2c Client \Net
    Where %Systemroot% is the folder in which Windows NT is installed, is the drive on which the OS is installed, and refers to a boot floppy disk or drive C.

    A sample hosts file, Hosts.sam, is installed with the TCP/IP protocol showing the proper format.

  3. Domain Name System (DNS) servers are queried.

  4. If the name is still not resolved, NetBIOS name resolution sequence is used as a backup. This order can be changed by configuring the NetBIOS node type of the client.

The Windows client will try each of these methods until it either successfully resolves the name or exhausts these methods. Windows NT, Windows 95, and Windows for Workgroups clients using Microsoft TCP/IP 3.11b follow this sequence. Lan Manager 2.2c or Microsoft Client 3.0 clients will not use NetBIOS name resolution as a backup.

For additional information, please see the following articles in the Microsoft Knowledge Base:

169141 NetBIOS and hostname resolution for MS-Client and LM 2.2c
When resolving names the client will skip methods for which it is not configured. For example, if there is no hosts file on the system, then it will skip step #2 above and try a query to a DNS server. If no DNS server IP addresses are entered in the client TCP/IP configuration, then the client will skip to the next step in the sequence after DNS.

The method for changing host name resolution order differs among operating systems and versions. These are documented in the Resource Kits for the specific operating systems, as well as in the Microsoft Knowledge Base.

For additional information, please see the following articles in the Microsoft Knowledge Base:

171567 Windows NT 4.0 ServiceProvider Priority Values Not Applied

139270 How to Change Name Resolution Order on Windows 95 and Windows NT

119372 Setting the Name Resolution Search Order for TCP/IP-32

Troubleshooting

Problem: Client is unable to resolve a host name.

Troubleshooting steps:

If a client cannot resolve a host name, then it is best to verify the Host name resolution sequence listed above that the client should be using. If the name does not exist in any of the resources that the client uses, then you must decide to which resource to add it. If the name exists in one of the resources, such as a DNS server or a Windows Internet Name Service (WINS) server and the client is not resolving the name correctly, focus your attention on troubleshooting that specific resource.

Also, confirm that the client is trying to resolve a host name and not a NetBIOS name. Many applications have multiple methods that they can utilize to resolve names, this is especially true of mail and database applications. The application may be configured to connect to resources using NetBIOS. Depending on the client configuration the client may bypass host name resolution. From there it will be necessary to either change the connection type to TCP/IP sockets or to troubleshoot the problem as a NetBIOS issue.

Problem: Client resolves a name very slowly, or fails to resolve a name and takes a long time to report a failure.

Troubleshooting steps:

Having DNS servers configured in a client's TCP/IP configuration, but the server is not available to the client usually causes this. Because the TCP/IP protocol assumes an unreliable network, a client will repeatedly attempt to connect to a DNS server before abandoning the attempted query. The client will then attempt to query a second DNS server if one is configured and take the same time to fail. Only then will the client step through to NetBIOS name resolution as described above.

There are three ways to approach this issue.

  • If the host name is correctly entered in a host file, it will be resolved before the client attempts to query DNS. This solution works well if DNS servers are temporarily unreachable and there is a small number of host names that need to be resolved . Manually configuring Hosts files for numerous clients may be prohibitive. -or-

  • If DNS servers are available, but the DNS Server addresses in the clients TCP/IP configuration are incorrect, then correcting these addresses will allow the clients to contact the DNS servers immediately. Even if a DNS server reports that it cannot resolve a name, this will happen much faster than if the client cannot reach a DNS server at all. -or-

  • If DNS servers are configured on the client, but these servers are permanently unavailable, then remove the IP addresses of the DNS servers from the client configuration. The client will then bypass the DNS lookup without delay. -or-

  • If records in the DNS database are missing or incorrect, then there will be a delay as DNS servers query other DNS servers before reporting that they cannot resolve the name. This will usually cause a delay of just a few seconds.

For additional information on TCP/IP and name resolution, please see the following white paper available on the Microsoft anonymous ftp server:

File Name: Tcpipimp2.doc
Location : ftp://ftp.microsoft.com/bussys/winnt/winnt-docs/papers/
Title : "Microsoft Windows NT 3.5/3.51/4.0: TCP/IP Implementation Details TCP/IP Protocol Stack and Services, Version 2.0. "

Need more help?

What term is used to describe software that is at the final stage of testing by vendors and users before the official release that is sold commercially?

UAT is often the last phase of the software testing process and is performed before the tested software is released to its intended market. The goal of UAT is to ensure software can handle real-world tasks and perform up to development specifications.

What is the final stage of software testing by vendors before cutting an official release that is sold commercially and is usually tested by a very large audience of customers?

The final stage of software testing by vendors before cutting an official release that is sold commercially. A release candidate is usually tested by a very large audience of customers. Some vendors may issue more than one release candidate if problems are discovered in the first RC.

What three tasks are typically completed during software installation?

Common operations performed during software installations include:.
Making sure that necessary system requirements are met..
Checking for existing versions of the software..
Creating or updating program files and folders..
Adding configuration data such as configuration files, Windows registry entries or environment variables..

Which are advantages of using a server operating system?

Which are advantages of using a server operating system? Server operating systems are usually more secure and can come with additional services, such as security, already built in, so you don't have to set up these services separately.