RESOLV.CONF
Section: Linux Programmer's Manual (5)
Updated: 2009-03-01
Index
JM Home Page
roff page
名前
resolv.conf - レゾルバ設定ファイル
書式
/etc/resolv.conf
説明
resolver
は、インターネットのドメインネームシステム (DNS) へのアクセスを提供する
C ライブラリのルーチン群である。
レゾルバ設定ファイルには、レゾルバルーチンがプロセスによって最初に
起動されたときに読み込まれる情報が格納されている。
このファイルは人間に可読なように設計されている。
キーワードと値のリストが含まれ、いろいろなタイプのレゾルバ情報を提供する。
普通に設定されたシステムでは、このファイルは必要ない。
問い合わせをされる唯一のネームサーバはローカルマシン上にある。
ドメイン名はホスト名から決定され、
ドメインの検索パスはドメイン名から作成される。
この状態を変更するための設定オプションには、以下のようなものがある。
- nameserver ネームサーバの IP アドレス
-
レゾルバが問い合わせをするネームサーバの
(ドット表記の) インターネットアドレス。
このキーワード 1 つごとに 1 台づつ、
MAXNS
台 (現状では 3 台、<resolv.h> を参照) までのネームサーバをリストできる。
複数のサーバが指定された場合、レゾルバライブラリは
リストされた順に問い合わせを行う。
nameserver エントリがない場合、
デフォルトではローカルマシン上のネームサーバが使われる。
(ここで使われるアルゴリズムは以下のようなものである。
はじめにネームサーバに問い合わせを試みる。
この問い合わせがタイムアウトになった場合、
次のネームサーバに問い合わせを試みる。
これをネームサーバがなくなるまで続ける。
それでも応答がない場合は、リトライ最大回数に達するまで
全てのネームサーバに問い合わせを繰り返す。)
- domain ローカルドメイン名
-
このドメインにある名前の問い合わせのほとんどに、
このローカルドメインにおける短い名前を使用することができる。
domain エントリがない場合、ドメイン名は
gethostname(2)
で返されるローカルホスト名から決定され、
最初の aq.aq 以降の全ての部分がドメイン名とされる。
このホスト名にもドメイン部を含んでいない場合、ルートドメインが仮定される。
- search ホスト名ルックアップのための検索リスト
-
検索リストは通常ローカルドメイン名から決定される。
デフォルトでは、検索リストはローカルドメイン名のみである。
これを変更するには、search キーワードの後に
希望するドメイン検索パスをスペースまたはタブで区切ってリストすればよい。
ドットの数が
ndots
(デフォルトでは 1) より少ないレゾルバの問い合わせは、
一致するものが見つかるまで検索パスの各要素を順に使って試す。
複数のサブドメインを持つ環境では、
第三者による攻撃 (man-in-the-middle attack) と
ルート DNS サーバへの不必要なトラフィックを避けるために、
以下の
options ndots:n
を読んでほしい。
このプロセスは遅く、リストされたドメインがローカルのものでない場合、
多大なネットワークトラフィックを発生させることに注意すること。
さらに、これらのドメインのいずれかひとつにでも適切なサーバがない場合、
問い合わせがタイムアウトになる点にも注意すること。
-
現状では、検索リストは 6 ドメイン・計 256 文字に制限されている。
- sortlist
-
このオプションを使うと、
gethostbyname(3)
で返されるアドレスをソートさせることができる。
sortlist は IP アドレスとネットマスクのペアで指定される。
ネットマスクは省略可能であり、
デフォルトではネットに対するデフォルトのネットマスクである。
IP アドレスとオプションのネットマスクのペアはスラッシュで区切る。
最大 10 組のペアを指定できる。
以下に例を示す。
sortlist 130.155.160.0/255.255.240.0 130.155.0.0
- options
-
options により、レゾルバの内部変数を変更することができる。
書式は以下の通りである。
-
-
options option ...
ここで option は次のうちのいずれかである。
- debug
-
_res.options
に
RES_DEBUG
を設定する。
- ndots:n
-
「最初の完全な名前での問い合わせが実行される前に、
res_query(3)
(resolver(3)
を参照) に与えられる名前に含まれているべきドットの数の閾値」を設定する。
n のデフォルトは 1 である。
これは、名前にドットがある場合、search list の要素が付加される前に、
その名前が完全な名前として最初に試されるということを意味している。
このオプションの値の上限は 15 であり、黙ってこの値まで切り詰められる。
- timeout:n
-
「レゾルバが他のネームサーバで問い合わせをリトライする前に、
リモートネームサーバからの応答を待つ時間」を設定する。
単位は秒で、デフォルトは
RES_TIMEOUT
である
(現状では 5 秒、<resolv.h> を参照)。
このオプションの値の上限は 30 であり、黙ってこの値まで切り詰められる。
- attempts:n
-
「レゾルバが諦めて呼び出し元のアプリケーションにエラーを返すまでに、
ネームサーバに問い合わせを行う回数」を設定する。
デフォルトは
RES_DFLRETRY
回である
(現状では 2 回、<resolv.h> を参照)。
このオプションの値の上限は 5 であり、黙ってこの値まで切り詰められる。
- rotate
-
_res.options
に RES_ROTATE を設定する。
リストされているネームサーバから選ぶときに、
ラウンドロビン (round robin) 選択を行わせる。
リストされている全てのサーバで問い合わせの負荷を分散する効果があり、
最初にリストされたサーバに全てのクライアントが
毎回最初に問い合わせを行うわけではなくなる。
- no-check-names
-
_res.options
に
RES_NOCHECKNAME
を設定する。
入ってくるホスト名とメールアドレスに、
アンダースコア (_)・ASCII 以外の文字・制御文字といった
不正な文字が含まれていないかを調べる
最近の BIND のチェックを無効にする。
- inet6
-
_res.options
に
RES_USE_INET6
を設定する。このオプションが設定されると、
gethostbyname(3)
関数の内部で A レコードの問い合わせを行う前に
AAAA レコードの問い合わせを行うようになる。
また、AAAA レコードは見つからないが A レコードセットが存在する場合に、
IPv4 の応答を IPv6「トンネル形式」にマップするようになる。
- ip6-bytestring (glibc 2.3.4 以降)
-
_res.options
に
RES_USE_BSTRING
を設定する。このオプションが設定されると、IPv6 アドレスの検索で
RFC 2673 で規定された bit-label 形式が使用されるようになる。
このオプションが設定されない場合、nibble 形式が使用される。
- ip6-dotint/no-ip6-dotint (glibc 2.3.4 以降)
-
_res.options
への
RES_NOIP6DOTINT
のセット/クリアを行う。
このオプションがクリアされると
(ip6-dotint)、
IPv6 アドレスの検索が (非推奨の)
ip6.int
ゾーンで行われるようになり、
このオプションがセットされると
(no-ip6-dotint)、
IPv6 アドレスの検索がデフォルトの
ip6.arpa
ゾーンで行われるようになる。
このオプションはデフォルトでセットされる。
- edns0 (glibc 2.6 以降)
-
_res.options
に
RES_USE_EDNSO
をセットする。これにより、RFC 2671 で規定されている
DNS 拡張のサポートが有効になる。
domain と search キーワードは、互いに排他的である。
これらのキーワードが 2 つ以上記述されている場合、
最後に記述されているものが有効になる。
システムの resolv.conf ファイルにある search キーワードは、
スペースで区切った検索ドメインのリストを
環境変数
LOCALDOMAIN
に設定することにより、各プロセス毎に上書きすることができる。
システムの resolv.conf ファイルにある options キーワードは、
上の options セクションで説明したように、
スペースで区切ったレゾルバオプションのリストを
環境変数
RES_OPTIONS
に設定することにより、各プロセス毎に修正することができる。
キーワードと値は同じ行に書かなければならない。
また、(nameserver のような) キーワードが行の先頭になければならない。
値はキーワードの後にスペースで区切って続ける。
ファイル
/etc/resolv.conf,
<resolv.h>
関連項目
gethostbyname(3),
resolver(3),
hostname(7),
named(8)
BIND のネームサーバオペレーションガイド
Index
- 名前
-
- 書式
-
- 説明
-
- ファイル
-
- 関連項目
-
This document was created by
man2html,
using the manual pages.
Time: 03:26:52 GMT, April 25, 2010