220 likes | 427 Views
Chapter 16 – DNS. DNS. Domain Name Service This service allows client machines to resolve computer names (domain names) to IP addresses DNS works at the Application Layer of the OSI model
E N D
DNS • Domain Name Service • This service allows client machines to resolve computer names (domain names) to IP addresses • DNS works at the Application Layer of the OSI model • DNS allows users to utilize user-friendly names when referencing other host computers instead of referencing their IP address • This system is used extensively on the Internet • Consists of a static database – has to manually be updated
Why Use Domain Name Instead of IP Address? • Easier for us to remember • Name is more reliable • IP address could very easily change, but the name will likely stay the same
How DNS Works • Must translate computer names to IP addresses • A hierarchical client/server distributed database system is used • The clients are called “resolvers” and the servers are called “name servers” • Resolvers send UDP (economy version of TCP) queries to name server to resolve a host name • The name server then returns the corresponding IP address • If name server is not able to resolve the request, it forwards the request to another name server
DNS Structure • Composed of a distributed database of names that establish a logical tree structure called the “domain name space” • Each node , or domain, in that space is named and can contain subdomains • A domain includes all nodes below the specified node • Domains and subdomains are grouped into zones to allow for distributed administration of the name space • A domain name identifies the computers position within the logical DNS hierarchy
Top Level Domains • The root of the DNS database is managed by the Internet Network Information Center (www.internic.com) • Names of top-level domains • Com commercial sites • Edu educational sites • Int international organizations • Net network organiozations • Org noncommercial organizations
DNS Zones • A zone is a portion of the DNS namespace that is managed in a particular zone file • Each zone is anchored at a particular domain- referred to as the zone’s root domain • For example, microsoft.com is a domain and this domain main be controlled by more than one zone file
Four Types of Name Servers • Primary • Secondary • Master • Caching-Only
Primary and Secondary Name Servers • DNS servers store information about the domain namespace • These servers generally have one or more zones for which they are responsible • The name server is said to have “authority” for those zones • Primary name server - gets the data from its zones. All changes in the zone are registered with the primary name server • Secondary name server – gets its data from another name server
Reasons to have Secondary Name Servers • Redundancy – Use at least two DNS name servers per zone – a primary and a secondary for fault tolerance • Remote Locations – Use a secondary name server in remote location that has a large number of clients. This prevents a large amount of communication over a slow link for name resolution • Reduce Load on Primary
Forwarders • The DNS name server uses its own database first to try to resolve the host name • If this fails, it must then must communicate with other DNS name servers to resolve the request • This typically requires interaction with DNS name servers located outside of the company on the public Internet • It’s a good idea to selectively enable specific DNS name servers within your company for this ytpe of wide-area communication • A DNS server designated for this operation is denoted as a “forwarder”
Forwarder – Continued • When a DNS server can’t resolve a name request, it passes the request along to one of the designated forwarder • The forwarder carries out whateven communication is needed to resolve the request • The result is returned to the original DNS server, which, in turn, sends back the results to the original requester
Master Name Server • When you define a secondary name server for a specific zone, you must also designate another name server from which to obtain the zone information • The DNS server that provides this information is referred to as the Master Name Server • The master name server can be either a primary or a secondary name server for this zone • When a secondary name server starts up, it contacts its master name server and initiates a zone transfer
Caching-Only Servers • These are special DNS servers that only perform queries, cache the answers, and return the results • When they start up initially, they have to build their cach store over time as service is requested • This would be useful for a remote site with a slow link as much less traffic would be sent across the link because these servers don’t perform zone transfers
Three Types of Queries to a DNS Server • Recursive • Iterative • Inverse
Recursive Query • The DNS name server is asked to respond with a requested data or with an error stating that the domain name specified does not exist • This is the typical type of query used between a DNS client (resolver) and a DNS server • The name server cannot just refer the querier to a different name server
Iterative Query • The queried name server gives back the best answer it currently has to the query • This type of query is typically sent by a DNS server to other DNS servers • See handout on example of recursive and iterative queries
Inverse Query • The client provides the IP address and wants to determine the domain name • A special domain called in-addr.arpa in the DNS namespace was created to help resolve the IP address to the domain name
Caching and Time to Live • When a name server is processing a recursive query, it may be requied to send out several queries to find the domain name • The name server caches all the received information during this process for a specified period of time know as the Time to Live (TTL) • The TTL is set by the administrator of the zone where the data comes from • Volatile network – use small TTL • However, small TTLs increase load on your name server • TTL value is decreased and entry is removed from cache when counter gets to zero • Client resolvers also have data caches and honor the TTL value