DNS-сервер
DNS-сервер, Domain name server — приложение, предназначенное для ответов на DNS-запросы по соответствующему протоколу. Также DNS-сервером могут называть хост, на котором запущено соответствующее приложение.
Типы DNS-серверов
[править | править код]По выполняемым функциям DNS-серверы делятся на несколько групп; сервер определённой конфигурации может относиться сразу к нескольким типам:
- Авторитетный DNS-сервер — сервер, отвечающий за какую-либо зону.
- Мастер, или первичный сервер (в терминологии BIND), — имеет право на внесение изменений в данные зоны. Обычно зоне соответствует только один мастер-сервер. В случае Microsoft DNS-сервера и его интеграции с Active Directory мастер-серверов может быть несколько (так как репликация изменений осуществляется не средствами DNS-сервера, а средствами Active Directory, за счёт чего обеспечивается равноправность серверов и актуальность данных).
- Слейв (англ. slave), или вторичный сервер, не имеющий права на внесение изменений в данные зоны и получающий сообщения об изменениях от мастер-сервера. В отличие от мастер-сервера, их может быть (практически) неограниченное количество. Слейв также является авторитативным сервером (и пользователь не может различить мастер и слейв, разница появляется только на этапе конфигурирования/внесения изменений в настройки зоны).
- Кэширующий DNS-сервер — обслуживает запросы клиентов (получает рекурсивный запрос, выполняет его с помощью нерекурсивных запросов к авторитативным серверам или передаёт рекурсивный запрос вышестоящему DNS-серверу).
- Перенаправляющий DNS-сервер (англ. forwarder, внутренний DNS-сервер) — перенаправляет полученные рекурсивные запросы вышестоящему кэширующему серверу в виде рекурсивных запросов. Используется преимущественно для снижения нагрузки на кэширующий DNS-сервер.
- Корневой DNS-сервер — сервер, являющийся авторитативным за корневую зону. Общеупотребительных корневых серверов в мире всего 13, их доменные имена находятся в зоне root-servers.net и называются a.root-servers.net, b.root-servers.net, …, m.root-servers.net. В определённых конфигурациях локальной сети возможна ситуация настройки локальных корневых серверов.
- Регистрирующий DNS-сервер. Сервер, принимающий динамические обновления от пользователей. Часто совмещается с DHCP-сервером. В Microsoft DNS-сервере при работе на контроллере домена сервер работает в режиме регистрирующего DNS-сервера, принимая от компьютеров домена информацию о соответствии имени и IP-адреса компьютера и обновляя в соответствии с ней данные зоны домена.
- DNSBL-сервер (сервер с чёрными списками адресов и имён). Формально не входит в иерархию DNS, однако использует те же механизм и протокол работы, что и DNS-серверы.
Виды DNS-запросов
[править | править код]Прямой запрос
[править | править код]Прямой (forward) запрос — запрос на преобразование имени (символьного адреса) хоста в его IP-адрес.
Обратный запрос
[править | править код]Обратный (reverse) запрос — запрос на преобразование IP-адреса хоста в его имя.
Рекурсивный запрос
[править | править код]Рекурсивный запрос предполагает получение окончательного ответа от сервера, к которому он направлен. Рекурсию выполняет сервер.
Итеративный запрос
[править | править код]Итеративный запрос предполагает (допускает) выполнение рекурсии клиентом.
Описание
[править | править код]Некоторые серверы поддерживают возможность работать в разных режимах для разных сегментов сети. В Bind этот режим называется view. Например, сервер может для локальных адресов (например, 10.0.0.0/8) отдавать локальные адреса серверов, для пользователей внешней сети — внешние адреса. Так же сервер может быть авторитативным для заданной зоны только для указанного диапазона адресов (например, в сети 10.0.0.0/8 сервер объявляет себя авторитативным за зону internal, при этом для внешних адресов в ответ на запрос имени из зоны internal будет отдаваться ответ «неизвестен»).
Используемые порты
[править | править код]По стандарту RFC 1035 все DNS-серверы отвечают на порту 53 TCP и UDP. Ранние версии BIND использовали 53 порт так же и при отправке исходящих запросов, более новые ведут себя как обычные DNS-клиенты, используя свободные незарегистрированные порты.
Для улучшения этой статьи желательно:
|