Как связываются между собой IP-адреса и доменные имена?
Связь между IP-адресами и доменными именами осуществляет международная распределенная база данных, основанная на использовании так называемых DNS-серверов.
Кадый владелец домена второго уровня должен иметь такой DNS-сервер, или арендовать его у кого-либо.
На DNS-сервере в специальных файлах прописывается и хранится соответствие – какое доменное имя соответствует какому IP-адресу (прямая зона) и обратное соответствие IP-адрес – доменное имя (обратная зона) для всех доменных имен, находящихся в ведении владельца домена.
Любое изменение соответствия должно быть обязательно прописано на DNS-сервере, только после этого оно «вступает в силу». Например, вы можете на своем компьютере прописать для него какое хотите доменное имя, но знать об этом будете только вы. Если же такая запись появится на DNS-сервере, через некоторое время (максимум – несколько часов) об этом узнает весь мир.
Каждая, как прямая так и обратная зона должна храниться как минимум на двух различных DNS-серверах. При этом, главный (как правило, расположенный у владельца) DNS-сервер, называется MASTER DNS-сервером, второй или последующие называются SLAVE DNS-серверами.
Зоны, хранящиеся на MASTER-сервере, владелец домена может (и должен) заполнять и корректировать.
На SLAVE-серверах хранятся копии зон с MASTER-серверов, причем обновлениями зон MASTER и SLAVE-сервера обмениваются автоматически.
Все DNC-серверы, включенные в сеть Интернет, могут обмениваться между собой информацией о хранимых ими зонах и о других серверах, хранящих другие зоны.
Любому пользователю, подключенному к сети Интернет, его провайдер предоставляет доступ к своему DNS-серверу, IP-адрес этого сервера прописывается на оборудовании клиента и клиентские программы для работы в сети могут обращаться к этому серверу с запросами – какое доменное имя соответствует какому IP-адресу.
Если пользователь является владельцем зарегистрированного доменного имени он может установить у себя свой собственный DNS-сервер и пользоваться им, а не сервером провайдера.
Принцип работы любого DNS-сервера достаточно прост.
Любой Клиент или Сервер, которому необходимо определить соответствие доменное имя - IP-адрес или IP-адрес - доменное имя, обращается к DNS-серверу с запросом. И если DNS-сервер "знает" это соответствие из своих хранимых зон, то сообщает его сразу. А вот если DNS-сервер ничего не знает о запрошенном доменном имени или IP-адресе, он обращается к другим DNS-серверам «за помощью». Получив ответы на свои запросы от других DNS-серверов, сервер сообщает найденную информацию Клиенту.
Например. Вам необходимо узнать - какой IP-адрес соответствует доменному имени VASYA.PUPKIN.COM. Ваш DNS-сервер ни о зоне .COM ни о зоне PUPKIN.COM ничего в данный момент не знает. Но сервер знает несколько «главных» в сети DNS-серверов, на которых хранится информация о серверах доменов первого уровня. По запросу вашего сервера, «Главный» сервер сообщает ему, IP-адрес того DNS-сервера, на котором хранится информация о доменах второго уровня в зоне .COM. Затем ваш сервер обращается к указанному серверу и спрашивает у него – «где хранится зона PUPKIN.COM». Этот сервер ему сообщает адрес очередного DNS-сервера. Далее ваш сервер спрашивает у последнего – «какой адрес для доменного имени VASYA.PUPKIN.COM» и получает точный ответ – доменное имя VASYA.PUPKIN.COM соответствует такому-то IP-адресу.