This tutorial will cover the installation of DNS on a Windows 2003 system. By reading through this tutorial you will learn about caveats that need to be noted when installing one of the most important services on a Windows network.

Ensure that you have Windows Server 2003 Std is installed and that a static IP address has been assigned. Figure 1.1 depicts how DNS should be configured and under the advanced TCP/IP settings.  In the DNS settings you must point the server to itself for DNS resolution.  If external internet names need to be resolved you can configure a forwarder so that the requests are sent to the DNS server of the ISP or an external DNS server.  Selecting a DNS server that is consistently up is paramount as external name resolution rests on this resource.


Figure 1.1

Install Microsoft DNS Server

Click on Start, Control Panel, Add or Remove Programs and then on Add or Remove Windows Components.  Then click on Components list, then click on Networking Services and then click Details, select the Domain Name System (DNS) check box, and then click OK. Follow the below figure 1.2 for guidance.


Figure 1.2

After installing DNS you will need to test if the installation was successful and if you are able to resolve names.  Nslookup is a built-in utility that can be used to test if the service has been installed and configured correctly.  Remember to test both internal and external names before concluding your tests. After typing Nslookup it connects to the configured server within your TCP/IP properties or if you run this command form a client it will connect to the DNS server handed out by DHCP.  You will then be able to type in the name you want to lookup i.e. www.google.com or machine.localdomain.net it will then resolve the name to an IP address if this happens you have installed and configured DNS correctly.

C:\>nslookup
*** Default servers are not available
Default Server:  UnKnown
Address:  127.0.0.1
help
Commands:   (identifiers are shown in uppercase, [] means optional)

NAME

- print info about the host/domain NAME using default server

NAME1 NAME2

- as above, but use NAME2 as server

help or ?

- print info on common commands

set OPTION

- set an option

All

- print options, current server and host

[no]debug

- print debugging information

[no]d2

- print exhaustive debugging information

[no]defname

- append domain name to each query

[no]recurse

- ask for recursive answer to query

[no]search

- use domain search list

[no]vc

- always use a virtual circuit

domain=NAME 

- set default domain name to NAME

srchlist=N1[/N2/.../N6]

- set domain to N1 and search list to N1,N2, etc.

root=NAME 

- set root server to NAME

retry=X 

- set number of retries to X

timeout=X 

- set initial time-out interval to X seconds

type=X 

- set query type (ex. A,ANY,CNAME,MX,NS,PTR,SOA,SRV)

querytype=X 

- same as type

class=X            

- set query class (ex. IN (Internet), ANY)

[no]msxfr 

- use MS fast zone transfer

ixfrver=X 

- current version to use in IXFR transfer request

server NAME 

- set default server to NAME, using current default server

lserver NAME 

- set default server to NAME, using initial server

finger [USER] 

- finger the optional NAME at the current default host

root

- set current default server to the root

ls [opt] DOMAIN [> FILE]

- list addresses in DOMAIN (optional: output to FILE)

-a

- list canonical names and aliases

-d

- list all records

-t TYPE

- list records of the given type (e.g. A,CNAME,MX,NS,PTR etc.)

view FILE

- sort an 'ls' output file and view it with pg

exit

- exit the program.

If all is well when you type in nslookup in a command prompt you will be connected to the DNS configured either by DHCP or statically.

Installing DNS Server On Windows 2003