gai.conf(5) файл настройки getaddrinfo(3)

ОПИСАНИЕ

Вызов getaddrinfo(3) может вернуть несколько результатов. Согласно RFC 3484 эти результаты должны быть отсортированы так, что первым в списке будет ответ с высшим показателем достоверности (success rate). В RFC имеется алгоритм сортировки. Но статические правила не всегда приемлемы. По этой причине в RFC также требуется, чтобы системный администратор имел возможность динамически изменять сортировку. В реализации glibc это можно делать через файл /etc/gai.conf.

Каждая строка файла настройки состоит из ключевого слова и его параметров. Пробельные символы в любом месте игнорируются. Строки, начинающиеся с '#', являются комментариями и игнорируются.

Распознаваемые ключевые слова:

label маска_сети приоритет
Значение, добавляемое в таблицу ярлыков (label), используемую в RFC 3484 при сортировке. Если определение label, имеющееся в файле настройке, существует, то таблица по умолчанию не используется. Все определения ярлыков таблицы по умолчанию, которые нужно поддерживать, будут являться дублями. За ключевым словом указывается маска сети и значение приоритета.
precedence маска_сети приоритет
Данное ключевое слово подобно label, но значение добавляется в таблицу приоритетов (precedence), как описано в RFC 3484. И здесь наличие единственной строки precedence в файле настройки отключает использование таблицы по умолчанию.
reload <yes|no>
Данное ключевое слово определяет будет ли процесс проверять изменился ли файл настройки с момента последнего чтения. Если значение yes, то файл перечитывается. Это может привести к проблемам в многонитевых приложениях. Значение по умолчанию no.
scopev4 маска значение
Добавляет новое правило в таблицу областей RFC 3484 для адресов IPv4. По умолчанию используются ID областей, описанные в разделе 3.2 RFC 3438. Изменять значения по умолчанию почти никогда не требуется.

ФАЙЛЫ

/etc/gai.conf

ПРИМЕР

Таблица по умолчанию согласно RFC 3484 должна задаваться следующим файлом настройки:

label  ::1/128       0
label  ::/0          1
label  2002::/16     2
label ::/96          3
label ::ffff:0:0/96  4
precedence  ::1/128       50
precedence  ::/0          40
precedence  2002::/16     30
precedence ::/96          20
precedence ::ffff:0:0/96  10