Настройка сервера, предназначенного только для кэширования

Настройка сервера, предназначенного только для кэширования

В небольших сетях часто используются серверы DNS, основная задача которых — кэширование результатов преобразования имен. Сервер такого типа не поддерживает конкретный домен (за исключением домена для обратного преобразования localhost). Вместо этого сервер перенаправляет запросы внешним серверам DNS и записывает полученные от них сведения в кэш. Такая конфигурация сервера может ускорить работу клиент-программ, в частности, Web-броузеров, если сеть связана с Internet посредством линий с низкой пропускной способностью или большой задержкой. Так, например, линия спутниковой связи характеризуется задержкой порядка половины секунды при двусторонней передаче данных. Задержка при использовании коммутируемых линий составляет около 200 миллисекунд, что лучше, чем для линий спутниковой связи, но все же существенно замедляет преобразование имен.

Следует заметить, что время преобразования снижается только в том случае, когда необходимые данные уже содержатся в кэше сервера. Поэтому рассматриваемую здесь конфигурацию имеет смысл использовать только в сетях с относительно большим количеством пользователей, которые часто обращаются к одним и тем же узлам глобальной сети.

Основной конфигурационный файл сервера, предназначенного лишь для кэширования, имеет тот же формат, что и файл, представленный в листинге 18.1, однако в нем присутствует лишь определение зоны, предназначенной для обратного преобразования localhost (0.0.127.in-addr.arpa), и корневой зоны (.). Даже эти зоны не являются обязательными.

Наиболее важными компонентами конфигурационного файла сервера DNS, предназначенного только для кэширования, являются опции forwarders и forward, расположенные в разделе options. Опция forwarders должна содержать список серверов DNS провайдера. BIND использует эти серверы для выполнения преобразования. Вместо выражения forward first, приведенного в листинге 18.1, необходимо указать forward only. В этом случае сервер прекратит попытки преобразования, если серверы, указанные в качестве значения forwarders, окажутся не доступными.

Внимание

Если вы включите в состав конфигурационного файла корневую зону и зададите опцию forward first, то в случае, когда серверы, предназначенные для перенаправления запроса, станут не доступны, BIND предпримет попытку выполнения стандартной процедуры преобразования адресов. Само по себе это неплохо, но при этом процедура выявления ошибки и генерации соответствующего сообщения окажется длительной. В особенности этот будет заметно в том случае, если соединение с Internet осуществляется посредством линии с большой задержкой.

Ранее в данной главе упоминались серверы, предназначенные лишь для кэширования результатов преобразований. Эти серверы занимают меньше памяти, чем BIND, тем не менее, они используются достаточно редко. Причина в том, что BIND поставляется в составе многих дистрибутивных пакетов и гораздо проще в настройке по сравнению с другими серверами. Если вы захотите сэкономить ресурсы, вы можете вместо BIND использовать dnscache или pdnsd.

Сконфигурировав и запустив сервер имен (либо полнофункциональный, либо предназначенный только для кэширования), вам необходимо указать его IP-адрес для всех компьютеров, которые должны работать с ним. Если вы забудете сделать это, узлы вашей сети по-прежнему будут обращаться к внешним серверам DNS.