名前

gai.conf - getaddrinfo(3) 設定ファイル

説明

getaddrinfo(3) の呼び出しでは、複数の答えが返る場合がある。 RFC 3484 によれば、 これらの答えは、 最も成功の可能性が高い答えがリストの先頭になるような順番に並び替えなければならない。 RFC には、 並び替えのアルゴリズムが書かれている。 しかしながら、 静的なルールが常に適切という訳ではない。 この理由から、 RFC では、 並び替え方法をシステム管理者が動的に変更できるようにすることも要求している。 glibc の実装では、 /etc/gai.conf ファイルでこれが実現できるようになっている。
設定ファイルの各行は、キーワードとそのパラメーターで構成される。 ホワイトスペースはどこにあっても全て無視される。 '#' で始まる行はコメントで、 無視される。
現在のところ、認識されるキーワードは以下の通りである。
label netmask precedence
The value is added to the label table used in the RFC 3484 sorting. If any label definition is present in the configuration file, the default table is not used. All the label definitions of the default table which are to be maintained have to be duplicated. Following the keyword, the line has to contain a network mask and a precedence value.
precedence netmask precedence
このキーワードは label に似ているが、 指定された値を RFC 3484 で規定された優先度テーブルに追加する点が異なる。 繰り返しになるが、 設定ファイルに precedence が一つでもあれば、デフォルトテーブルは使用されない。
reload <yes|no>
このキーワードは、 設定ファイルが前回の読み出し以降に変更されているかをプロセスが確認するかを制御する。 値が " yes" であれば、 ファイルが再読み込みされる。 再読み込みはマルチスレッドアプリケーションで問題を起こす可能性があり、 一般にはよい考えとは言えない。 デフォルトは " no" である。
scopev4 mask value
IPv4 アドレス用の RFC 3484 スコープテーブルに別のルールを追加する。 デフォルトでは、 RFC 3438 のセクション 3.2 で説明されているスコープ ID が使用される。 これらのデフォルト値の変更が必要になることはまずないだろう。

ファイル

/etc/gai.conf

バージョン

gai.conf ファイルは glibc バージョン 2.5 以降でサポートされている。

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

関連項目

getaddrinfo(3), RFC 3484

この文書について

この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。

Recommended readings

Pages related to gai.conf you should read also: