DNS (Domain Name System)
What do DNS to you?
Every computer connected directly to the Internet has at least one unique IP address. However, users do not want to work with the numeric addresses like 194.153.205.26 but with a domain name or address more explicit (called address FQDN) of the type
Thus, it is possible to associate names to numerical addresses common language through a system called DNS (Domain Name System).
Called resolution of domain names (or address resolution) the correlation between the IP addresses and the domain name associated with it.
Hostnames
The origins of TCP / IP, because the networks were very few large or in other words the number of computers connected to the same network was weak, network administrators created files called conversion tables manually. These tables were manually converting batch files, usually named hosts or hosts.txt associating each line on the IP address of the machine and the associated literal name called hostname.
Introduction to the Domain Name System
The previous system of conversion tables required, however the manual update tables all computers when adding or editing a hostname. Thus, with the explosion of the size of the networks and their interconnection, it had put in place a management system and hierarchical names more easily manageable. System called the Domain Name System (DNS) translate domain name system was developed in November 1983 by Paul Mockapetris (RFC 882 and RFC 883) in 1987 and revised in RFCs 1034 and 1035. DNS has been for many RFCs.
The system offers:
namespace hierarchy to ensure the uniqueness of a name in a tree structure, like the Unix file systems.
a system of distributed servers to make available namespace.
system allowing customers to "solve" the domain name, that is to say query servers to determine the IP address for a name.
The namespace
Structuring DNS relies on a tree structure in which are defined higher-level domains (TLD called for Top Level Domains), attached to a root node represented by a point.
Called "domain name" each node of the tree. Each node has a label (in English "label") with a maximum length of 63 characters.
The set of domain names and is an inverted tree where each node is separated from the next by a period (".").
The end of a branch is called the host, and corresponds to a machine or a network entity. The host name that is assigned must be unique in the field, or if the subdomain. For example the web server to a domain name holder and generally www.
The word "field" is formally suffix of a domain name, that is to say the set of labels of nodes of a tree, with the exception of the host.
The absolute name corresponding to the set of labels of the nodes of a tree, separated by dots, and finished with a final point, is called
FQDN (Fully Qualified Domain Name or Fully Qualified Domain Name). The maximum depth of the tree is 127 levels and the maximum length of an FQDN is 255 characters. The FQDN identifies uniquely a machine on the network of networks. Thus www.commentcamarche.net. is an FQDN.
Name Servers
Machines called domain name servers used to establish the correspondence between the domain name and the IP address of machines on a network.
Each domain has a domain name server, called "primary name server" (primary domain name server), and a secondary name server (secondary domain name server), to take over from the primary name server unavailability.
Each server name is declared in a domain name server to the next level, allowing an implicit delegation of authority to the field. Name System is a distributed architecture where each entity is responsible for managing the domain name. There is therefore no body charged with the management of all domain names.
Servers corresponding to the areas of highest level (TLD) are called "root name servers". There are thirteen spread over the world, with the names "a.root-servers.net" to "m.root-servers.net."
A name server defines an area, that is to say a set of areas on which the server has authority. The domain name system is transparent to the user, however, should not forget the following:
Each computer must be configured with the address of a machine that can turn any name into an IP address. This machine is called a Domain Name Server. Do not panic when you connect to the Internet, the ISP will automatically change your network settings for you to make those nameservers.
The IP address of a second Domain Name Server (secondary Domain Name Server) must also be defined: the secondary name server can relay the primary nameserver in case of malfunction.
The most common server called BIND (Berkeley Internet Name Domain). It is free software available under UNIX systems, originally developed by the University of California at Berkeley and now maintained by the ISC (Internet Systems Consortium).
Resolution of domain names
The mechanism of finding the IP address corresponding to a host name is called "domain name resolution." The application to do this (usually integrated with the operating system) is called "resolver" (in English "resolver").
When an application wants to connect to a host known by its domain name (eg "www.commentcamarche.net"), it will query a name server defined in its network configuration. Every machine connected to the network has indeed its configuration IP addresses of two name servers their ISP.
A request is sent in the first name server (called "primary name server"). If it has the record in its cache, it sends it to the application, otherwise it queries a root server (in our case a root server corresponding to TLD ". Net"). The root name server returns a list of authoritative name servers on the domain (in this case the IP addresses of the name servers commentcamarche.net primary and secondary).
The primary name server's authoritative domain will then be interviewed and return the record for the host on the domain (in our case www).
Record Types
DNS is a distributed database containing records, called RR (Resource Records) on domain names. Are concerned only by reading the information below those responsible for the administration of an estate, the operation of nameservers are completely transparent to users.
Because of the cache system allowing the system to be distributed DNS, records of each domain have a life, called TTL (Time To Live, translate life expectancy), allowing intermediate servers know the expiry date information and thus whether it is necessary or not recheck.
Generally, a DNS record contains the following information:
Domain name (FQDN) TTL Class Type RDATA
www.commentcamarche.net. 3600 IN A 163.5.255.85
Domain Name: The domain name must be a FQDN, that is to say, to be completed by a point. If the point is omitted, the domain name is relative, that is to say that the main domain name suffixes the field before;
Type: 16-bit value specifying the type of resource described by the record. The resource type can be one of the following:
A: This is the basic type correlating canonical name and IP address. Moreover, there may be multiple A records corresponding to different machines on the network (servers).
CNAME (Canonical Name): It is used to match an alias to the canonical name. It is particularly useful to provide alternative names for the different services on the same machine.
HINFO: it is a purely descriptive field to describe the particular hardware (CPU) and operating system (OS) of a host. It is generally advisable not to learn to not provide items of information that can be useful for hackers.
MX (Mail eXchange) corresponds to the management server mail. When a user sends an email to an address (user @ domain), the outgoing mail server queries the name server has authority over the domain to obtain the MX record. There may be several MX domain to provide redundancy in case of failure of the primary mail server. And the MX record to set a priority to a value ranging from 0 to 65 535
NS: name server is the authority over the area.
PTR: a pointer to another portion of the name space areas.
SOA (Start of Authority): the SOA to describe the name server with authority over the area, as well as the technical contact email address (including '@' character is replaced by a point).
Class: the class can be either IN (corresponding to the protocols of the Internet, so it is the system used in our case), or CH (for the chaotic system);
RDATA: it is data corresponding to the registration. Here is the information expected by the record type:
A: A 32-bit IP address;
CNAME: a domain name;
MX: a priority value of 16 bits, followed by a host name;
NS: hostname;
PTR a domain name;
SOA: several fields.
Top-level domains
There are two types of TLDs (Top Level Domain, or areas of highest level):
Areas called "generic", called gTLD (generic TLD). GTLDs are generic domain names offering a higher level of classification by industry. And each has its own gTLD access rules:
gTLD history:
. Arpa corresponds to the original machines from the network;
. Initially corresponded com for commercial enterprises. Now it has become the TLD "TLD default" and the acquisition of domains with this extension is possible, including by individuals.
. Corresponds to edu educational institutions;
. Corresponds gov government agencies;
. Int correspond to international organizations;
. Thousand corresponds to military organizations;
. Initially corresponded net organizations dealing with networks. This TLD has become in recent years a current TLD. The acquisition of domains with this extension is possible, including by individuals.
. Companies org is usually non-profit. </ Bold>
new gTLDs introduced by ICANN in November 2000:
. Aero corresponds to the aviation industry;
. Biz (business) corresponding to commercial enterprises;
. Museum corresponds to museums;
. Names The name or names of those imaginary characters;
. Organizations is info relating to the information;
. Coop corresponding to cooperatives;
. Corresponding to pro professions. </ Bold>
gTLD special:
. Arpa corresponds infrastructure network management. The gTLD serves as the arpa reverse lookup machines on the network, to find the name corresponding to an IP address.
Areas "national", referred ccTLD (country code TLDs). CcTLDs corresponding to different countries and their names are abbreviations of names of countries defined by ISO 3166. The table below summarizes the list of ccTLDs.
Country Code
AC Ascension Island
AD Andorra
AE United Arab Emirates
AF Afghanistan
AG Antigua and Barbuda
AI Anguilla
AL Albania
Armenia AM
AN Netherlands Antilles
AO Angola
AQ Antarctica
AR Argentina
AS American Samoa
AT Austria
AU Australia
AW Aruba
AZ Azerbaijan
BA Bosnia and Herzegovina
BB Barbados
BD Bangladesh
BE Belgium
BF Burkina Faso
BG Bulgaria
BH Bahrain
BI Burundi
BJ Benin
BM Bermuda
BN Brunei
BO Bolivia
BR Brazil
BS Bahamas
BT Bhutan
BV Bouvet Island
BW Botswana
BY Belarus
BZ Belize
CA Canada
CC Cocos
CD Democratic Republic of Congo
CF Central African Republic
CG Congo
CH Switzerland
CI Côte d'Ivoire
CK Cook Islands
CL Chile
CM Cameroon
CN China
CO Colombia
COM organization for commercial purposes
CR Costa Rica
CU Cuba
CV Cape Verde
CX Christmas Island
CY Cyprus
CZ Czech Republic
DE Germany
DJ Djibouti
DK Denmark
DM Dominica
DO Dominican Republic
DZ Algeria
EC Ecuador
EDU organization relevant to education
EE Estonia
EG Egypt
EH Western Sahara
ER Eritrea
ES Spain
ET Ethiopia
Europe EU
FI Finland
FJ Fiji
FK Falkland Islands (Malvinas)
FM Micronesia
FO Faroe Islands
FR France
FX France (European Territory)
GA Gabon
GB Great Britain
GD Grenada
GE Georgia
GF French Guiana
GG Guernsey
GH Ghana
GI Gibraltar
GL Greenland
GM Gambia
GN Guinea
GOV Government Agency
GP Guadeloupe
GQ Equatorial Guinea
GR Greece
GS South Georgia
GT Guatemala
GU Guam (USA)
GW Guinea-Bissau
GY Guyana
HK Hong Kong
HM Heard and McDonald Islands
HN Honduras
HR Croatia
HT Haiti
HU Hungary
ID Indonesia
IE Ireland
IL Israel
IM Isle of Man
IN India
IO the British Indian Ocean
IQ Iraq
IR Iran
IS Iceland
IT Italy
JM Jamaica
JO Jordan
JP Japan
KE Kenya
KG Kyrgyzstan
KH Cambodia
KI Kiribati
KM Comoros
KN Saint Kitts and Nevis
KP North Korea
KR South Korea
KW Kuwait
KY Cayman Islands
KZ Kazakhstan
THE Laos
LB Lebanon
LC Saint Lucia
LI Liechtenstein
LK Sri Lanka
LR Liberia
LS Lesotho
LT Lithuania
LU Luxembourg
LV Latvia
LY Libya
MA Morocco
MC Monaco
MD Moldova
MG Madagascar
MH Marshall Islands
MK Macedonia
ML Mali
MIL Military Agency
MM Myanmar
MN Mongolia
MO Macao
MP Northern Mariana Islands
MQ Martinique
MR Mauritania
MS Montserrat
MU Mauritius
MV Maldives
MW Malawi
MX Mexico
MY Malaysia
MZ Mozambique
NA Namibia
NC New Caledonia
NE Niger
NET organization relevant to Internet
NF Norfolk Island
NG Nigeria
NI Nicaragua
NL Netherlands
NO Norway
NP Nepal
NR Nauru
NT Neutral Zone
NU Niue
NZ New Zealand
OM Oman
ORG Organization unreferenced
PA Panama
PE Peru
PF French Polynesia
PG Papua New Guinea
PH Philippines
PK Pakistan
PL Poland
PM Saint Pierre and Miquelon
PN Pitcairn
PR Puerto Rico (USA)
PS Palestinian Territories
PT Portugal
PY Paraguay
PW Palau
QA Qatar
RE Meeting
RO Romania
RU Russian Federation
RW Rwanda
SA Saudi Arabia
SB Solomon Islands
SC Seychelles
SD Sudan
SE Sweden
SG Singapore
SH St. Helena
SI Slovenia
SJ Svalbard and Jan Mayen
SK Slovak Republic
SL Sierra Leone
SM San Marino
SN Senegal
SO Somalia
SR Suriname
ST Sao Tome and Principe
SU Soviet Union
SV El Salvador
SY Syria
SZ Swaziland
TC Turks and Caicos Islands
TD Chad
TF French Southern Territory
TG Togo
TH Thailand
TJ Tajikistan
TK Tokelau
TM Turkmenistan
TN Tunisia
TO Tonga
TP East Timor
TR Turkey
TT Trinidad and Tobago
TV Tuvalu
TW Taiwan
TZ Tanzania
UA Ukraine
UG Uganda
UK United Kingdom
UM U.S. Minor Outlying Islands
U.S. United States
UY Uruguay
UZ Uzbekistan
VA Vatican City
VC Saint Vincent and the Grenadines
VE Venezuela
VG British Virgin Islands
VI Virgin Islands
VN Vietnam
VU Vanuatu
WF Wallis and Futuna
WS Western Samoa
YE Yemen
YT Mayotte
YU Yugoslavia
ZA South Africa
ZM Zambia
ZR Zaire
ZW Zimbabwe