Конфигурационный файл преобразователя
/etc/resolv.conf
ЗОСРВ «Нейтрино»
Библиотечные подпрограммы преобразователя обеспечивают доступ к системе доменных имен (DNS) сети Интернет. При первом вызове этих подпрограмм процессом они считывают информацию из конфигурационного файла преобразователя. Этот файл содержит список ключевых слов с пользовательскими значениями, которые представляют собой различные типы информации преобразователя.
Этот файл является необязательным. Если он отсутствует:
- библиотечные подпрограммы преобразователя осуществляют поиск по файлу
/etc/hosts
только с целью преобразования имени хоста; - на основе имени хоста определяется доменное имя;
- на основе доменного имени создается путь поиска.
Перезапись /etc/resolv.conf
Для перезаписи данных, содержащихся в файле /etc/resolv.conf
, можно использовать следующие конфигурационные строки confstr():
- _CS_DOMAIN
- Доменное имя без ключевых слов. Например, "my.domain"
- _CS_RESOLVE
- Содержимое файла
/etc/resolv.conf
, за исключением случаев, когда конфигурационная строка: - не содержит доменное имя,
- не может содержать пробелы (ключевые слова разделяются символами подчеркивания).
Например: "nameserver_209.226.137.53". Утилита netmanager изменяет конфигурационную строку _CS_RESOLVE
.
Библиотека сокетов использует следующий порядок поиска данных преобразователя:
- конфигурационные строки confstr()
-
/etc/resolv.conf.имя_хоста
-
/etc/resolv.conf
Дополнительно установить конфигурационные строки можно с помощью таких утилит, как dhcp.client и pppd.
Ключевые слова
Каждое ключевое слово и связанное с ним значение должны находиться на одной строке. Эта строка должна начинаться с ключевого слова (например, nameserver), за которым следует пробельный символ и значение.
Ключевые слова domain и search являются взаимоисключающими. Если присутствует несколько вхождений этих ключевых слов, то последнее вхождение переопределяет любые другие.
- nameserver
- IP-адрес (в "нотации с точками") сервера имен, который должен запросить преобразователь. Сервера имен можно указать в количестве, равном MAXNS (в настоящее время 3), по одному на каждое ключевое слово. При наличии нескольких записей серверов библиотека преобразователя запрашивает их в порядке следования. Если записи серверов отсутствуют, по умолчанию используется сервер имен на локальном компьютере. (Применяется следующий алгоритм: выполняется попытка запроса сервера имен, и в случае таймаута запроса опрашивается следующий сервер и т.д. до завершения перебора всех серверов имен, после чего перебор начинается сначала и продолжается до достижения максимального количества повторных попыток.)
- domain
- Локальный домен. В большинстве запросов имен в пределах данного домена могут использоваться краткие имена, связанные с этим локальным доменом. Если записи доменов отсутствуют, то домен определяется на основе имени локального хоста, возвращаемого функцией gethostname(); домену соответствует вся часть имени до первой точки. Если имя хоста не содержит доменной части, то предполагается принадлежность к корневому домену.
- search
- Список поиска, используемый для поиска имен хостов. Как правило, список поиска определяется на основе имени локального домена. По умолчанию он начинается с имени локального домена, затем последовательно перечисляются вышестоящие домены, имя каждого из которых состоит по меньшей мере из двух частей.
Список по умолчанию можно переопределить путем ввода пути поиска требуемого домена и ключевого слова search с именами. Большинство запросов преобразователя выполняется с использованием каждого компонента пути поиска по очереди до обнаружения соответствия.
| Этот процесс может быть медленным и способен создавать большой сетевой трафик, если серверы перечисленных доменов не являются локальными. Если для одного из доменов недоступен ни один сервер, возникает таймаут запроса. |
Длина списка поиска в настоящее время ограничена шестью доменами, и, в общей сложности, 256 символами. - nocache
- По умолчанию анализ данных
/etc/resolv.conf
выполняется только при запуске приложения. Повторная проверка этого файла не выполняется. Если указана опция "nocache on", то синтаксический анализ данных /etc/resolv.conf
будет выполняться для каждой операции поиска. Если кэш необходимо отключить на некоторое время, рекомендуется вызвать res_init() непосредственно или отключить флаг _res.options RES_INIT
.
Базовые подсистемы ЗОСРВ «Нейтрино»
/etc/hosts, netmanager, /etc/nsswitch.conf
dn_comp(), dn_expand(), gethostname(), res_init(), res_mkquery(), res_query(), res_search(), res_send()
Предыдущий раздел: Конфигурационные файлы