Несмотря на то, что 32-разрядные IP-адреса позволяют однозначно идентифицировать все хосты в сети Internet, пользователям гораздо удобнее работать с осмысленными, легко запоминающимися именами хостов. В Протоколе управления передачей/Протоколе Internet (TCP/IP) предусмотрена система имен, поддерживающая как одноуровневую, так и иерархическую структуру сети.
В данном разделе обсуждаются следующие вопросы:
Система присовения имен в однородной сети проста. Имена хостов состоят из простого набора символов, а удаленное управление хостами в этом случае, как правило, не используются. В однородных сетях TCP/IP в каждой системе сети есть файл (/etc/hosts), содержащий таблицу преобразования имен всех имеющихся хостов в IP-адреса. При расширении сети TCP/IP административные затраты по поддержанию в каждой системе файла с таблицей преобразования имен существенно возрастают. Если сеть TCP/IP становится очень большой (например, Internet), то необходимо переходить к иерархической структуре присвоения имен. Обычно иерархия имен соответствует структуре сети. В TCP/IP иерархическая система присвоение имен называется системой имен доменов (DNS) и использует протокол DOMAIN. Протокол DOMAIN реализован в TCP/IP демоном named.
Как и в случае с одноуровневыми сетями, иерархия имен доменов позволяет присваивать сетям и хостам осмысленные и легко запоминающиеся символьные имена. Однако, вместо того, чтобы хранить файл с таблицей преобразования имен в IP-адреса на каждом хосте, выбирается один или несколько хостов, которые применяются в качестве серверов имен. Серверы имен преобразуют символьные имена сетей и хостов в IP-адреса. На сервере имен хранится полная информация об определенной части домена, называемой областью. Кроме того, сервер несет ответственность за свою область.
В одноуровневой сети администрирование всех входящих в нее хостов осуществляется централизованно. Такая структура сети требует присвоения всем хостам сети уникальных имен. Если сеть большая, то это требование создает большие трудности для администратора сети.
В доменной сети администрирование выполняется отдельно для каждой группы хостов в соответствии с иерархией доменов и субдоменов. В этом случае имена хостов должны быть уникальными только в пределах локального домена, а централизованное администрирование осуществляется только для корневого домена. Такая структура допускает локальное администрирование субдоменов и сокращает нагрузку на организацию, осуществляющую централизованное управление. Например, корневой домен сети Internet состоит из доменов, com (коммерческие организации), edu (образовательные учреждения), gov (правительственные организации) и mil (военные учреждения). Новые домены верхнего уровня могут добавляться только централизованно. Присваивать имена на втором уровне разрешено уполномоченным представителям внутри соответствующих доменов. Например, уполномоченная организация на уровне домена com может присваивать имена всем входящим в него субдоменам коммерческих организаций. Аналогично, присвоение имен на третьем и последующих уровнях разрешено соответствующим организациям. Например, на рисунке "Структура домена Internet" домен Century уполномочен распределять имена в субдоменах Austin, Hopkins и Charlotte.
Рис. 3-21. Структура имен доменов в Internet. На рисунке показана иерархическая структура сети Internet. Он начинается с корневого узла и разделяется на следующем уровне на домены mil, com и edu. На следующем уровне ветви com находятся домены Charlotte, Austin и Hopkins. В домене Austin находятся домены Dev и Graphics.
Субдомен Austin домена Century может быть, в свою очередь, разделен на две области, например, Dev и Graphics. В этом случае область austin.century.com должна включать все данные, относящиеся к домену austin.century.com, за исключением тех, которые относятся к областям Dev и Graphics. Область dev.century.com должна содержать только данные, относящиеся к Dev; она никак не связана, например, с областью Graphics. Область austin.century.com (в отличие от домена с тем же именем) должна содержать только те данные, которые не относятся к другим областям.
В иерархической системе имен доменов каждое имя представляет собой последовательность имен (без учета регистра символов), разделенных точками без промежуточных пробелов. В протоколе DOMAIN длина имени локального домена ограничена 64 символами, а длина имени хоста - 32 символами. Имя хоста указывается первым, после него ставится точка (.), затем идет последовательность имен локальных доменов, разделенных точками, и в конце указывается имя корневого домена. Полное имя хоста, включая точки, должно содержать не более 255 символов и иметь следующий вид:
хост.субдомен1.[субдомен2 . . . субдомен].корневой_домен
Так как в пределах домена хосты имеют уникальные имена, то при отправке сообщений на хост, находящийся внутри того же домена, можно использовать сокращенное имя. Например, при отправке сообщения с хоста, находящегося в домене eng, вместо имени smith.eng.lsu.edu можно указать имя smith. Кроме того, у каждого хоста может быть несколько псевдонимов, и другие хосты могут использовать их при отправке сообщений.
Основная цель присвоения имен хостам - это обеспечение возможности быстро, легко и безошибочно обращаться к компьютерам в вашей сети. Системные администраторы Internet обнаружили, что есть как хорошие, так и плохие способы выбора имен хостов. Эти рекомендации помогут вам избежать ловушек при выборе имен хостов.
Вот несколько рекомендаций по выбору простых и легких для запоминания имен:
Ниже приведено несколько примеров неудачного выбора. В общем случае они или трудны для запоминания, или сбивают с толку (и человека, и компьютер):
В одноуровневой сети без сервера имен имена всех хостов хранятся в файле /etc/hosts каждого хоста сети. В больших сетях хранение и обновление таких файлов требует слишком большого объема ресурсов.
В иерархической сети задача преобразования имен всех хостов в IP-адреса возложена на определенные хосты, называемые серверами имен. Такая структура имеет ряд преимуществ. Для преобразования имен не используются ресурсы каждого хоста, а администратор системы освобождается от обязанности создавать и обновлять в каждой системе сети файлы с таблицами преобразования имен. Набор имен, которым управляет какой-либо сервер, называется его областью ответственности.
Примечание: Хост, выполняющий преобразование имен в области ответственности, обычно называют сервером имен, но на самом деле преобразование осуществляется процессом сервера с именем named.
Для снижения нагрузки на сеть все серверы имен в течение определенного времени хранят адреса, полученные с других серверов, в кэше. Когда клиент обращается к серверу с запросом на преобразование имени, сервер сначала просматривает свою кэш-память и определяет, не преобразовывал ли он уже это имя. Так как имена доменов и хостов могут изменяться, то каждый элемент остается в кэш-памяти в течение ограниченного времени, которое определяется параметром времени хранения в кэше (TTL). Таким образом, в пределах области ответственности можно задать период времени, на протяжении которого выполняется точное преобразование имен.
В автономных системах может применяться несколько серверов имен. Обычно серверы имен имеют иерархию, соответствующую структуре сети. На рисунке "Структура доменов Internet" в каждом домене может быть сервер имен, ответственный за все его субдомены. Сервер имен каждого субдомена связан с сервером имен домена более высокого уровня (с родительским сервером имен), а также с серверами имен других субдоменов.
Рис. 3-22. Структура имен доменов в Internet. На рисунке показана иерархическая структура сети Internet. Он начинается с корневого узла и разделяется на следующем уровне на домены mil, com и edu. На следующем уровне ветви com находятся домены Charlotte, Austin и Hopkins. В домене Austin находятся домены Dev и Graphics.
Например, на рисунке "Структура доменов Internet" субдомены Austin, Hopkins и Charlotte входят в состав домена Century. Если следовать иерархии организации сети, то сервер имен Austin должен взаимодействовать с серверами имен Charlotte и Hopkins, а также с родительским сервером имен Century. Кроме того, сервер имен Austin будет взаимодействовать с серверами имен других субдоменов.
Существует несколько типов серверов имен:
Главный сервер имен | Загружает свои данные из файла или с диска и может передавать полномочия другим серверам в своем домене. |
Подчиненный сервер имен | Во время загрузки системы получает с главного сервера информацию о выделенной ему области ответственности, а затем периодически обращается к главному серверу для обновления этой информации. По истечении периода обновления, указанного в записи ресурса начала области ответственности (SOA) на подчиненном сервере имен, а также при получении уведомляющего сообщения от главного сервера, подчиненный сервер заново загружает базу данных с главного сервера, если порядковый номер базы данных на главном сервере больше, чем ее порядковый номер на подчиненном сервере. Если необходимо принудительно передать с главного сервера новую информацию об области ответственности, достаточно просто удалить существующие базы данных с подчиненного сервера и обновить на нем программу-демон named. |
Сервер имен Stub | Способ копирования базы данных этим сервером аналогичен применяемому подчиненным сервером имен, однако этот сервер копирует только отдельные записи сервера базы данных главного сервера, а не всю базу данных. |
Сервер подсказок | Это сервер имен, который отвечает на запросы только на основании данных, полученных им в результате предыдущих обращений к другим сервером имен. Если в кэш-памяти сервера нет записей преобразования имен в адреса, то для ответа на запросы он обращается к другим серверам. |
Клиент или сервер пересылки | Этот сервер пересылает перечисленным серверам те запросы, которые он не может обработать самостоятельно. Серверы, предназначенные только для пересылки, только получают информацию и передают ее другим. Они не взаимодействуют с главными серверами имен корневого и других доменов. Для обращения к серверам пересылки используются рекурсивные запросы. Может быть определено несколько серверов пересылки, обращение к которым происходит по очереди, до тех пор, пока не исчерпается список. Серверы пересылки обычно применяются в том случае, когда вы не хотите, чтобы все серверы данной сети взаимодействовали с остальными серверами Internet, или когда необходимо создать на серверах имен кэш-память большого объема. |
Удаленный сервер | Выполняет все сетевые программы, использующие сервер имен; при этом процесс сервера имен на локальном хосте не запускается. Все запросы обслуживаются сервером имен, работающим в другой системе. |
Один и тот же хост может выполнять функции нескольких серверов имен с различными областями ответственности. Например, он может быть главным сервером имен для одной области и подчиненным сервером имен - для другой.
Процесс определения IP-адреса по имени хоста называется преобразованием имен и выполняется процедурой gethostbyname. Процесс получения имен хостов на основании известных IP-адресов называется обратным преобразованием имен и выполняется процедурой gethostbyaddr. Эти процедуры входят в состав библиотеки, содержащей все необходимые функции преобразования.
Для определения IP-адресов хостов в сети используются следующие источники:
Если установлена NIS+, параметры поиска настраиваются с помощью файла irs.conf. Более подробная информация приведена в книге AIX 5L Version 5.1 Network Information Services (NIS and NIS+) Guide.
Для преобразования имен в сети с иерархической структурой доменов процедуры преобразования сначала обращаются к базе данных сервера имен доменов, которая может быть локальной, если хост сам является сервером имен доменов, или может находиться на удаленном хосте. Серверы имен преобразуют имена доменов в IP-адреса. Группа имен, за которые отвечает сервер имен, называется его областью ответственности. Если в процедуре обработки появилось имя удаленного сервера имен, то она отправляет запрос процедуры преобразования по протоколу имен доменов (DOMAIN). Для преобразования имени в простой сети процедура преобразования выбирает запись из локального файла /etc/hosts. При использовании NIS или NIS+ выполняется проверка файла /etc/hosts на главном сервере.
По умолчанию процедуры преобразования используют средства, перечисленные выше. Сначала применяется BIND/DNS. Если файл /etc/resolv.conf отсутствует или если BIND/DNS не может выполнить преобразование, процедура обращается к NIS (если эта служба доступна). Так как служба NIS имеет более высокий приоритет, чем локальный файл /etc/hosts, то на этом поиск может завершиться. Если служба NIS недоступна, то процедура преобразования выполняет поиск в локальном файле /etc/hosts. Если ни одно из этих средств не позволило определить имя, то процедура преобразования выдаст сообщение ХОСТ_НЕ_НАЙДЕН. Если ни одна из служб не доступна, процедура выдаст сообщение СЛУЖБА_НЕДОСТУПНА.
Описанный выше порядок действий по умолчанию можно изменить, создав файл /etc/irs.conf и задав в нем требуемую последовательность выполнения процедур. Кроме того, порядок действий по умолчанию и порядок, определенный в файле /etc/irs.conf, можно изменить с помощью переменной среды NSORDER. Если задан файл /etc/irs.conf и переменная среды NSORDER, то необходимо задать хотя бы одно значение параметра.
Задание порядка поиска хостов с помощью файла /etc/irs.conf:
hosts значение [ continue ]
Порядок поиска задается путем перечисления возможных способов, по одному способу на строке. Значение - это один из способов, приведенных в списке, а ключевое слово continue указывает, что другой способ преобразования задан в следующей строке.
Задание порядка поиска хостов с помощью переменной среды NSORDER:
NSORDER=значение,значение,значение
Порядок задается в одной строке, значения разделяются запятыми. Между запятыми и знаком равенства можно ставить пробел.
Например, в одноуровневой локальной сети необходим только файл /etc/hosts. В этом примере файл /etc/irs.conf будет содержать следующую строку:
hosts local
В качестве альтернативы можно задать переменную среды NSORDER:
NSORDER=local
Если локальная сеть состоит из доменов и при этом в ней используется сервер имен, а в файле /etc/hosts хранится резервная таблица хостов, то необходимо задать использование обеих служб. В этом примере файл /etc/irs.conf будет содержать следующие строки:
hosts dns continue hosts local
Переменная среды NSORDER должна быть задана так:
NSORDER=bind,local
Примечание: В параметрах следует указывать символы в нижнем регистре.
При любой последовательности преобразования переход к следующему методу выполняется при следующих условиях:
Если файл /etc/resolv.conf не существует, службы BIND/DNS считаются недоступными. Если процедуры getdomainname и yp_bind не выполнены, то считается, что служба NIS не настроена или не работает и потому недоступна. Если файл /etc/hosts невозможно открыть, то локальный поиск невозможен, а следовательно, этот файл и эта служба недоступны.
Если служба в списке помечена как ответственная (authoritative), значит достоверность передаваемой ею информации выше, чем у служб, находящихся в иерархии ниже ее, и она должна содержать все имена и адреса. Процедуры преобразования не будут обращаться к последующим службам, так как они содержат только часть информации, предоставляемой данной службой. Процедура преобразования завершает работу на уровне службы, помеченной как "ответственная", даже если она не нашла запрошенное имя (в этом случае процедура преобразования выдаст сообщение ХОСТ_НЕ_НАЙДЕН). Если ответственная служба недоступна, то процедура обращается к следующей службе.
Ответственный источник отмечен строкой =auth после значения. Может быть полностью указано слово authoritative, однако используется только часть auth. Например, если переменной среды NSORDER присвоено значение:
hosts = nis=auth,dns,local
При получении ответа от NIS поиск будет завершен, даже если имя не будет найдено. Если служба NIS не работает, то процедура преобразования обратится к DNS.
Для более эффективного поиска имен хостов и сетей серверы имен TCP/IP используют кэш-память. Вместо того, чтобы выполнять поиск имени хоста при получении каждого запроса, сервер имен сначала просматривает свою кэш-память и определяет, не преобразовывал ли он уже это имя хоста. Так как имена доменов и хостов могут изменяться, то каждый элемент остается в кэш-памяти в течение ограниченного времени, которое определяется параметром времени хранения в кэше (TTL). Таким образом, для сервера имен можно задать период времени, на протяжении которого его ответы могут считаться достоверными.
В среде DNS имя хоста, которое задается с помощью команды hostname в командной строке или в файле rc.net, должно быть официальным именем хоста, известным серверу имен. В общем случае это полное имя хоста в следующем формате:
хост.субдомен.субдомен.корневой-домен
Примечание: Для работы процедур преобразования необходимо задать имя домена по умолчанию. Если имя домена по умолчанию в команде hostname не указано, то оно должно быть задано в файле /etc/resolv.conf.
Если имя хоста задано в краткой форме, а также если система настроена на использование сервера имен доменов совместно с программой sendmail, то в файле конфигурации программы sendmail (файл /etc/sendmail.cf) необходимо указать официальное имя хоста. Кроме того, для правильной работы программы sendmail в этом файле конфигурации нужно задать макроопределение имени домена.
Примечание: Для всех функций программы sendmail домен, описанный в файле /etc/sendmail.cf, имеет более высокий приоритет, чем домен, заданный командой hostname.
Для хоста, не являющего сервером имен, имена локального домена и сервера имен задаются в файле /etc/resolv.conf. Для сервера имен домена локальный домен и другие серверы имен задаются в файлах, которые демон named считывает при запуске.
Протокол обратного преобразования адресов (RARP) преобразует уникальные аппаратные адреса адаптеров сети Ethernet в IP-адреса. Стандартный протокол Ethernet поддерживается со следующими ограничениями:
Системный администратор должен вручную создать и обновлять таблицу постоянных записей с помощью команды arp. На сервере необходимо добавить в таблицу ARP запись для каждого хоста, который требует ответов RARP от ответственного источника.
В небольшой одноуровневой сети достаточно настроить файл /etc/hosts. В случае организации иерархической (доменной) схемы присвоения имен и применения серверов имен файл /etc/hosts может потребоваться для идентификации тех хостов, которые неизвестны серверам имен.
Настроить систему для локального преобразования имен хостов можно с помощью
Web-администратора системы, Инструмента управления системой (SMIT), а также с
помощью специальных команд. При настройке с помощью команд постарайтесь
сохранить формат файла /etc/hosts, описанный в разделе Hosts File Format for TCP/IP в книге AIX 5L Version
5.1 Files Reference.
Задачи по локальному преобразованию имен | |||
---|---|---|---|
Процедура | Команда быстрого доступа из SMIT | Команда или имя файла | Среда Web-администратора системы |
Показать список всех хостов | smit lshostent | view /etc/hosts | Программное обеспечение --> Сеть --> TCPIP (IPv4 и IPv6) --> Настройка протокола TCPIP --> TCP/IP --> Настроить TCP/IP --> Вручную --> Файл hosts --> Содержимое файла /etc/hosts. |
Добавить хост | smit mkhostent | edit /etc/hosts | Программное обеспечение --> Сеть --> TCPIP (IPv4 и IPv6) --> Настройка протокола TCPIP --> TCP/IP --> Настроить TCP/IP --> Вручную --> Файл hosts. В окне Добавить/изменить запись для хоста заполните следующие поля: IP-адреса , Имя хоста, Псевдонимы и Комментарий. Щелкните на Добавить/изменить запись --> OK. |
Изменить/показать параметры хоста | smit chhostent | edit /etc/hosts | Программное обеспечение --> Сеть --> TCPIP (IPv4 и IPv6) --> Настройка протокола TCPIP --> TCP/IP --> Настроить TCP/IP --> Вручную --> Файл hosts. Выберите хост в списке Содержимое файла /etc/hosts и измените данные в поле Добавить/изменить запись о хосте. Щелкните на Добавить/изменить запись --> OK. |
Удалить хост | smit rmhostent | edit /etc/hosts | Программное обеспечение --> Сеть --> TCPIP (IPv4 и IPv6) --> Настройка протокола TCPIP --> TCP/IP --> Настроить TCP/IP --> Вручную --> Файл hosts. Выберите хост в списке Содержимое файла /etc/hosts и щелкните на Удалить запись --> OK. |
Если ваша сеть представляет собой часть большой сети, то настройку серверов имен и доменов нужно будет согласовывать с организацией, обслуживающей зону ответственности, в которую входит ваша сеть.
Ниже приведены рекомендации по планированию системы DOMAIN:
Изменить имя существенно сложнее, чем сразу выбрать его правильно. Перед изменением файлов конфигурации обязательно согласуйте выбранные имена сетей, шлюзов, серверов имен и хостов с руководством вашей организации.
Если это невозможно, обязательно создайте подчиненные серверы имен или серверы подсказок, что обеспечит хотя бы минимальную защиту от сбоев.
objectclass container requires objectclass, cn objectclass hosts requires objectclass, hname allows addr halias, comment
В иерархической сети некоторые хосты выполняют функции серверов имен. Эти хосты преобразуют имена других хостов в IP-адреса. Работой сервера имен управляет программа-демон named, которая должна быть запущена на хосте - сервере имен.
Перед настройкой определите, какие типы серверов имен лучше всего подходят для обслуживания вашей сети. Существует несколько типов серверов имен.
Главный сервер имен хранит базу данных с таблицами преобразования имен в адреса. Он загружает свои данные из файла или с диска и может передавать полномочия другим серверам своего домена. Подчиненный сервер имен или сервер имен Stub получает информацию об области ответственности от главного сервера имен во время запуска системы, а затем периодически обращается к главному серверу для обновления этой информации. Сервер подсказок отвечает на запросы о преобразовании имени с помощью информации, полученной им от других серверов.
Примечание: В предыдущих версиях сервера имен named главный сервер имен определялся как основной, подчиненный сервер имен - как дополнительный, а сервер подсказок - как сервер кэш-памяти. Все ссылки на файл named.conf в данном руководстве соответствуют AIX версии 4.3.2 и выше.
Помните, что один и тот же сервер имен может выполнять разные функции в различных областях ответственности. Например, он может быть главным сервером имен для одной области и подчиненным - для другой. Если в вашей системе установлена NIS или NIS+, то эти службы также выполняют преобразование имен. Более подробная информация приведена в книге AIX 5L Version 5.1 Network Information Services (NIS and NIS+) Guide.
Параметры серверов имен задаются в нескольких файлах.
conf | Этот файл считывается при запуске демона named. Записи файла conf сообщают программе named тип сервера, задают список доменов, входящих в область его ответственности, и указывают, откуда следует брать данные для первоначального заполнения базы данных сервера. По умолчанию этот файл называется /etc/named.conf. Вы можете изменить это имя, задав новое имя и путь в командной строке при запуске программы named. Если вы укажете несуществующий файл конфигурации с именем /etc/named.conf, то в протокол syslog заносится сообщение, а работа демона named завершается. Однако если указан несуществующий альтернативный файл конфигурации, то сообщение не создается, и программа named продолжает работу. |
cache | Содержит информацию о локальной кэш-памяти. Файл локальной кэш-памяти содержит имена и адреса серверов с наибольшей областью ответственности. Файл кэш-памяти имеет стандартный формат записи ресурса. Имя файла кэш-памяти задается в файле conf. |
данные о домене | Существует три типа файлов данных о домене, называемых также файлами
данных named. Локальный файл
namedсодержит информацию о преобразовании локальных циклических
адресов. Файл данных named содержит данные о
преобразовании имен для всех систем, находящихся в области ответственности
сервера имен. Файл данных для обратного преобразования
named содержит данные об обратном преобразовании адресов для
систем, находящихся в области ответственности сервера. Файлы данных о
домене используют стандартный формат записи ресурса. Имена этих файлов
задаются пользователем и указываются в файле conf.
Общепринято, чтобы в имена этих файлов включалось имя демона
named, а в расширение - тип файла и имя домена.
Например, сервер имен для домена abc должен иметь следующие
файлы:
named.abc.data named.abc.rev named.abc.local При внесении изменений в файлы данных named порядковый номер записи ресурса SOA для подчиненных серверов имен должен быть увеличен, чтобы правильно отражать новую область ответственности. |
resolv.conf | Наличие этого файла сообщает хосту, что для преобразования имен он
сначала должен обращаться к серверу имен. Если файл
resolv.conf отсутствует, то для преобразования имен хост
просматривает файл /etc/hosts. На сервере имен должен
существовать файл resolv.conf, который может содержать адрес
локального хоста, циклический адрес (127.0.0.1), или
может быть пустым.
Примечание: Для работы процедуры преобразования должно быть задано имя домена по умолчанию. Если домен по умолчанию не указан в файле /etc/resolv.conf, то он должен быть задан в файле hostname. |
Время хранения в кэш-памяти (TTL) задается в записях ресурсов. Если в записи ресурса параметр TTL не указан, то по умолчанию он устанавливается равным минимальному значению, заданному для данной области в записи начала области ответственности (SOA). Параметр TTL используется в том случае, когда данные хранятся вне области ответственности (в кэш-памяти), при этом вы можете быть уверены, что время хранения данных будет ограничено.
Для настройки главного сервера имен вызовите Web-администратор системы (wsm), запустите демон named из командной строки, либо воспользуйтесь следующей процедурой, в ходе которой изменяется ряд файлов и используется программа SMIT.
Этот файл считывается при каждом запуске демона named. В нем указывается тип сервера, область (или области) его ответственности и источник для загрузки начальной информации.
options { directory "/usr/local/domain"; };
zone "." IN { type hint; file "/etc/named.ca"; };
zone "abc.aus.century.com" in { type master; file "/etc/named.abcdata"; }; zone "201.9.192.in-addr.arpa" in { type master; file "/etc/named.abcrev"; };
zone "0.0.127.in-addr.arpa" in { type master; file "/etc/named.local"; };
В этом файле указаны адреса ответственных (или корневых) серверов локального домена. Например:
; корневые серверы имен 1 IN NS relay.century.com. relay.century.com. 3600000 IN A 129.114.1.2
Примечание: Все строки в этом файле должны быть в стандартном формате записи ресурса.
@ IN SOA venus.abc.aus.cntry.com. gail.zeus.abc.aus.cntry.com. ( 1.1 ;serial 3600 ;refresh 600 ;retry 3600000 ;expire 86400) ;minimum
IN NS venus.abc.aus.century.com.
1 IN PTR localhost.
Примечание: Все строки в этом файле должны быть в стандартном формате записи ресурса.
@ IN SOA venus bob.robert.abc.aus.century.com. ( 1.1 ;serial 3600 ;refresh 600 ;retry 3600000 ;expire 86400) ;minimum
venus IN A 192.9.201.1 venus IN A 128.114.100.1
IN NS venus.abc.century.com IN NS kronos.xyz.century.com
Примечание: Все строки в этом файле должны быть в стандартном формате записи ресурса.
@ IN SOA venus.abc.aus.century.com. bob.robert.abc.aus.century.com. ( 1.1 ;serial 3600 ;refresh 600 ;retry 3600000 ;expire 86400) ;minimum
;ABC.AUS.CENTURY.COM Hosts 1 IN PTR venus.abc.aus.century.com. 2 IN PTR kronos.abc.aus.century.com.
Примечание: Все строки в этом файле должны быть в стандартном формате записи ресурса.
touch /etc/resolv.conf
Наличие этого файла указывает хосту, что при преобразовании имен он должен использовать сервер имен, а не файл /etc/hosts. Этот файл должен существовать на сервере имен и может содержать адрес локального хоста, циклический адрес (127.0.0.1) или быть пустым.
В другом варианте файл /etc/resolv.conf может содержать запись:
nameserver 127.0.0.1
127.0.0.1 - это циклический адрес, по которому хост обращается к самому себе, как к серверу имен. Файл /etc/resolv.conf может также содержать примерно следующую запись:
domain имя_домена
В предыдущем примере значение имени_домена равно aus.century.com.
#start /etc/named "$src_running"
Эта команда указывает, что демон должен инициализироваться при каждом запуске системы.
startsrc -s named
Для настройки подчиненного сервера имен можно воспользоваться Web-администратором системы (wsm) или следующей процедурой, в рамках которой сначала нужно отредактировать несколько файлов, а затем запустить демон named с помощью Инструмента управления системой (SMIT) или из командной строки.
Файл conf считывается при каждом запуске демона named. В нем указывается тип сервера, область его ответственности и источник для загрузки начальной информации.
options { directory "/usr/local/domain"; };
zone "." IN { type hint; file "/etc/named.ca"; };
zone "abc.aus.century.com" IN { type slave; file "/etc/named.abc.bak"; masters { 192.9.201.1; 192.9.201.2; }; }; zone "xyz.aus.century.com" IN { type slave; file "/etc/named.xyz.bak"; masters { 192.9.201.1; 192.9.201.2; }; };
zone "201.9.192.in-addr.arpa" IN { type slave; file "named.rev.bak"; masters { 192.9.201.1; 192.9.201.2; }; }; zone "100.114.128.in-addr.arpa" IN { type slave; file "named.rev.bak"; masters { 192.9.201.1; 192.9.201.2; }; };
zone "0.0.127.in-addr.arpa" IN { type master; file "/etc/named.local"; };
В этом файле содержатся адреса ответственных серверов (NS) для корневого домена сети. Например:
; корневые серверы имен 1 IN NS relay.century.com. relay.century.com. 3600000 IN A 129.114.1.2
Примечание: Все строки в этом файле должны быть в стандартном формате записи ресурса.
@ IN SOA venus.abc.aus.cntry.com. gail.zeus.abc.aus.cntry.com. ( 1.1 ;serial 3600 ;refresh 600 ;retry 3600000 ;expire 86400) ;minimum
IN NS venus.abc.aus.century.com.
1 IN PTR localhost.
Примечание: Все строки в этом файле должны быть в стандартном формате записи ресурса.
touch /etc/resolv.conf
Наличие этого файла указывает хосту, что при преобразовании имен он должен использовать сервер имен, а не файл /etc/hosts. Вы также можете задать записи, определяющие имя, домен и адрес сервера имен.
#start /etc/named "$src_running"
Эта команда указывает, что демон должен инициализироваться при каждом запуске системы.
startsrc -s named
Для настройки сервера подсказок (или кэш-сервера) можно воспользоваться Web-администратором системы (wsm) или следующей процедурой, в рамках которой нужно сначала отредактировать некоторые файлы, а затем запустить демон namedс помощью программы SMIT или из командной строки.
Для настройки сервера подсказок выполните следующие действия:
zone "0.0.127.in-addr.arpa" IN { type master; file "/etc/named.local"; };
zone "." IN { type hint; file "/etc/named.ca"; };
В этом файле содержатся адреса ответственных серверов корневого домена сети. Например:
; корневые серверы имен 1 IN NS relay.century.com. relay.century.com. 3600000 IN A 129.114.1.2
Примечание: Все строки в этом файле должны быть в стандартном формате записи ресурса.
@ IN SOA venus.abc.aus.cntry.com. gail.zeus.abc.aus.cntry.com. ( 1.1 ;serial 3600 ;refresh 600 ;retry 3600000 ;expire 86400) ;minimum
IN NS venus.abc.aus.century.com.
1 IN PTR localhost.
Примечание: Все строки в этом файле должны быть в стандартном формате записи ресурса.
touch /etc/resolv.conf
Наличие этого файла указывает хосту, что при преобразовании имен он должен использовать сервер имен, а не файл /etc/hosts. При желании вы можете задать записи, определяющие имя, домен и адрес сервера имен.
#start /etc/named "$src_running"
Эта команда указывает, что демон должен инициализироваться при каждом запуске системы.
startsrc -s named
Почтовый сервер упрощает передачу сообщений пользователям вашей организации из внешней сети. Если такого сервера нет, то в почтовом адресе должен указываться конкретный хост в сети организации. Например, sam@orange.widget.com, где widget.com - имя домена вашей организации, а orange - хост, который использует sam. При наличии почтового сервера внешним пользователям достаточно указать только имя адресата (без имени хоста, который он использует) и имя домена вашей организации, например, sam@widget.com.
Для настройки почтового сервера воспользуйтесь Web-администратором системы (wsm) или одной из следующих процедур.
widget.com IN MX 10 black.widget.com widget.com IN A 192.10.143.9 black.widget.com IN A 192.10.143.9
Cw $w $?D$w.$D$. widget.com
DRblack.widget.com
sam:sam@orange.widget.com david:david@green.widget.com judy:judy@red.widget.com
Примечание: Такую же функцию могут выполнять записи почтового ящика (MB).
Есть и другие способы настройки почтового сервера доменов. В приведенных ниже процедурах используются записи MB (почтовый ящик), MR (переименование почты) и MG (почтовая группы).
sam IN MB orange.widget.com.
в файл /etc/named.data на хосте brown.widget.com. Такие записи сообщают почтовому серверу black.widget.com, куда следует направлять почту для каждого пользователя в домене.
sammy IN MR sam
Задание такой записи приведет к тому, что все почтовые отправления, адресованные sammy, будут доставляться пользователю sam. Каждая запись MR должна задаваться в отдельной строке.
users IN HINFO users-request widget.com users IN MG sam users IN MG david users IN MG judy
В этом случае все почтовые сообщения, направляемые по адресу users@widget.com, будут доставляться пользователям sam, david и judy. Каждая запись MG должна задаваться в отдельной строке.
Примечание: Для пользователей sam, david и judy должны быть заданы записи MB.
purple.widget.com IN MX 0 post.office.widget.
В записях MX нужно задавать как имя хоста, так и имя компьютера. Каждая запись MG должна задаваться в отдельной строке. Можно использовать символы подстановки, например:
*.widget.com IN MX 0 post.office.widget.
В этом примере почта, поступающая на неизвестный хост (хост без заданной явно записи MX) домена widget.com, будет пересылаться по адресу post.office.widget.
Примечание: Записи MX с символами подстановки нельзя использовать в сети Internet.
Для настройки сервера пересылки можно воспользоваться Web-администратором системы (wsm) или следующей процедурой, в рамках которой нужно сначала отредактировать некоторые файлы, а затем запустить демон namedс помощью программы SMIT или из командной строки.
options { ... forwarders { 192.100.61.1; 129.35.128.222; }; ... };
zone "." IN { type hint; file "/etc/named.ca"; };
В этом файле содержатся адреса ответственных серверов корневого домена сети. Например:
; корневые серверы имен 1 IN NS relay.century.com. relay.century.com. 3600000 IN A 129.114.1.2
Примечание: Все строки в этом файле должны иметь стандартный формат записи ресурса.
@ IN SOA venus.abc.aus.cntry.com. gail.zeus.abc.aus.cntry.com. ( 1.1 ;serial 3600 ;refresh 600 ;retry 3600000 ;expire 86400) ;minimum
IN NS venus.abc.aus.century.com.
1 IN PTR localhost.
Примечание: Все строки в этом файле должны быть в стандартном формате записи ресурса.
touch /etc/resolv.conf
Наличие этого файла указывает хосту, что при преобразовании имен он должен использовать сервер имен, а не файл /etc/hosts.
В другом варианте файл /etc/resolv.conf может содержать запись:
nameserver 127.0.0.1
127.0.0.1 - это циклический адрес, по которому хост обращается к самому себе, как к серверу имен. Файл /etc/resolv.conf может содержать и такие записи:
domain имя_домена
В предыдущем примере в качестве параметра имя_домена было указано значение austin.century.com.
#start /etc/named "$src_running"
Эта команда указывает, что демон должен инициализироваться при каждом запуске системы.
startsrc -s named
Для настройки сервера пересылки можно воспользоваться Web-администратором системы (wsm) или следующей процедурой, в рамках которой нужно сначала отредактировать некоторые файлы, а затем запустить демон namedс помощью программы SMIT или из командной строки.
Примечание: Вы можете получить такую же конфигурацию, не запуская сервер пересылки. Вместо этого создайте файл /etc/resolv.conf, в котором задайте строки сервера имен с указанием требуемых серверов пересылки.
options { ... forwarders { 192.100.61.1; 129.35.128.222; }; forward only; ... };
; корневые серверы имен 1 IN NS relay.century.com. relay.century.com. 3600000 IN A 129.114.1.2
Примечание: Все строки в этом файле должны иметь стандартный формат записи ресурса.
@ IN SOA venus.abc.aus.cntry.com. gail.zeus.abc.aus.cntry.com. ( 1.1 ;serial 3600 ;refresh 600 ;retry 3600000 ;expire 86400) ;minimum
IN NS venus.abc.aus.century.com.
1 IN PTR localhost.
Примечание: Все строки в этом файле должны быть в стандартном формате записи ресурса.
touch /etc/resolv.conf
Наличие этого файла указывает хосту, что при преобразовании имен он должен использовать сервер имен, а не файл /etc/hosts.
В другом варианте файл /etc/resolv.conf может содержать запись:
nameserver 127.0.0.1
127.0.0.1 - это циклический адрес, по которому хост обращается к самому себе, как к серверу имен. Файл /etc/resolv.conf может содержать и такие записи:
domain имя_домена
В предыдущем примере в качестве параметра имя_домена было указано значение austin.century.com.
#start /etc/named "$src_running"
Эта команда указывает, что демон должен инициализироваться при каждом запуске системы.
startsrc -s named
Для настройки хоста для работы с сервером имен воспользуйтесь Web-администратором системы (wsm) или выполните следующую процедуру.
host имя-хоста
Чтобы определить, выполняет ли сервер преобразование имен, укажите какое-либо имя хоста. В результате операции вы должны получить примерно следующее сообщение:
brown.abc.aus.century.com is 129.35.145.95
В таблице приведены другие задачи настройки.
Задачи настройки хоста для применения сервера имен | |||
---|---|---|---|
Процедура | Команда быстрого доступа из SMIT | Команда или имя файла | Среда Web-администратора системы |
Создать файл /etc/resolv.conf | smit stnamerslv2 | create и edit /etc/resolv.conf1 |
|
Получить список всех серверов имен, используемых хостом | smit lsnamerslv | view /etc/resolv.conf | Программное обеспечение --> Сеть --> TCPIP (IPv4 и IPv6) --> Настройка протокола TCPIP --> TCP/IP --> Настроить TCP/IP --> Вручную --> Файл hosts --> Содержимое файла /etc/hosts. |
Добавить сервер имен | smit mknamerslv | edit /etc/resolv.conf2 | Программное обеспечение --> Сеть --> TCPIP (IPv4 и IPv6) --> Настройка протокола TCPIP --> TCP/IP --> Настроить TCP/IP --> Вручную --> DNS. В поле IP-адрес сервера имен введите IP-адрес. Щелкните на Добавить --> OK. |
Удалить сервер имен | smit rmnamerslv | edit /etc/resolv.conf | Программное обеспечение --> Сеть --> TCPIP (IPv4 и IPv6) --> Настройка протокола TCPIP --> TCP/IP --> Настроить TCP/IP --> Вручную --> DNS. Выберите сервер имен в поле Сервер имен для поиска. Щелкните на Удалить --> OK. |
Запустить/Перезапустить службу преобразования имен доменов | smit stnamerslv |
| Программное обеспечение --> Сеть --> TCPIP (IPv4 и IPv6) --> Настройка протокола TCPIP --> TCP/IP --> Настроить TCP/IP --> Вручную --> DNS. Отметьте переключатель Разрешить преобразование имен доменов с помощью DNS. Нажмите OK. |
Отменить применение службы преобразования имен доменов | smit spnamerslv |
| Программное обеспечение --> Сеть --> TCPIP (IPv4 и IPv6) --> Настройка протокола TCPIP --> TCP/IP --> Настроить TCP/IP --> Вручную --> DNS. Выключите переключатель Разрешить преобразование имен доменов с помощью DNS. Нажмите OK. |
Изменить/Показать домен | smit mkdomain | edit /etc/resolv.conf | Программное обеспечение --> Сеть --> TCPIP (IPv4 и IPv6) --> Настройка протокола TCPIP --> TCP/IP --> Настроить TCP/IP --> Вручную --> DNS. --> Имя домена для поиска. Щелкните на Добавить --> OK. |
Удалить домен | smit rmdomain | edit /etc/resolv.conf | Программное обеспечение --> Сеть --> TCPIP (IPv4 и IPv6) --> Настройка протокола TCPIP --> TCP/IP --> Настроить TCP/IP --> Вручную --> DNS. Выберите имя домена в Списке доменов для поиска. Щелкните на Удалить --> OK. |
Примечания:
- В первой строке файла /etc/resolv.conf задайте слово domain и полное имя домена, в котором находится данный хост. Например:
domain abc.aus.century.com- В любой пустой строке ниже строки domain задайте слово nameserver, а затем через один или несколько пробелов укажите IP-адрес сервера имен, который будет использоваться данным хостом (сервер имен будет обслуживать домен, указанный в строке domain). Можно перечислить до 16 серверов имен. Например, ваш файл /etc/resolv.conf может содержать следующие записи:
nameserver 192.9.201.1 nameserver 192.9.201.2Система будет обращаться к серверам имен в порядке их следования в списке.
Команда named поддерживает динамическое обновление информации. Необходимо настроить файлы конфигурации и базы данных named таким образом, чтобы клиенты могли выполнять обновление. Область может быть задана как динамическая или как статическая. По умолчанию применяются статические области.
Для создания динамической области нужно добавить ключевое слово allow-update в раздел области (zone) в файле /etc/named.conf. Ключевое слово allow-update определяет список IP-адресов хостов, которым разрешено обновление. Более подробная информация и примеры файла conf приведены в разделе named.conf File Format for TCP/IP книги AIX 5L Version 5.1 Files Reference. В приведенном ниже примере обновлять динамическую область разрешено всем хостам:
zone "aoot.austin.ibm.com" IN { type master; file "named.data"; allow-update { any; }; };
После того, как динамическая область описана, можно установить один из
следующих трех режимов защиты области:
Unsecured | Всем разрешено в любой момент обновлять любую информацию в
области.
Внимание: Использовать этот режим не рекомендуется. Применение данного режима может привести к потере данных, их перехвату и неполадкам в работе пользователей. В крайнем случае обновление незащищенной области может быть разрешено только с нескольких определенных IP-адресов. |
Controlled | Разрешено создание новой и замена существующей информации. Это, вероятно, самый удобный режим для защищенной среды передачи. В данном режиме все поступающие обновления должны снабжаться меткой времени поступления и зашифрованной подписью. |
Presecured | Все обновления существующей информации должны заменяться аналогичной информацией. В данном режиме все поступающие обновления должны снабжаться меткой времени поступления и зашифрованной подписью. |
По умолчанию для динамических областей применяется незащищенный режим (unsecured). Для использования другого режима добавьте слово controlled или presecured после ключевого слова update-security в разделе области файла /etc/named.conf. Это слово сообщает серверу named , какой уровень защиты он должен использовать при работе с этой областью. Например:
zone "aoot.austin.ibm.com" IN { type master; file "named.boot"; allow-update { any; }; update-security controlled; };
После выбора режима в соответствии с уровнем защиты необходимо изменить существующие файлы данных. В незащищенном режиме файлы данных используются "как есть". В управляемом или предварительно защищенном режиме необходимо создать набор пар ключей главного сервера/имени хоста для каждого имени в данной области. Это можно сделать с помощью команды nsupdate с параметром -g. Эта команда создает пару ключей (личный ключ и общий ключ). Эти ключи используются для создания идентификационных меток обновления. После создания всех ключей для списка имен областей, добавьте их в файл данных. Запись KEY имеет следующий формат:
Индекс ttl Класс Тип Флаги Протокол Алгоритм Данные
где:
Индекс | Определяет имя, используемое для обращения к данным в области. |
ttl | Задает для этих данных время хранения в кэш-памяти (TTL). Это необязательное поле. |
Класс | Определяет класс данных. Он зависит от области, но обычно имеет значение IN. |
Тип | Задает тип записи. В данном случае запись имеет тип KEY. |
Флаги | Задает для named информацию о ключе. 0x0000 определяет запись обычного ключа, использующегося для хоста. 0x0100 определяет запись ключа, связанную с именем области. |
Протокол | Задает используемый протокол. В данный момент применяется только протокол 0. |
Алгоритм | Задает алгоритм ключа. В данный момент применяется только алгоритм 1. Это способ идентификации MD5 с личным/общим ключом. |
Данные | Задает ключ в формате base64. Команда nsupdate создает как общие, так и личные ключи в формате base64. Общий ключ указывается в конце файла вывода. |
Для того чтобы убедиться, что для имени хоста в динамической области установлена защита, необходимо добавить следующую строку в определение области, в которую входит данный хост:
bears 4660 IN KEY 0x0000 0 1 AQOtg......
В этом примере для хоста bears определена запись KEY. Каждый, кто захочет обновить bears, должен будет пометить свое обновление личным ключом, совпадающим с общим ключом в базе данных. Для того чтобы команда nsupdate была успешно выполнена, необходимо разместить общий ключ в файле ключей клиента (по умолчанию, /etc/keyfile). Он должен иметь следующий формат:
hostname mastername base64 key
Аналогичную запись KEY необходимо указать в разделе описания области. Ключ области должен быть указан и для режима presecured и для режима controlled. Если этого не сделать, то будет применяться незащищенный режим. Это можно сделать так же, как в примере с bears, но личный ключ должен быть оставлен администратору для использования его с командой nsupdate в административном режиме.
Для создания пары ключей с помощью команды nsupdate введите:
nsupdate -g -hимя_области -pимя_сервера -k файл_ключей
При этом создается ключ для области. Укажите последний ключ из пары в начале раздела описания области следующим образом:
IN KEY 0x0100 0 1 Ключ
Теперь область готова к загрузке. Администратор должен использовать ключ области при выполнении операций по обновлению и обслуживанию области.
Протокол Lightweight Directory Access Protocol (LDAP) - это открытый стандартный протокол, регламентирующий способ получения и изменения информации в каталоге. Схема LDAP определяет правила заказа данных. Класс объектов ibm-HostTable, входящий в схему IBM SecureWay Directory, можно применять для хранения таблиц преобразования имен хостов в адреса.
Класс объектов ibm-HostTable определен следующим образом:
Имя класса: ibm-HostTable Описание: Запись таблицы хостов, содержащая список имен хостов и соответствующих IP-адресов. OID: TBD RDN: ipAddress Родительский класс: top Обязательные атрибуты: host, ipAddress Необязат. атрибуты: ibm-hostAlias, ipAddressType, description
Определения атрибутов приведены ниже:
Имя атрибута: ipAddress Описание: IP-адрес хоста в таблице хостов OID: TBD Синтаксис: caseIgnoreString Длина: 256 Одно значение: Да Имя атрибута: ibm-hostAlias Описание: Псевдоним хоста в таблице хостов OID: TBD Синтаксис: caseIgnoreString Длина: 256 Одно значение: Нет Имя атрибута: ipAddressType Описание: Семейство IP-адресов (1=IPv4, 2=IPv6) OID: TBD Синтаксис: Integer Длина: 11 Одно значение: Да Имя атрибута: host Описание: Имя хоста. OID: 1.13.18.0.2.4.486 Синтаксис: caseIgnoreString Длина: 256 Одно значение: Нет Имя атрибута: description Описание: Описание записи в каталоге. OID: 2.5.4.13 Синтаксис: caseIgnoreString Длина: 1024 Одно значение: Нет
Для настройки сервера LDAP в качестве хранилища таблицы хостов выполните следующие действия:
dn: cn=hosts objectclass: top objectclass: container cn: hosts dn: ipAddress=1.1.1.1, cn=hosts host: test ipAddress: 1.1.1.1 objectclass: ibm-HostTable ipAddressType: 1 ibm-hostAlias: e-test ibm-hostAlias: test.austin.ibm.com description: first ethernet interface dn: ipAddress=fe80::dead, cn=hosts host: test ipAddress: fe80::dead objectclass: ibm-HostTable ipAddressType: 2 ibm-hostAlias: test-ll ibm-hostAlias: test-ll.austin.ibm.com description: интерфейс v6 на уровне канала
Для того чтобы клиент начал использовать базу данных хостов на сервере LDAP, выполните следующие действия: