То есть без символьного именования сайтов никакого интернет-бума быть не могло – ни первого, ни второго. Скорее всего, после очередного «схлопывания инвестиционного пузыря» (а оно неминуемо наступит) в выигрыше опять останутся держатели доменного пространства как единственной технологии, позволяющей через языковые конструкции мертвым узлом привязать виртуальный мир к реальному.
Глава 2
Обнаружение адреса
DNS преобразует строки символов в IP-адреса. Часто неспециалистам, оперирующим «банальной эрудицией», этот процесс кажется тривиальным. Действительно, возьмите простую таблицу соответствий «домен – адрес» и работайте по ней – так они предлагают. Первые системы прото-DNS были устроены подобным образом. Но в масштабах глобальной сети это простое решение вполне предсказуемо оказывается неверным.
Например, соответствие IP-адресов и имен доменов изменяется. Для этого есть целый ряд причин: скажем, домен может сменить владельца, и новый администратор захочет настроить соответствие имен и адресов таким образом, чтобы домен указывал на его сетевой узел, а не на узел прежнего владельца домена. В маленькой локальной сети из десяти машин, содержащей два собственных домена, наверное, нет никаких проблем с тем, чтобы разослать измененную «таблицу соответствия» всем компьютерам. Но когда речь идет о сотнях миллионов доменов, помноженных на сотни миллионов компьютеров, разбросанных по всему земному шару, идея с рассылкой общей таблицы имен доменов оказывается, мягко говоря, абсурдной. А ведь нужно учитывать постоянный бурный рост Интернета. Так что реально работающая система DNS устроена не так просто.
Можно сказать, что IP-адресация формирует из множества узлов Интернета одноуровневую структуру. Узлы в ней соединяют разным образом проложенные линии связи.
По-научному только что упомянутая «плоская структура» Интернета со связями между узлами называется графом. Сами методы успешной и эффективной передачи данных между узлами глобальной Сети помогает разработать в том числе и такая математическая дисциплина, как теория графов. Графы как математическое понятие придумали задолго до появления Интернета – они служили удобным инструментом для исследования сетей электроснабжения.
DNS представляет собой иерархическую древовидную структуру, разбивающую одноуровневое множество узлов (или серверов) Интернета на отдельные районы – кластеры. Каждый такой кластер может состоять из многих тысяч серверов или включать в себя только один сервер. Кластеры способны пересекаться, то есть один и тот же узел-сервер может входить в несколько кластеров.
Как несложно догадаться, с каждым доменом связан единственный узел древовидной структуры DNS. В свою очередь, те серверы Интернета, которые попали в соответствующий узлу кластер, оказываются внутри данного домена. То есть в древовидной структуре DNS каждому узлу дерева соответствует один кластер узлов Интернета – это так называемая зона DNS. Можно сказать, что дерево DNS как бы добавляет адресной системе Интернета еще одно измерение. Ведь в иерархии доменных имен кластеры вкладываются друг в друга, образуя несколько уровней.
Деление дерева DNS по уровням (первый, второй, третий и т. д.) – важнейшая особенность всех отношений, возникающих вокруг доменов. Система доменных имен, как и всякое дерево, начинается с единственного корневого домена (это нулевой уровень). Правда, современная реализация работы с DNS на компьютерах пользователей позволяет не указывать корневой домен в адресной строке.
Благодаря этому про существование корневого домена сейчас помнят только специалисты. Адреса сайтов с использованием DNS записываются в виде последовательности, отражающей данную иерархию имен. Чем выше уровень домена, тем правее он записывается в строке адреса. Разделяются домены точками. Разберем, например, строку www.info.nic.ru. Здесь домен www – это домен четвертого уровня, а другие упомянутые в адресной строке домены расположены в домене первого уровня RU. Например, info.nic.ru – это домен третьего уровня. Очень важно понимать, что привычный адрес сайта, скажем, www.test.ru, обозначает домен третьего уровня (www), расположенный внутри домена второго уровня test.ru.
Адресная строка с указанием корневого домена выглядит, например, так: site.test.ru. – здесь корневой домен (он не обозначен никакими буквами) отделен последней, крайней справа точкой.