![]() |
|
|||||||||||||||||
Domain Name System(Redirected from A record)
The Domain Name System or DNS is a system that stores information about host names and domain names in a kind of distributed database on networks, such as the Internet. Most importantly, it provides an IP address for each host name, and lists the mail exchange servers accepting e-mail for each domain. The DNS provides a vital service on the Internet, because while computers and network hardware work with IP addresses to perform tasks such as addressing and routing, humans generally find it easier to work with host names and domain names, for example in URLs and e-mail addresses. The DNS therefore mediates between the needs and preferences of wetware and of software.
A brief history of the DNSThe practice of using a name as a more human-legible abstraction of a machine's address on the network predates even TCP/IP, and goes back to the ARPAnet era. Originally, each computer on the network retrieved a file called HOSTS.TXT from SRI (now SRI International), which mapped an address to a name (technically, this file still exists - most modern operating systems either by default or through configuration, can check their Hosts file to match a URL to an IP address before checking the DNS). However, such a system had inherent limitations, because of the obvious requirement that every time a given computer's address changed, every single system that wanted to communicate with that computer would need an update to its Hosts file. The growth of networking called for a more scalable system: one which recorded a change in a host's address only in one place, and in which other hosts would learn about the change dynamically. Enter the DNS. Paul Mockapetris invented the DNS in 1983; the original specifications appear in RFC 882 and 883. In 1987 the publication of RFC 1034 and RFC 1035 updated the DNS specification and made RFC 882 and RFC 883 obsolete. Several more recent RFCs have proposed various extensions to the core protocols. How the DNS works in theoryMeet the playersThe practical operation of the DNS system consists of three players:
and,
Understanding the parts of a domain nameA domain name usually consists of two or more parts (technically labels), separated by dots.
The DNS consists of a hierarchical set of DNS servers. Each domain or subdomain has one or more authoritative DNS servers that publish information about that domain and the name servers of any domains "beneath" it. The hierarchy of authoritative DNS servers matches the hierarchy of domains. At the top of the hierarchy stand the root servers: the servers to query when looking up (resolving) a top-level domain name. An example of theoretical DNS recursionAn example may clarify this process. Suppose an application needs to find the IP address of www.wikipedia.org. It puts this question to a local DNS recursor.
This process utilises recursive searching. Understanding domain registration and glue recordsReading the example above, you might reasonably wonder: "how does the DNS server 204.74.112.1 know what IP address to give out for the wikipedia.org domain?" In the first step of the process, we noted that a DNS recursor has the IP addresses of the root servers more-or-less hard coded. Equally, the name servers that are authoritative for the Top-Level Domains change only very infrequently. However, the name servers that provide authoritative answers for common domain names may change relatively often. As part of the process of registering a domain name (and at any time thereafter), a registrant provides the registry with the name servers that will be authoritative for that domain name; therefore, when registering wikipedia.org, that domain is associated with the name servers gunther.bomis.com and zwinger.wikipedia.org at the .org registry. Consequentially, in the example above, when the server identified by 204.74.112.1 receives a request, the DNS server scans its list of domains, locates wikipedia.org, and returns the name servers associated with that domain. Usually, name servers appear listed by name, rather than by IP address. This generates another string of DNS requests to resolve the name of the name server; when an IP address of a name server has a registration at the parent zone, network programmers call this a glue record. DNS in practiceWhen an application (such as a web browser), wants to find the IP address of a domain name, it doesn't necessarily follow all of the steps outlined in the Theory section above. We will first look at the concept of caching, then outline the operation of DNS in "the real world". Caching and time to liveBecause of the huge volume of requests generated by a system like the DNS, the designers wished to provide a mechanism to reduce the load on individual DNS servers. The mechanism devised provided that when a DNS resolver (i.e. client) received a DNS response, it would cache that response for a given period of time. A value (set by the administrator of the DNS server handing out the response) called the time to live, or TTL defines that period of time. Once a response goes into cache, the resolver will consult its cached (stored) answer; only when the TTL expires (or until an administrator manually flushes the response from the resolver's memory) will the resolver contact the DNS server for the same information. Propagation timeAn important consequence of this distributed and caching architecture is that changes to the DNS are not necessarily immediately effective globally. This is best explained with an example: If an administrator has set a TTL of 6 hours for the host www.wikipedia.org, and then changes the IP address to which www.wikipedia.org resolves at 12:01pm, the administrator must consider that a person who cached a response with the old value at 12:00pm will not consult the DNS server again until 6:00pm. The period between 12:01pm and 6:00pm in this example is called propagation time, which is best defined as a period of time that begins between whenever you make a change to a DNS record, and ends after the maximum amount of time specified by the TTL expires. This essentially leads to an important logistical consideration when making changes to the DNS: not everyone is necessarily seeing the same thing you're seeing. RFC1537 helps setting it. DNS in the real worldIn the real world, users do not interface directly with a DNS resolver - they interface with programs like web browsers (Mozilla Firefox, Safari, Opera, Internet Explorer etc.) and mail clients (Outlook Express, Mozilla Thunderbird etc.). When users make a request which requires a DNS lookup (in effect, virtually any request that uses the Internet), such programs send a request to the DNS resolver built into their operating system. The DNS resolver will almost invariably have a cache (see above) containing recent lookups. If the cache can provide the answer to the request, the resolver will return the value in the cache to the program that made the request. If the cache does not contain the answer, the resolver will send the request to a designated DNS server or servers. In the case of most home users, the Internet service provider to which the machine connects will usually supply this DNS server: such a user will either configure that server's address manually or allow DHCP to set it; however, where systems administrators have configured systems to use their own DNS servers, their DNS resolvers will generally point to their own nameservers. This name server will then follow the process outlined above in DNS in theory, until it either successfully finds a result, or does not. It then returns its results to the DNS resolver; assuming it has found a result, the resolver duly caches that result for future use, and hands the result back to the software which initiated the request. As a final level of complexity, some applications such as Web browsers also have their own DNS cache, in order to reduce use of the DNS resolver library itself, which can add extra difficulty to DNS debugging, as it obscures which data is fresh, or lies in which cache. These caches typically have very short caching times of the order of 1 minute. Other DNS applicationsThe system outlined above provides a somewhat simplified scenario. The DNS includes several other functions:
The DNS uses TCP and UDP on port 53 to serve requests. Almost all DNS queries consist of a single UDP request from the client followed by a single UDP reply from the server. TCP typically comes into play only when the response data size exceeds 512 bytes, or for such tasks as zone transfer. Types of DNS recordsImportant categories of data stored in the DNS include the following:
Other kinds of records simply provide information (for example, a LOC record gives the physical location of a host), or experimental data (for example, a WKS record gives a list of servers offering some well-known service such as HTTP or POP3 for a domain). Internationalised domain namesDomain names must use only a subset of ASCII characters, preventing many languages from representing their names and words natively. ICANN has approved the Punycode-based IDNA system, which maps Unicode strings into the valid DNS character set, as a workaround to this issue, and some registries have adopted IDNA. DNS softwareVarious flavors of DNS software implement the DNS, including:
DNS-oriented utilities include:
Legal users of domainsRegistrant No one in the world really "owns" a domain name except the Network Information Centre (NIC), or domain name registry. Most of the NICs in the world receive an annual fee from a legal user in order for the legal user to utilise the domain name (i.e. a sort of a leasing agreement exists, subject to the registry's terms and conditions). Depending on the various naming convention of the registries, legal users become commonly known as "registrants" or as "domain holders". ICANN holds a complete list of domain registries in the world. One can find the legal user of a domain name by looking in the WHOIS database held by most domain registries. For most of the more than 240 country code top-level domains (ccTLDs), the domain registries hold the authoritative WHOIS (Registrant, name servers, expiry dates etc). For instance, DENIC, Germany NIC holds the authoritative WHOIS to a .DE domain name. However, some domain registries, such as VeriSign, use a registry-registrar model. For .COM, .NET domain names, the domain registries, VeriSign holds a basic WHOIS (registrar and name servers etc). One can find the detailed WHOIS (Registrant, name servers, expiry dates etc) at the registrars. Since about 2001, most gTLD registries (.ORG, .BIZ, .INFO) have adopted a so-called "thick" registry approach, i.e. keeping the authoritative WHOIS with the various registries instead of the registrars. Administrative Contact A registrant usually designates an administrative contact to manage the domain name. Management functions delegated to the administrative contacts may include (for example):
Technical Contact A technical contact manages the name servers of a domain name. The many functions of a technical contact include:
Billing Contact Self-explanatory, the party whom a NIC invoices. Name Servers Namely the authoritative name servers that host the domain name zone of a domain name. PoliticsMany investigators have voiced criticism of the methods used currently to control ownership of domains. Most commonly, critics claim abuse by monopolies or near-monopolies, such as VeriSign, Inc., and problems with assignment of top-level domains. The international body ICANN (the Internet Corporation for Assigned Names and Numbers) oversees the domain name industry. U.S. Truth in Domain Names ActThe U.S. "Truth in Domain Names Act", in combination with the PROTECT Act, forbids knowingly using a misleading domain name with the intent of attracting people into viewing a visual depiction of sexually explicit conduct on the Internet. See alsoExternal links and documentation
The contents of this article are licensed from Wikipedia.org under the GNU Free Documentation License.
How to see transparent copy 01-04-2007 01:21:04 |
|





