DIG(1) FreeBSD 一般コマンドマニュアル DIG(1)
名称
dig − ドメイン名問い合わせパケットをネームサーバに送る |
書式
dig [@server] domain [〈query-type〉] [〈query-class〉] [+〈query-option〉] [−〈dig-option〉] [%comment] |
解説 |
dig (ドメイン情報手探り器; domain information groper) は、 DNS (Domain Name System) サーバから情報を集めるために使われる柔軟なコマンドラインツー ルです。 dig は 2 つのモードを持っています。これは、1 つの問い合わせを行 う単純な対話的利用モードと、いくつかの問い合わせ行のリスト中の各問い合わ せを実行するバッチモードです。すべての問い合わせオプションは、コマンドラ インから利用可能です。 普通の簡単な dig の使用法は、以下のような形式です。 dig @server domain query-type query-class ここで、 |
server
は、ドメイン名かドット表記のインターネットアドレス (IPv4/IPv6) のどちらかです。もし、このオプションフィールドが 省略された場合、 dig は、そのマシンのデフォルトのネームサーバ を利用しようとします。 注:
ドメイン名が指定された時は、ドメイン名システムリゾルバ (
つまり、BIND) を使うことで解決しようとします。システムが DNS
を提供していない時は、ドット形式のアドレスを指定する必要があ
ります。利用できるサーバがどこかにある場合は、必要なことは
/etc/resolv.conf が存在し、 server
自身が解決できるように、そ
のデフォルトネームサーバがどこにあるかが記述されていることだ
けです。 /etc/resolv.conf についての情報は
resolver(5) を参照 してください。 警告:
/etc/resolv.conf を変更すると、標準のリ
ゾルバライブラリと (潜在的に) それを使ういくつかのプログラム
に影響を与えます。オプションとして、ユーザは環境変数
LOCALRES を設定し、 /etc/resolv.conf
の代わりに使うファイルの名前を指 定できます。 ( domain query-type a T_A ネットワークアドレス (完全なリストは、RFC 1035 を参照してください。) query-class in C_IN (完全なリストは、RFC 1035 を参照してください。) 注: ‘‘any’’ は、 クラスや問い合わせの タイプを指定するために 使われます。 dig は、最初に現れた ‘‘any’’ を query-type = T_ANY として解析します。 query-class = C_ANY にするためには、 ‘‘any’’ を 2 度指定するか、 −c オプション(以下参照)を利用して 問い合わせクラスを指定しなければなりません。 その他のオプション %ignored-comment dig @128.9.0.32 %venera.isi.edu mx isi.edu |
−〈dig option〉
‘‘−’’ は、 dig の操作に影響を与えるオプションを指定するために 使われます。以下のオプションが現在利用可能です ( 便利であるか どうかは保証しません )。 −x dot-notation-address −x IPv6-address −f file −T time −p port −P[ping-string] ping −s −server_name −56 −3 |
オプションの ‘‘ping-string’’ が存在した時は、シェ ルコマンドでは ‘‘ping −s’’ を置き換えます。 |
−t query-type
問い合わせのタイプを指定します。タイプフィールド 内の整数値か、上で述べたニーモニック表現 (つまり mx = T_MX ) かで指定することができます。 −c query-class −k keydir:keyname −envsav 注: LOCALDEF は、 dig のリゾルバ固有であり、標準 のリゾルバライブラリの操作には影響を与えません。 dig が実行される度に、 ‘‘./DiG.env’’ またはシェル 環境変数 LOCALDEF で指定されたファイルが探されま す。そのようなファイルが存在し読める場合は、引数 を解析する前にこのファイルから環境が読み込まれま す。 −envset −[no] stick +〈query-option〉 + keyword [=value] |
ほとんどのキーワードは、省略が可能です。 ‘‘+’’ オプションの解 釈は非常に単純です。値はキーワードとスペースで区切ってはなり ません。以下のキーワードが現在利用可能です。 |
キーワード |
省略形 |
意味 [デフォルト] |
[no] debug (deb)
デバッグモードを変更 [deb] 再試行回数と 時間のオプションは、問い合わせデータグラムを送る 際に、リゾルバライブラリによって使われる再送戦略に影響を与え ます。アルゴリズムは以下の通りです for i = 0 to retry - 1 |
send_query |
||
wait((time * (2**i)) / num_servers) |
end (注: dig はいつも ‘‘num_servers’’ として値 1 を使います。) |
詳細 |
dig は、かつて BINDの resolver(3) ライブラリの変更版を要求しました。 BIND のリゾルバは、(BIND 4.9のように) dig を正しく動作させるようになって来てい ます。本質的には、 dig は、引数の解釈と適切なパラメータ設定を(見事にでは なく)卒直に行うものです。 dig はリゾルバの関数 res_init(), res_mkquery(), res_send() を使い、また _res 構造体を操作します。 |
環境変数
LOCALRES
/etc/resolv.conf の代わりに使うファイル 上述した −envsav,
−envset, 関連ファイル |
/etc/resolv.conf
初期状態のドメイン名とネームサーバのアドレス 関連項目 |
named(8), resolver(3), resolver(5), nslookup(8) |
規格
RFC 1035 |
作者
Steve Hotz hotz@isi.edu |
謝辞
dig は、Andrew Cherenson によって書かれた nslookup(8) の関数を使っていま す。 |
バグ
dig は "潜行性機能過多" を患っています。これは開発中に潜在的な用途をいく つも考えていた結果です。苛酷なダイエットをしたらきっとよくなるでしょう。 同様に、表示フラグとそれで指定できる表示項目の粗さとから、これらがその場 限りの必要性から追加されたものだということがわかるはずです。 リゾルバ中のどこかで問題が発生した時に、 dig はうまく (しかるべき終了ス テータスで) 終了してくれるとは限りません。 ( |
注: 大概のよくある終了条件はきちんと処理できます) 。これは、特にバッチモードで実行している時に頭の痛い問題です。異常終了し (さらにそれが捕捉されなかっ) た時には、バッチ全体が終了してしまいますが、そのようなイベントが捕捉された時には、 dig はそのまま次の問い合わせを続けるだけです。 4th Berkeley Distribution August 30, 1990 4th Berkeley Distribution