Title: Domain Name System DNS History and Background
1Domain Name System (DNS) History and Background
- Server-based HOST files were the original
solution to name resolution on the Internet - Became infeasible for Internet-wide name
resolution as number of domains and hosts grew - RFCs 882 and 883
- Original RFCs for DNS
2DNS History and Background (continued)
- DNS combines the following virtues
- Allows local control over domain name database
segments - Data from all database segments is available
everywhere - Database information is robust and highly
available - DNS
- One of the most effective uses of distributed
database technology in the world today
3DNS Database Structure
- Mirrors structure of the domain namespace itself
- Top-level domains in the U.S.
- .com
- .edu
- .gov
- .mil
- .net
- .org
4(No Transcript)
5The DNS Namespace
- DNS
- Arbitrarily partitions tree and creates subtrees
for database information - Domains (such as ibm.com)
- Can be broken into subdomains (such as
clearlake.ibm.com) - A host in this subdomain would have at least 4
parts to the domain name www.clearlake.ibm.com - However, just because you see a 4-part name,
e.g. www.is.uwp.edu doesnt mean that a
subdomain is in use - Any valid domain name
- Ultimately resides within some specific DNS
database
6Delegating Zones
- The DNS database is partitioned into zones.
- A zone is a portion of DNS database.
- A zone is authoritative for resource records
within it - Authoritative means that updates to the dns
database are originally made in the authoritative
zone. - Ex UW Parksides DNS Server (131.210.1.15) is
authoritative for all host records in the uwp.edu
domain. - A single DNS server can host multiple zones.
- Names within a zone can be delegated to other
zones.
7Reasons for Delegation
- To subdivide management of a DNS domain
- To improve the name resolution performance and
provide fault-tolerance - To allow for hosts organizational affiliations
8Resource Records
- Name servers resource records facilitate
delegation. - Appear in forward and reverse lookup zones.
- Refer to the name servers resource records in
the target zone. - Zone is a portion of a domain.
- If there are no subdomains, then zone and domain
are the same.
9The microsoft.com Domain Delegated Across Two
Zones
Mydomain is a subdomain of microsoft.com
10Static and Dynamic Changes
- Static
- Changes edited by an administrator
- Good when the number of changes is small or when
updates occur infrequently - Dynamic
- Registers and dynamically updates resource
records - Better support for frequent changes
- Generally
- Server entries are static
- Workstation entries should usually be dynamic
if the DNS server supports dynamic updates - Workstation IP addresses are dynamic (from DHCP)
and Server IP addresses usually are static - Servers are usually up and connected to the
network, workstations are often not
11DNS Database Records
- Resource records
- Stores data associated with domain names, address
records, and other specific data - Most commonly used types
- Address (A) record
- Canonical name (CNAME) record
- Host information (HINFO) record
- Mail exchange (MX) record
- Name server (NS) record
12Resolvers
- Resolvers recognize when names need to be
resolved into IP addresses (forward lookups) - Anytime a computer attempts to use a host name
that is not already resolved - Can also issue requests to resolve an IP
addresses into names (reverse lookup) - Resolvers issue resolution requests to a DNS
server - Usually implemented as a library routine
- Uses User Datagram Protocol (UDP) first for
performance - Uses Transmission Control Protocol (TCP) if
return data is truncated
13Zones
- Its possible to subdivide a single domain into
subdomains. - Not required, but may make sense for domains with
a large number of hosts - Subdomains MAY be put into separate zones (this
isnt required) - A zone is a subtree of the DNS database.
- A zone is an administrative unit.
- A zone can contain a domain and/or one or more
subdomains - If a DNS Server is authoritative for a zone, it
contains the mappings of hosts to IP address for
all hosts within the zone. - A zone is (ultimately) where a host name is
mapped into its IP address - Allows for distributing management and load
balancing
14Domains Across Multiple Zones
Whats missing from this picture is that with
Windows 2003, Windows Administrative (user
accounts/groups) domains can be subdivided into
subdomains. The DNS domain/subdomain hierarchy
mirrors the Administrative domain structure.
(lets all thank Microsoft for making terminology
confusing by giving the term domain a 2nd and
unrelated meaning!)
15Name Server Roles
- Primary where updates to zone data originally
is made - The primary name server is the definitive source
of DNS information for the domain. All other DNS
servers for a domain ultimately pull their
information from the primary name server - Secondary receive zone data from primary name
servers, via zone transfers. - provide redundancy, load balancing, and
distributed access - Master - The secondary name server may be
configured to zone transfers from either the
primary name server or another secondary name
server. In either configuration, the server that
provides the zone is the master - Caching-only- only stores resolved queries, not
authoritative for any zone
16Recursive Queries
iterative query indicates that the server will
accept a referral to another server in place of a
definitive answer to the query.
A recursive query indicates that the client wants
a definitive answer to its query. The response to
the recursive query must be a valid address or a
message indicating that the address cannot be
found
17Iterative Query Steps
- Recursive query sent to local server.
- Local server checks zone, sends iterative query
to root server. - If the zone in the query is one for which the
local server is authoritative, no need to do an
Iterative Query . Ex A query for www.uwp.edu
made from an on-campus host will be sent to UWPs
local server, it contains the mapping for this
host. - Root server returns top-level domain servers IP
address. - Local server sends iterative query to top-level
server. - Top-level server returns domains name server IP
address. - Local server sends iterative query to domain name
server. - Domain name server returns IP address of DNS
query. - Local server returns address to resolver.
18Root name server list
- A list of current root domain name servers (A
M) is found at - ftp//ftp.rs.internic.net/domain/named.root
- DNS Servers issuing iterative requests need to
have an up-to-date list of root servers as a
starting point of iterative queries, examples
entries - .
3600000 IN NS A.ROOT-SERVERS.NET. - A.ROOT-SERVERS.NET. 3600000 IN A
198.41.0.4 - Entries for B through L root servers
- .
3600000 IN NS M.ROOT-SERVERS.NET. - M.ROOT-SERVERS.NET. 3600000 IN A
202.12.27.33
19Inverse Queries
- A resolver sends a request to a name server.
- The in-addr.arpa domain.
- Pointer (PTR) resource records.
20Caching and Time to Live
- Name server caches all information it receives.
- Saves information for time called Time to Live
(TTL).
21DNS Configuration Files
- DNS is a hierarchical, distributed database.
- First record is start of authority (SOA).
- Name server (NS) record.
- Host record.
- Canonical name (CNAME) record.
22Start of Authority (SOA)
- Each zone has a start of authority record that
defines the general parameters of the zone - Refresh Interval
- How often secondary DNS servers should check if
changes are made to the zone. - Retry Interval
- How often secondary DNS server should retry
checking if changes are made - if the first
refresh fails. - Expire Interval
- How long the zone will be valid after a refresh.
- Secondary servers will discard the zone if no
refresh could be made within this interval. - Minimum (default) TTL
- TTL property, specifying the amount of time other
DNS servers and applications are allowed to cache
the record
23Start of Authority (SOA)
Name of primary DNS server for the zone
- Example of SOA record
- _at_ IN SOA nameserver.example.microsoft.com.
- postmaster.example.microsoft.com. (
- 1 serial number
- 3600 refresh 1h
- 600 retry 10m
- 86400 expire 1d
- 3600 ) min TTL 1h
Email address of the administator
24Name Server Record
The Name Server record identifies an
authoritative name server for a domain Example
of NS record _at_ IN NS nameserver2.microsoft.com
The _at_ means the current domain, in other words
nameserver2.microsoft.com is authoritative for
the domain this name server
25Host Record
- Example of Host Record
- rhino IN A 157.55.200.143
- localhost IN A 127.0.0.1
- remember?
- .
3600000 IN NS M.ROOT-SERVERS.NET. - M.ROOT-SERVERS.NET. 3600000 IN A
202.12.27.33
The name server that is authoritative for the
domain
The domain
A host record
26CNAME Record
- Example of CNAME (canonical name) record
- They refer to a name that needs to be defined in
a host record - Used to define aliases to the name in a host
record - FileServer1 CNAME rhino
- www CNAME rhino
- ftp CNAME rhino
When there is no period at the name of the host,
domain name of the zone will be appended as the
full name of the host
27Reverse Lookup File
- Allows resolver to request a name.
- Contains SOA, NS, and PTR records.
- Used for some security applications.
- Reverse lookup zones are optional.
- Reverse lookup zones correspond to subnets
- Zone contains mapping of IP addresses to host
names for hosts on the subnet
28PTR Record
Example of PTR record 51.200.55.157.in-addr.arpa.
IN PTR mailserver1.microsoft.com
29Cache File
- Used by Name servers to identify root name
servers - Example of Cache file entry
- . 3600000 IN NS A.ROOT-SERVERS.NET.
- A.ROOT-SERVERS.NET. 3600000 A 198.41.0.4
- Cache file location
- SystemRoot\System32\Dns
30Second-Level Domain
- The Internet Network Information Center
(InterNIC) must be informed of the domain name. - The InterNIC must be given the IP addresses of at
least two DNS servers. - Additional DNS servers can be used independent of
the Internet.