EN JA
RESOLVCONF(8)
RESOLVCONF(8) System Manager's Manual RESOLVCONF(8)

名称

resolvconf複数の DNS 設定を管理するためのフレームワーク

書式

resolvconf -I

resolvconf [ -m metric][ -p] -a interface < file

resolvconf [ -f] -d interface

resolvconf -il pattern

resolvconf -u

解説

resolvconf は、DHCP と VPN クライアントのような複数のソースから resolv.conf(5) ファイルを管理します。伝統的に、ホストは、たった 1 つのクライアントを実行し、それは、 /etc/resolv.conf を更新します。より現代のシステムは、しばしば有線と無線のインタフェースがあり、両方が同じネットワークにあるという保証はありません。 VPN の出現と他のタイプのネットワークデーモンで、多くのものが、現在、 /etc/resolv.conf の内容と競合します。

ファイルシステムの代わりに引数 -a interfacestdin(3) を通して、それらの resolv.conf(5) ファイルを resolvconf に送信するデーモンよって resolvconf は、これを解決します。次に resolvconf は、適当に /etc/resolv.conf を更新します。 libc 以外のローカルなレゾルバ (resolver) が dnsmasq(8) または named(8) のようにインストールされるとき、 resolvconf は、レゾルバが含むように設定されるべきであるファイルを提供します。

resolvconf は、プライベートとしてインタフェース resolv.conf をマークできます。これは、その resolv.conf にリストされたネームサーバが、同じファイルにリストされたドメイン/検索に対して問い合わせのためだけに使用されることを意味します。これは、libc 以外のローカルなレゾルバがインストールされるときだけ、動作します。ローカルなネームサーバを使用するために resolvconf を設定する方法については、 resolvconf.conf(5) を参照してください。

インタフェースがダウンするとき、 interface のための resolv.conf ファイルを削除する -d interface 引数を付けて resolvconf を呼び出すべきです。

ここに、 resolvconf にあるいくつかのオプションを示します:-

-I
状態ディレクトリ /var/run/resolvconf を初期化します。初期のシステムブートシーケンスが自動的にそれをクリーンにしない場合のみ、これを呼び出す必要があります。例えば、状態ディレクトリは、 /var/run 以外のどこかに移動されます。使用されるなら、できるだけシステムブートシーケンスの初期に、 resolvconf がインタフェースを追加するために使用される前に、一度だけ呼び出されるべきです。
-f
存在しないインタフェースを無視します。実際にインタフェースを削除するためだけに役に立ちます。
-i pattern
resolv.conf ファイルにある、オプションで pattern にマッチするインタフェースをリストします。
-l pattern
現在ある resolv.conf ファイルをリストします。 pattern が指定されるなら、それにマッチするインタフェースのためのファイルをリストします。
-m metric
追加するとき、インタフェースのメトリックを設定します、デフォルトは、0 です。低いメトリックは、優先されます。これは、リストされるとき、インタフェースのデフォルト順序に影響します。
-p
プライベートしてインタフェース resolv.conf をマークします。
-u
強制的に resolvconf に、すべての加入者を更新させます。 resolvconf は、既にそのインタフェースにあるものにマッチする resolv.conf を追加するとき、加入者を更新しません。

また、 resolvconf は、加入者によって使用される設計されたいくつかのオプションがあります:-

-v
加入者が容易にレゾルバを設定できるように、変数 DOMAINS、SEARCH と NAMESERVERS をエコーします。

インタフェースの順序

resolvconf が効率的に動作するためには、正しい順序でインタフェースに対して resolv.confs を処理しなければなりません。 resolvconf は、最初に、 interface_order リストからインタフェースを処理して、次に、メトリックがなくて、 dynamic_order リストにマッチするインタフェース、次に、順番にメトリックがあり、最終的にオペレーティングシステムの字句解析の順序の残りのインタフェースを処理します。これらのリストの詳細については、 resolvconf.conf(5) を参照してください。

実装に関する注

加入者に実行可能なビットがあるなら、実行され、そうでなければ、シェルスクリプトであると仮定され、サブシェルの現在の環境にソースされ (シェルスクリプトとして読み込まれ) ます。これは、加入者が速く残ることができるように行われますが、また、シェル言語に制限されません。

移植性のある加入者は、ブートするとき、 /usr と他のディレクトリが利用可能でないかもしれないので、 /bin/sbin の以外を使用するべきではありません。また、シェルの特有の機能を仮定することも賢明でないでしょう。

環境変数

IF_METRIC
-m オプションが存在していないなら、メトリックのために IF_METRIC を使用します。
IF_PRIVATE
プライベートしてインタフェース resolv.conf をマークします。

関連ファイル

/etc/resolvconf.conf
resolvconf のための設定ファイル。
/libexec/resolvconf
resolvconf が追加するか、削除するか、または更新するたびに実行する加入者のディレクトリ。
/libexec/resolvconf/libc.d
libc 加入者が実行された後に、実行される加入者のディレクトリ。
/var/run/resolvconf
resolvconf のための状態ディレクトリ。

歴史

resolvconf のこの実装は、openresolv と呼ばれ、 Thomas Hood によって書かれた Debian の resolvconf とコマンドラインで完全に互換性があります

バグ

resolvconf は、それに与えられたファイルのいずれも有効にしません。

libc 以外のローカルなレゾルバを実行するとき、利用者は、 resolvconf が生成するファイルを含むようにそれを設定する必要があります。利用者は、どのようにレゾルバを設定するかの説明書として resolvconf.conf(5) を調べるべきです。

作者

Roy Marples <roy@marples.name>

バグ

バグは、http://roy.marples.name/projects/openresolv に報告してください。
December 3, 2009 FreeBSD