.\" %FreeBSD: src/contrib/bind/doc/man/dig.1,v 1.3 1999/11/30 02:52:54 peter Exp % .\" .\" ++Copyright++ 1993 .\" - .\" Copyright (c) 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" - .\" Portions Copyright (c) 1993 by Digital Equipment Corporation. .\" .\" Permission to use, copy, modify, and distribute this software for any .\" purpose with or without fee is hereby granted, provided that the above .\" copyright notice and this permission notice appear in all copies, and that .\" the name of Digital Equipment Corporation not be used in advertising or .\" publicity pertaining to distribution of the document or software without .\" specific, written prior permission. .\" .\" THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. DISCLAIMS ALL .\" WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL DIGITAL EQUIPMENT .\" CORPORATION BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL .\" DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR .\" PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS .\" ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS .\" SOFTWARE. .\" - .\" --Copyright-- .\" .\" Distributed with 'dig' version 2.0 from University of Southern .\" California Information Sciences Institute (USC-ISI). .\" .\" dig.1 2.0 (USC-ISI) 8/30/90 .\" .\" Original Regision: 1.1.1.1 .\" $FreeBSD: doc/ja_JP.eucJP/man/man1/dig.1,v 1.10 2001/07/29 05:14:50 horikawa Exp $ .Dd August 30, 1990 .Dt DIG 1 .Os BSD 4 .Sh 名称 dig \- ドメイン名問い合わせパケットをネームサーバに送る .Sh 書式 .Nm dig .Op Ic @ Ns Ar server .Ar domain .Op Aq Ar query-type .Op Aq Ar query-class .Op Ic + Ns Aq Ar query-option .Op Fl Aq Ar dig-option .Op Ar %comment .Sh 解説 .Ic dig (ドメイン情報手探り器; domain information groper) は、 DNS (Domain Name System) サーバから情報を集めるために使われる 柔軟なコマンドラインツールです。 .Ic dig は 2 つのモードを持っています。 これは、1 つの問い合わせを行う単純な対話的利用モードと、 いくつかの問い合わせ行のリスト中の各問い合わせを実行するバッチモードです。 すべての問い合わせオプションは、コマンドラインから利用可能です。 .Pp 普通の簡単な .Ic dig の使用法は、以下のような形式です。 .Pp .Bd -ragged -offset indent-two .Ic dig @ Ns Ar server domain query-type query-class .Ed .Pp ここで、 .Bl -tag -width Fl .It Ar server は、ドメイン名かドット表記のインターネットアドレスのどちらかです。 もし、このオプションフィールドが省略された場合、 .Ic dig は、そのマシンのデフォルトのネームサーバを利用しようとします。 .Pp .Em 注: ドメイン名が指定された時は、ドメイン名システムリゾルバ (つまり、BIND) を使うことで解決しようとします。システムが DNS を 提供していない時は、ドット形式のアドレスを指定する必要があります。 利用できるサーバがどこかにある場合は、必要なことは .Pa /etc/resolv.conf が存在し、 .Ar server 自身が解決できるように、そのデフォルトネームサーバがどこにあるかが 記述されていることだけです。 .Pa /etc/resolv.conf についての情報は .Xr resolver 5 を参照してください。 .Sy 警告: .Pa /etc/resolv.conf を変更すると、標準のリゾルバライブラリと .Pq 潜在的に それを使ういくつかのプログラムに影響を与えます。 オプションとして、ユーザは環境変数 .Ev LOCALRES を設定し、 .Pa /etc/resolv.conf の代わりに使うファイルの名前を指定できます。 .Po Ns Ev LOCALRES 変数は .Ic dig リゾルバ固有のもので、標準のリゾルバでは 参照されません .Pc 。 .Ev LOCALRES 変数が設定されていないか、 設定されたファイルが読み込めない場合は、 .Pa /etc/resolv.conf が使われます。 .It Ar domain は、あなたが情報を要求しているドメイン名です。 逆アドレスの問い合わせのための便利な方法は、 .Fl x オプションを参照してください(この節の .Sx その他のオプション の項で述べられています)。 .It Ar query-type は、あなたが要求している情報のタイプ(DNS 問い合わせタイプ)です。 省略された場合のデフォルトは、 .Dq Ar a .Pq Dv T_A = アドレス が使われます。以下のタイプが認識されます。 .Pp .Bl -hang -width "hinfo T_HINFO " -compact .It Ar a\ \ \ \ \ \ Dv T_A ネットワークアドレス .It Ar any\ \ \ \ Dv T_ANY 指定されたドメインのすべて/任意の情報 .It Ar mx\ \ \ \ \ Dv T_MX ドメインのメール交換情報 (MX) .It Ar ns\ \ \ \ \ Dv T_NS ネームサーバ .It Ar soa\ \ \ \ Dv T_SOA ゾーンの権威者を表すレコード .It Ar hinfo\ \ Dv T_HINFO ホスト情報 .It Ar axfr\ \ \ Dv T_AXFR ゾーン転送情報(権威を持ったサーバに尋ねなければなりません) .It Ar txt\ \ \ \ Dv T_TXT 任意の数の文字列 .El .Pp (完全なリストは、RFC 1035 を参照してください。) .It Ar query-class は、問い合わせで要求されるネットワーククラスです。 省略された場合のデフォルトは、 .Dq Ar in .Pq Dv C_IN = Internet です。 以下のクラスが認識されます。 .Pp .Bl -tag -width "hinfo T_HINFO " -compact .It Ar in\ \ \ \ \ Dv C_IN インターネットクラスドメイン .It Ar any\ \ \ \ Dv C_ANY すべて/任意のクラスの情報 .El .Pp (完全なリストは、RFC 1035 を参照してください。) .Pp .Em 注: .Dq Ar any は、 .Em クラス や問い合わせの .Em タイプ を指定するために使われます。 .Ic dig は、最初に現れた .Dq Ar any を .Ar query-type = Dv T_ANY として解析します。 .Ar query-class = Dv C_ANY にするためには、 .Dq any を 2 度指定するか、 .Fl c オプション(以下参照)を利用して問い合わせクラスを 指定しなければなりません。 .El .Ss その他のオプション .Bl -tag -width Fl .It % Ns Ar ignored-comment .Dq % は、単に解析されない引数を含むために使われます。 これは、 .Ic dig をバッチモードで実行する時に有効です。 問い合わせリスト中のすべての .Ar @server-domain-name を解決する代わりに、 そのオーバヘッドを避けつつコマンドライン上にドメイン名を書くことが出来ます。 以下の例を参照。 .Pp .Bd -ragged -offset indent-two .Ic dig @128.9.0.32 %venera.isi.edu mx isi.edu .Ed .Pp .It Fl Aq Ar dig option .Dq Fl は、 .Ic dig の操作に影響を与えるオプションを指定するために 使われます。以下のオプションが現在利用可能です ( 便利であるかどうかは保証しません )。 .Bl -tag -width Fl .It Fl x Ar dot-notation-address 逆アドレス変換を指定する便利な形式です。 .Dq Ic dig 32.0.9.128.in-addr.arpa の代わりに、 .Dq Ic dig -x 128.9.0.32 と指定できます。 .It Fl f Ar file .Ic dig のバッチモードのためのファイルです。ファイルは、 つづいて実行される問い合わせの指定 ( .Ns Ic dig のコマンドライン) の リストを含んでいます。 .Sq \&; , .Sq # , .Sq \en で始まる行は無視されます。その他のオプションは、 コマンドラインで現れるものは、個々のバッチによる問い合わせでも 影響があります。 .It Fl T Ar time バッチモードで実行した時、連続した問い合わせの始まる時間間隔を秒で与え ます。2 つ以上のバッチ .Ic dig コマンドの実行を大体同期することができる ようになります。デフォルトは 0 です。 .It Fl p Ar port ポート番号です。標準でないポート番号で待つネームサーバに問い合わせます。 デフォルトは 53 です。 .It Fl p Ns Bq Ar ping-string 問い合わせからかえってきた後で、 .Xr ping 8 コマンドを応答時間の比較のために実行します。これは、美しくないのですが、 シェルを呼び出します。統計の最後の 3 行がコマンドのために 表示されます。 .Pp .Bd -ragged -offset indent-two .Ic ping Fl s server_name 56 3 .Ed .Pp オプションの .Dq Ar ping-string が存在した時は、シェルコマンドでは .Dq Ic ping Fl s を置き換えます。 .It Fl t Ar query-type 問い合わせのタイプを指定します。タイプフィールド内の整数値か、 上で述べたニーモニック表現 (つまり .Ar mx = Dv T_MX ) かで 指定することができます。 .It Fl c Ar query-class 問い合わせのクラスを指定します。クラスフィールド内の整数値か、 上で述べたニーモニック表現 (つまり in = C_IN) で 指定することができます。 .It Fl k Ar keydir:keyname ディレクトリ keydir 中の TSIG キー名 keyname で、問い合わせます。 .It Fl envsav このフラグを指定すると、すべての引数が解析された後で .Ic dig 環境 (デフォルトや表示オプション等) を デフォルト環境としてファイルに保存します。 標準のデフォルトが気に入らず、 .Ic dig を使う度にたくさんのオプションを指定することが嫌な場合は便利です。 環境は、 .Ic dig 出力 (以下参照) で詳しく述べられるフラグと同じように、 リゾルバの状態変数フラグや、タイムアウト、再試行回数からなります。 シェル環境変数 .Ev LOCALDEF がファイルの名前に設定されている場合、 これが、デフォルトの .Ic dig 環境が保存される場所となります。 そうでない場合は、ファイル .Dq DiG.env が現在の作業ディレクトリに 作成されます。 .Pp .Em 注: .Ev LOCALDEF は、 .Ic dig のリゾルバ固有であり、 標準のリゾルバライブラリの操作には影響を与えません。 .Pp .Ic dig が実行される度に、 .Dq ./DiG.env またはシェル環境変数 .Ev LOCALDEF で指定されたファイルが探されます。そのようなファイルが 存在し読める場合は、引数を解析する前にこのファイルから環境が 読み込まれます。 .It Fl envset このフラグは、バッチ問い合わせを実行する時にだけ影響があります。 .Ic dig バッチファイル中で .Dq Fl envset が指定されていると、 この引数が解析された後の .Ic dig 環境は、バッチファイルが実行されている間もしくは、次の .Dq Fl envset が指定されるまでの間は、 デフォルトの環境となります。 .It Xo .Fl Op Cm no .Ns Cm stick .Xc このフラグは、バッチ問い合わせ実行にだけ影響を与えます。 これは、 .Ic dig 環境を .Ic dig バッチファイル中での 各問い合わせ (行) の前に (初期状態もしくは、 .Dq Fl envset で設定された) 元の状態に戻すことを指定します。 デフォルトの .Dq Fl nostick は、 .Ic dig 環境を回復しないという意味ですので、 .Ic dig バッチファイルの各行で指定されたオプションは、 後の行でもその効果が残ったままになります (つまり .Dq sticky 時のデフォルトのようには回復されません)。 .El .It Ic + Ns Aq Ar query option .Dq + はパケット問い合わせ中のオプション変更や .Ic dig 出力仕様を変更するために使われます。 これらの多くは、 .Xr nslookup 8 で受け入れられるパラメータと同じものです。 オプションが値を必要とする場合、その指定形式は以下のようになります。 .Pp .Bd -ragged -offset indent-two .Ic + .Ns Ar keyword .Ns Op = Ns Ar value .Ed .Pp ほとんどのキーワードは、省略が可能です。 .Dq + オプションの解釈は非常に単純です。 値はキーワードとスペースで区切ってはなりません。 以下のキーワードが現在利用可能です。 .Pp .Pp キーワード 省略形 意味 [デフォルト] .Pp .Bl -tag -width "[no]primary (ret) " -compact .It Xo .Op Cm no .Ns Cm debug\ \ \ \ .Pq Cm deb .Xc デバッグモードを変更 .Bq Cm deb .It Xo .Op Cm no .Ns Cm d2\ \ \ \ \ \ \ \ \ \ .Xc 追加のデバッグモードを変更 .Bq Cm nod2 .It Xo .Op Cm no .Ns Cm recurse\ \ .Pq Cm rec .Xc 再帰的探索を使うかどうか指定 .Bq Cm rec .It Xo .Cm retry= Ns Ar # .Cm \ \ \ \ \ .Pq Cm ret .Xc 再試行の回数を # に設定 .Bq 4 .It Xo .Cm time= Ns Ar # .Cm \ \ \ \ \ \ .Pq Cm ti .Xc タイムアウト時間を # 秒に設定 .Bq 4 .It Xo .Op Cm no .Ns Cm ko .Xc 繋げておくオプション(vc を暗黙指定) .Bq Cm noko .It Xo .Op Cm no .Ns Cm vc .Xc 仮想回線を使うかどうか指定 .Bq Cm novc .It Xo .Op Cm no .Ns Cm defname\ \ .Pq Cm def .Xc デフォルトドメイン名を使うかどうか指定 .Bq Cm def .It Xo .Op Cm no .Ns Cm search\ \ \ .Pq Cm sea .Xc ドメインサーチリストを使うかどうか指定 .Bq Cm sea .It Xo .Cm domain= Ns Ar NAME\ \ .Pq Cm do .Xc デフォルトドメイン名を .Ar NAME に指定 .It Xo .Op Cm no .Ns Cm ignore\ \ \ .Pq Cm i .Xc trunc. エラーを無視するかどうか指定 .Bq Cm noi .It Xo .Op Cm no .Ns Cm primary\ \ .Pq Cm pr .Xc プライマリサーバを使うかどうか指定 .Bq Cm nopr .It Xo .Op Cm no .Ns Cm aaonly\ \ \ .Pq Cm aa .Xc 権威を持った問い合わせのみのフラグ .Bq Cm noaa .It Xo .Op Cm no .Ns Cm cmd .Xc 解析された引数を表示 .Bq Cm cmd .It Xo .Op Cm no .Ns Cm stats\ \ \ \ .Pq Cm st .Xc 問い合わせの統計を表示 .Bq Cm st .It Xo .Op Cm no .Ns Cm Header\ \ \ .Pq Cm H .Xc 基本的なヘッダを表示 .Bq Cm H .It Xo .Op Cm no .Ns Cm header\ \ \ .Pq Cm he .Xc ヘッダフラグを表示 .Bq Cm he .It Xo .Op Cm no .Ns Cm ttlid\ \ \ \ .Pq Cm tt .Xc TTL を表示 .Bq Cm tt .It Xo .Op Cm no .Ns Cm cl .Xc クラス情報を表示 .Bq Cm nocl .It Xo .Op Cm no .Ns Cm qr .Xc 出て行った問い合わせを表示 .Bq Cm noqr .It Xo .Op Cm no .Ns Cm reply\ \ \ \ .Pq Cm rep .Xc 応答節を表示 .Bq Cm rep .It Xo .Op Cm no .Ns Cm ques\ \ \ \ \ .Pq Cm qu .Xc 質問節を表示 .Bq Cm qu .It Xo .Op Cm no .Ns Cm answer\ \ \ .Pq Cm an .Xc 回答節を表示 .Bq Cm an .It Xo .Op Cm no .Ns Cm author\ \ \ .Pq Cm au .Xc 権威節を表示 .Bq Cm au .It Xo .Op Cm no .Ns Cm addit\ \ \ \ .Pq Cm ad .Xc 追加節を表示 .Bq Cm ad .It Cm pfdef デフォルト表示フラグを設定 .It Cm pfmin 最小のデフォルト表示フラグを設定 .It Cm pfset= Ns Ar # 表示フラグを # に設定 (# は 16 進 /8 進/10 進が可能です) .It Cm pfand= Ns Ar # 表示フラグに # とのビット論理積 (and) 適用 .It Cm pfor= Ns Ar # 表示フラグに # とのビット論理和 (or) 適用 .El .Pp .Cm 再試行回数 と .Cm 時間 のオプションは、問い合わせデータグラムを送る際に、 リゾルバライブラリによって使われる再送戦略に影響を与えます。 アルゴリズムは以下の通りです .Pp .Bd -literal -offset indent for i = 0 to retry - 1 for j = 1 to num_servers send_query wait((time * (2**i)) / num_servers) end end .Ed .Pp (注: .Ic dig はいつも .Dq Li num_servers として値 1 を使います。) .El .Ss 詳細 .Ic dig は、かつて BINDの .Xr resolver 3 ライブラリの変更版を要求しました。 BIND のリゾルバは、(BIND 4.9のように) .Ic dig を正しく動作させるようになって来ています。本質的には、 .Ic dig は、引数の解釈と適切なパラメータ設定を(見事にではなく)卒直に行うものです。 .Ic dig はリゾルバの関数 .Fn res_init , .Fn res_mkquery , .Fn res_send を使い、また .Ft _res 構造体を操作します。 .Sh 環境変数 .Bl -tag -width "LOCALRES " -compact .It Ev LOCALRES .Pa /etc/resolv.conf の代わりに使うファイル .It Ev LOCALDEF デフォルトの環境ファイル .El .Pp 上述した .Fl envsav , .Fl envset , .Xo .Fl Op Cm no .Ns Cm stick .Xc オプションの説明も参照してください。 .Sh 関連ファイル .Bl -tag -width "/etc/resolv.conf " -compact .It Pa /etc/resolv.conf 初期状態のドメイン名とネームサーバのアドレス .It Pa \./DiG.env デフォルトオプションを保存するデフォルトファイル .El .Sh 関連項目 .Xr named 8 , .Xr resolver 3 , .Xr resolver 5 , .Xr nslookup 8 .Sh 規格 RFC 1035 .Sh 作者 Steve Hotz hotz@isi.edu .Sh 謝辞 .Ic dig は、Andrew Cherenson によって書かれた .Xr nslookup 8 の関数を使っています。 .Sh バグ .Ic dig は "潜行性機能過多" を患っています。 これは開発中に潜在的な用途をいくつも考えていた結果です。 苛酷なダイエットをしたらきっとよくなるでしょう。 同様に、表示フラグとそれで指定できる表示項目の粗さとから、 これらがその場限りの必要性から追加されたものだということが わかるはずです。 .Pp リゾルバ中のどこかで問題が発生した時に、 .Ic dig はうまく (しかるべき終了ステータスで) 終了してくれるとは限りません。 .Po Sy 注: 大概のよくある終了条件はきちんと処理できます .Pc 。 これは、特にバッチモードで実行している時に頭の痛い問題です。 異常終了し (さらにそれが捕捉されなかっ) た時には、 バッチ全体が終了してしまいますが、 そのようなイベントが捕捉された時には、 .Ic dig はそのまま次の問い合わせを続けるだけです。