table of contents
RESOLV.CONF(5) | Руководство программиста Linux | RESOLV.CONF(5) |
ИМЯ¶
resolv.conf - файл настройки для процедур определения имён (resolver)
ОБЗОР¶
/etc/resolv.conf
ОПИСАНИЕ¶
resolver — это набор функций из библиотеки C, который предоставляет доступ к системе доменных имён интернет (DNS). Файл настройки содержит информацию, которая читается функциями разрешения имён при первом их вызове процессом. Файл разрабатывался в понятном человеку формате, и содержит список ключевых слов со значениями, которые предоставляют различного рода информацию для функций разрешения имён.
Если этот файл не существует, то будет опрашиваться только служба имён на локальной машине; доменное имя определяется из имени узла, а домен поиска создаётся из имени домена.
Поддерживаются следующие параметры настройки:
- nameserver IP-адрес сервера имён
- Задает интернет-адрес (в точечном формате) сервера имён, на который надо переправлять все запросы. Может быть указано до MAXNS (в настоящее время 3, см. <resolv.h>) серверов имён, повторяя каждый раз ключевое слово. Если указано несколько серверов, функции разрешения имён будут обращаться к серверам имен в порядке перечисления. Если в файле нет строк nameserver, то функции разрешения имён используют сервер имён на локальной машине. (Функции разрешения имён работают по следующему алгоритму: попробовать обратиться к первому указанному серверу имён. Если нет ответа в отведённое время, попробовать обратиться к следующему серверу, и т.д. пока не будет исчерпан список серверов.)
- domain локальное доменное имя.
- Для большинства запросов имён с доменом можно использовать короткие имена относительно локального домена. Если строки domain в файле настройки нет, домен определяется из локального имени узла, возвращаемого gethostname(2); доменной частью считается всё после первой точки '.'. Наконец, если имя узла не содержит доменной части, то предполагается корневой домен.
- search список поиска.
- Список поиска обычно определяется по имени локального домена; по умолчанию он содержит только имя локального домена. Это можно изменить, перечислив имена доменов, в которых нужно вести поиск, с ключевым полем search через пробел или символ табуляции. При разрешении запросов имён, в которых меньше точек чем указано в ndots (по умолчанию 1), будет использован каждый компонент пути поиска пока не будет найдено соответствующее имя.
- Список поиска сейчас может содержать не более шести доменов и не может быть длиннее 256 символов.
- sortlist
- Вызывает
сортировку
адресов,
возвращаемых
функцией
gethostbyname(3). Список
сортировки
задается в
виде пар
IP-адрес/маска
сети. Маску
сети
указывать
не
обязательно
— по
умолчанию
используется
естественная
маска сети.
IP-адрес и
необязательная
маска сети
разделяются
косой
чертой. В
списке
можно
указывать
до 10 пар.
Пример:
sortlist 130.155.160.0/255.255.240.0 130.155.0.0
- options
- С помощью параметров изменяются некоторые внутренние переменные функций определения имён. Синтаксис
- options параметр ...
где параметр может иметь следующие значения:
- debug
- Устанавливает значение RES_DEBUG в _res.options.
- ndots:n
- Задаёт минимальное количество точек, которые должны обязательно присутствовать в имени, переданном функции res_query(3) (см. resolver(3)) прежде чем будет выполнен начальный абсолютный запрос. По умолчанию n равно 1, поэтому если в имени есть точки, сначала имя пытаются разрешить как абсолютное, прежде чем добавлять к нему элементы из списка поиска. Значение этого параметра внутренне доходит до 15.
- timeout:n
- Задаёт промежуток времени, который функции определения имён будут ждать ответа от удалённого сервера имён перед тем как повторить запрос другому серверу имён. Измеряется в секундах, по умолчанию RES_TIMEOUT (в настоящее время равно 5, см. <resolv.h>). Значение этого параметра внутренне доходит до 30.
- attempts:n
- Задаёт количество раз, которое функции определения имён будут посылать запрос серверам имён перед тем как закончить работу и вернуть ошибку вызывавшему их приложению. По умолчанию равно RES_DFLRETRY (в настоящее время 2, см. <resolv.h>). Значение этого параметра внутренне доходит до 5.
- rotate
- Задаёт значение RES_ROTATE в _res.options, что приводит к циклическому выбору указанных серверов имён. Это приводит к распределению нагрузки среди серверов, чтобы исключить использование каждый раз только первого сервера всеми клиентами.
- no-check-names
- Задаёт значение RES_NOCHECKNAME в _res.options, что приводит к выключению в современном BIND проверки в поступающих именах узлов и почтовых именах недопустимых символов, таких как символы подчёркивания (_), не-ASCII или управляющие символы.
- inet6
- Задаёт значение RES_USE_INET6 в _res.options. Это приводит к выполнению запроса AAAA раньше запроса A внутри функции gethostbyname(3), и отображению ответов IPv4 в "туннелированную форму" IPv6, если записи AAAA не были обнаружены, но есть запись типа A.
- ip6-bytestring (начиная с glibc 2.3.4)
- Задаёт значение RES_USE_BSTRING в _res.options. Это приводит к поиску обратной записи IPv6, используя формат значимых битов, описанный в RFC 2673; если этот параметр не задан, то используется полубайтовый формат.
- ip6-dotint/no-ip6-dotint (начиная с glibc 2.3.4)
- Устанавливает/сбрасывает значение RES_NOIP6DOTINT в _res.options. Если указан сброс (ip6-dotint), то выполняется поиск обратной записи IPv6 (устарел) в зоне ip6.int; если задана установка (no-ip6-dotint), то по умолчанию выполняется поиск обратной записи IPv6 в зоне ip6.arpa. По умолчанию этот параметр установлен.
- edns0 (начиная с glibc 2.6)
- Задаёт значение RES_USE_EDNSO в _res.options. Включает поддержку расширений DNS, описанных в RFC 2671.
- single-request (начиная с glibc 2.10)
- Задаёт значение RES_SNGLKUP в _res.options. По умолчанию, glibc начиная с версии 2.9 выполняет поиск по IPv4 и IPv6 параллельно. Некоторые приложения DNS-серверов не могут обработать такие запросы должным образом и делают паузу между ответами на запрос. Этот параметр отключает данное поведение, что заставляет glibc делать запросы IPv6 и IPv4 последовательно (что замедляет процесс определения имени).
Ключевые слова domain и search являются взаимоисключающими. Если они указаны более одного раза, то используется значение последнего.
Значение ключевого слова search в системном файле resolv.conf может быть изменено назначением переменной окружения для определённого процесса LOCALDOMAIN списка доменов, разделённых пробелами.
Значение ключевого слова options в системном файле resolv.conf может быть дополнено назначением переменной окружения для определённого процесса RES_OPTIONS списка вышеописанных в options параметров настройки функций определения имён.
Ключевое слово и значение должны быть в одной строке, и кроме того, ключевое слово(например, nameserver), должно быть в начале строки. Значение должно отделяться от ключевого слова пробельным символом.
Строки, в которых в первой колонке содержится точка с запятой (;) или символ решётки (#), считаются комментариями.
ФАЙЛЫ¶
/etc/resolv.conf, <resolv.h>
СМОТРИТЕ ТАКЖЕ¶
gethostbyname(3), resolver(3), hostname(7),
named(8)
Руководство
по работе с
сервером
имён BIND
2012-05-04 | 4th Berkeley Distribution |