DNS определяет:
- иерархически организованное пространство имен компьютеров;
- таблицу имен компьютеров, реализованную в виде распределенной базы данных;
- "распознаватель" — клиентскую библиотеку функций, осуществляющих запросы к базе данных DNS;
- усовершенствованные средства маршрутизации электронной почты;
- механизм поиска сервисов в сети;
- протокол обмена информацией об именах.
Узлу, подключенному к Internet, система доменных имен нужна для полноценного участия в работе сети. Вести локальный файл /etc/hosts с данными о каждом компьютере, с которым когда-нибудь понадобится установить контакт, невозможно в принципе.
В каждой организации хранится один или несколько фрагментов распределенной базы данных, составляющей всемирную систему DNS. В состав фрагмента входят два или более текстовых файла, содержащих записи об имеющихся в организации компьютерах. Запись — это отдельная строка, состоящая из имени компьютера, обозначения типа записи и нескольких информационных полей.
Например, строки
forklift IN А 192.108.21.7
IN MX 10 chimchim.xor.com
в файле зоны прямого преобразования и строка
7 IN PTR forklift.xor.com
в файле зоны обратного преобразования устанавливают соответствие между узлом forklift.xor.com и IP-адресом 192.108.21.7.
DNS — это клиент-серверная система. Серверы (называемые серверами имен) загружают данные из клиентских DNS-файлов в память и пользуются ими при ответах на запросы как от внутренних клиентов, так и от внешних компьютеров. Все сетевые компьютеры должны быть клиентами DNS, но лишь некоторым из них требуется быть серверами имен.
В небольшой организации (несколько компьютеров в одной сети) можно запустить сервер на одной из машин или попросить Internet-провайдера обеспечить сервис DNS. Средних размеров организация с несколькими подсетями должна иметь серверы DNS в каждой подсети, чтобы снизить общую нагрузку на сеть. Очень большая организация может разделить свой домен на поддомены и запустить для каждого из них несколько серверов.