Главная » 2013 » Декабрь » 12 » 10.2. Кэширующий сервер DNS
01:56
10.2. Кэширующий сервер DNS

Кэширующий сервер, как правило, не обслуживает домен, а используется для повышения скорости работы соединения. Для настройки кэширующего сервера используется параметр forwarders, задаваемый в файле named. conf (в блоке options). Рассмотрим пример: допустим, ваш сервер для разрешения какого‑нибудь имени пытается добраться до одного из корневых серверов. А если у вас коммутируемое соединение да и модем на 14400? Сейчас выглядит смешно, но иногда бывают и такие ситуации, например, в моей системе спокойно уживаются два модема – один 56К V.90, а второй именно на 14К. В любом случае, если у вас нет собственного домена, а сервер DNS запущен на вашей машине, которую вы используете в гордом одиночестве, то с помощью вышеупомянутой директивы можно существенно повысить скорость соединения. Способ очень прост: можно заставить провайдера проделать за вас всю «грязную» работу. В обычной ситуации в процессе разрешения какого‑нибудь имени ваш сервер будет последовательно запрашивать несколько удаленных корневых DNS‑серве‑ров, с каждым из которых надо установить соединение, отправить запрос и получить ответ. Создание у себя кэширующего DNS‑сервера позволит возложить всю эту работу на DNS‑сервер провайдера. При этом ваш DNS‑сервер будет отсылать в сеть только. один запрос на разрешение имени (DNS‑серверу провайдера) и получать только один окончательный ответ. Это особенно полезно, если у вас плохое соединение с Интернет.

Для того, чтобы насладиться такой возможностью, следует в файл named. conf добавить следующие параметры (в блоке options):

Здесь я рассматриваю конкретный пример, вы же у себя замените адреса 192.168.99.1 и 192.168.99.2 на адреса DNS‑серверов вашего провайдера. Параметр forwarders задает заключенный в фигурные скобки список IP‑адресов, соответствующих DNS‑серверам, которым ваш DNS‑сервер будет переадресовывать запросы вместо того, чтобы отвечать на них самому. IP‑адреса перечисляются через точку с запятой.

Параметр forward может принимать одно из двух следующих значений:

Only – ваш DNS‑сервер никогда не должен предпринимать попыток обработать запрос самостоятельно;

First – ваш DNS‑сервер должен пытаться сам обработать запрос, если указанные далее параметром forwarders сервера DNS не были найдены. Использование параметра forward бессмысленно без использования параметра forwarders.

Таким образом, вернемся к настройке сервера, весь файл named. conf примет следующий вид, приведенный в листинге 10.6:

Листинг 10.6. Файл named. conf кэширующего сервера DNS

Обратите внимание, что в примере уже не поддерживается зона Dhsilabs. com.

Как правило, кэширующий сервер используется на отдельной машине, которая подключается к Интернет по коммутируемому соединению. Нужно учитывать, что сервер DNS сразу требует обращения к какому‑нибудь сетевому ресурсу. В нашем же случае, если соединение не установлено, то устройство ррр0 существовать не будет, a named будет страшно ругаться на то, что сеть недоступна. При этом недоступным окажется даже интерфейс lо, а программа nslookup, если она нам понадобится без существования сети, просто «подвиснет», ожидая ответа от сервера DNS.

Есть два способа решить данную проблему. Какой использовать – это решать вам. Первый заключается в том, что при установлении соединения сценарий ррр‑on, который обсуждался в гл. 7, будет запускать программу ndc с параметром start (см. ниже), а сценарий ppp‑off будет останавливать сервер DNS командой ndc stop.

Второй способ основывается тоже на использовании сценариев ррр‑on и ppp‑off, но в этом случае сервер dns всегда будет запущен. Принцип работы заключается в подмене файла корневого кэша named. ca. Сервер dns содержит пустой файл корневого кэша, и при установке соединения сценарий ррр‑on скопирует вместо пустого файла нормальный файл кэша. Сценарий ppp‑off при разрыве соединения перезапишет нормальный файл named. ca пустым файлом с таким же именем. При использований этого способа в ваших протоколах (журналах) будут регулярно появляться сообщения примерно такого содержания:

Для полноты картины хочу отметить, что если вы используете NFS, и у вас возникают проблемы с монтированием удаленных файловых систем, запускайте сервер named после запуска nfsd и mountd.

Категория: Служба имен – DNS | Просмотров: 392 | Добавил: spb_serge | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *: