Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Система доменных имен
Domain name system
Microsoft DNS — это реализация служб системы доменных имен, предоставляемая в операционных системах Microsoft Windows.
Microsoft DNS is the name given to the implementation of domain name system services provided in Microsoft Windows operating systems.
Обзор
Поддержка системы доменных имен в Microsoft Windows NT, а также в ее производных Windows 2000, Windows XP и Windows Server 2003, состоит из двух клиентов и сервера. Каждая машина под управлением Microsoft Windows имеет клиент для выполнения DNS-запросов, чтобы осуществлять обычные поиски DNS. Некоторые машины оснащены клиентом Dynamic DNS для выполнения транзакций Dynamic DNS Update, регистрируя имена машин и IP-адреса. Некоторые машины работают с DNS-сервером для публикации DNS-данных, обработки DNS-запросов от клиентов DNS и обработки запросов на обновление DNS от клиентов Dynamic DNS. Серверное программное обеспечение поставляется только с серверными версиями Windows.
The Domain Name System support in Microsoft Windows NT, and thus its derivatives Windows 2000, Windows XP, and Windows Server 2003, comprises two clients and a server. Every Microsoft Windows machine has a DNS lookup client, to perform ordinary DNS lookups. Some machines have a Dynamic DNS client, to perform Dynamic DNS Update transactions, registering the machines' names and IP addresses. Some machines run a DNS server, to publish DNS data, to service DNS lookup requests from DNS lookup clients, and to service DNS update requests from DNS update clients. The server software is only supplied with the server versions of Windows.
Клиент поиска DNS
Приложения выполняют поиск DNS с помощью DLL. Они вызывают библиотечные функции в DLL, которые, в свою очередь, обрабатывают все коммуникации с DNS-серверами (через UDP или TCP) и возвращают конечные результаты поиска обратно в приложения. DNS-клиент Microsoft также имеет необязательную поддержку локального кэширования в виде службы DNS Client (также известной как DNSCACHE). Прежде чем пытаться напрямую связаться с DNS-серверами, библиотечные процедуры сначала пытаются установить локальное IPC-соединение со службой DNS Client на компьютере. Если такая служба существует и соединение установлено, они передают фактическую обработку запроса службе DNS Client. Сама служба DNS Client связывается с DNS-серверами и кэширует полученные результаты. DNS-клиент Microsoft способен взаимодействовать с несколькими DNS-серверами. Точный алгоритм различается в зависимости от версии и уровня установленных обновлений операционной системы, но в целом вся коммуникация осуществляется с предпочтительным DNS-сервером, пока он не перестанет отвечать, после чего коммуникация переключается на один из нескольких альтернативных DNS-серверов.
Applications perform DNS lookups with the aid of a DLL. They call library functions in the DLL, which in turn handle all communications with DNS servers (over UDP or TCP) and return the final results of the lookup back to the applications. Microsoft's DNS client also has optional support for local caching, in the form of a DNS Client service (also known as DNSCACHE). Before they attempt to directly communicate with DNS servers, the library routines first attempt to make a local IPC connection to the DNS Client service on the machine. If there is one, and if such a connection can be made, they hand the actual work of dealing with the lookup over to the DNS Client service. The DNS Client service itself communicates with DNS servers, and caches the results that it receives. Microsoft's DNS client is capable of talking to multiple DNS servers. The exact algorithm varies according to the version, and service pack level, of the operating system; but in general all communication is with a preferred DNS server until it fails to answer, whereupon communication switches to one of several alternative DNS servers.
Отличия от других систем
Дистрибутивы Linux и различные версии Unix используют обобщенный уровень разрешения имен. Разрешитель можно настроить для использования файла hosts или Network Information Service (NIS) посредством конфигурации переключателя служб имен.
Linux distributions and various versions of Unix have a generalized name resolver layer. The resolver can be controlled to use a hosts file or Network Information Service (NIS), by configuring the Name Service Switch.
Динамический клиент обновления DNS
В то время как DNS-запросы считывают данные DNS, обновления DNS записывают их. Как рабочие станции, так и серверы под управлением Windows пытаются отправлять динамические запросы на обновление DNS на DNS-серверы. Рабочие станции под управлением Windows пытаются зарегистрировать свои имена и IP-адреса на DNS-серверах, чтобы другие компьютеры могли находить их по имени. До Windows Vista (и Windows Server 2008) эта регистрация выполнялась службой клиента DHCP. Таким образом, необходимо запускать службу клиента DHCP на машинах, выпущенных до Vista, даже если DHCP не используется для настройки машины, чтобы динамически регистрировать имя и адрес машины для поиска DNS. Служба клиента DHCP регистрирует данные об имени и адресе каждый раз, когда они изменяются (вручную администратором или автоматически при выдаче или отзыве DHCP-лицензии). В Windows Vista (и Windows Server 2008) Microsoft перенесла функциональность регистрации из службы клиента DHCP в службу клиента DNS. Серверы под управлением Microsoft Windows также пытаются зарегистрировать дополнительную информацию, помимо своих имен и IP-адресов, такую как расположение служб LDAP и Kerberos, которые они предоставляют.
Whilst DNS lookups read DNS data, DNS updates write them. Both workstations and servers running Windows attempt to send Dynamic DNS update requests to DNS servers. Workstations running Windows attempt to register their names and their IP addresses with DNS servers, so that other machines may locate them by name. Prior to Windows Vista (and Windows Server 2008), this registration is performed by the DHCP Client service. It is thus necessary to run the DHCP Client service on pre Vista machines, even if DHCP isn't being used to configure the machine in order to dynamically register a machine's name and address for DNS lookup. The DHCP Client service registers name and address data whenever they are changed (either manually by an administrator or automatically by the granting or revocation of a DHCP lease). In Windows Vista (and Windows Server 2008) Microsoft moved the registration functionality from the DHCP Client service to the DNS Client service. Servers running Microsoft Windows also attempt to register other information, in addition to their names and IP addresses, such as the locations of the LDAP and Kerberos services that they provide.
DNS-сервер
Операционные системы Microsoft Windows Server могут запускать службу DNS Server. Это монолитный DNS-сервер, предоставляющий множество типов DNS-услуг, включая кэширование, динамическое обновление DNS, передачу зон и уведомления DNS. Уведомления DNS реализуют механизм "push" для оповещения выбранного набора вторичных серверов зоны при ее обновлении. Служба "DNS Server" от Microsoft была впервые представлена в Windows NT 3.51 как дополнение к набору сервисов Microsoft BackOffice, но в то время предназначалась только для тестирования. Она получила известность из-за несовместимости с файлами конфигурации BIND, в частности, из-за отсутствия поддержки подстановочных знаков DNS и отличий в реализации IPv6. С момента внедрения Microsoft предприняла усилия по улучшению совместимости с BIND и другими реализациями в отношении формата файлов зон, передачи зон и других деталей протокола DNS. По состоянию на 2004 год это был четвертый по популярности DNS-сервер (при раздельном учете BIND версии 9, 8 и 4) для публикации данных DNS. Как и другие DNS-серверы, DNS-сервер Microsoft поддерживает различные типы хранилищ данных. DNS-сервер Microsoft поддерживает два таких хранилища. Данные DNS могут храниться либо в мастер-файлах (также известных как файлы зон), либо непосредственно в базе данных Active Directory. В последнем случае, поскольку Active Directory (а не DNS-сервер) управляет фактической репликацией базы данных между несколькими машинами, базу данных можно изменять на любом сервере ("репликация с несколькими мастерами"), и добавление или удаление зоны будет немедленно распространено на все остальные DNS-серверы в соответствующей "области репликации" Active Directory. (В отличие от BIND, где при внесении таких изменений список зон в файле необходимо явно обновлять на каждом отдельном сервере.) Управлять DNS-сервером Microsoft можно с помощью графического пользовательского интерфейса "Консоль управления DNS" или интерфейса командной строки, утилиты dnscmd. В Windows Server 2012 представлен полнофункциональный провайдер PowerShell для управления DNS-сервером.
Microsoft Windows Server operating systems can run the DNS Server service. This is a monolithic DNS server that provides many types of DNS service, including caching, Dynamic DNS update, zone transfer, and DNS notification. DNS notification implements a push mechanism for notifying a select set of secondary servers for a zone when it is updated. Microsoft's "DNS Server" service was first introduced in Windows NT 3.51 as an add on with Microsoft's collection of BackOffice services, but at the time was marked to be used for testing purposes only. It became notorious for incompatibility with BIND configuration files, in particular by lacking support for DNS wildcards and differing in its IPv6 implementation. Since the introduction, Microsoft has taken care to improve interoperability with BIND and other implementations in terms of zone file format, zone transfer, and other DNS protocol details. As of 2004, it was the fourth most popular DNS server (counting BIND version 9 separately from versions 8 and 4) for the publication of DNS data. Like various other DNS servers, Microsoft's DNS server supports different database back ends. Microsoft's DNS server supports two such back ends. DNS data can be stored either in master files (also known as zone files) or in the Active Directory database itself. In the latter case, since Active Directory (rather than the DNS server) handles the actual replication of the database across multiple machines, the database can be modified on any server ("multiple master replication"), and the addition or removal of a zone will be immediately propagated to all other DNS servers within the appropriate Active Directory "replication scope". (Contrast this with BIND, where when such changes are made, the list of zones, in the file, has to be explicitly updated on each individual server.) Microsoft's DNS server can be administered using either a graphical user interface, the "DNS Management Console", or a command line interface, the dnscmd utility. New to Windows Server 2012 is a fully featured PowerShell provider for DNS server management.
Общие вопросы
До Windows Server 2003 и Microsoft Windows 2000 Service Pack 3 наиболее частой проблемой, с которой сталкивались пользователи DNS-сервера Microsoft, было загрязнение кэша. Хотя DNS-сервер Microsoft и имел механизм для корректной обработки загрязнения кэша, он был отключен по умолчанию. В 2004 году распространенной проблемой стала поддержка EDNS0 в Windows Server 2003, с которой не справлялось большое количество межсетевых экранов.
Prior to Windows Server 2003 and Microsoft Windows 2000 Service Pack 3, the most common problem encountered with Microsoft's DNS server was cache pollution. Although Microsoft's DNS Server had a mechanism for properly dealing with cache pollution, the mechanism was turned off by default. In 2004, a common problem involved the feature of the Windows Server 2003 version of Microsoft's DNS server to use EDNS0, which a large number of firewalls could not cope with.