名称
dnsquery — リゾルバを用いて DNS に問い合わせる
書式
dnsquery [−n nameserver] [−t type] [−c class] [−r retry] [−p period] [−d] [−s] [−v] host
解説
dnsquery プログラムは、BIND リゾルバのライブラリ呼び出しによって ネームサーバとやりとりする一般的なインタフェースです。 本プログラムはオペコード QUERY によるネームサーバ問い合わせを サポートしています。 本プログラムは、nstest, nsquery, nslookup のようなプログラムを 置き換えるあるいは補うものとして作成されました。 host と nameserver 以外の引数は大文字小文字を区別しません。
オプション
−n nameserver
問い合わせに用いるネームサーバ。 ネームサーバ指定は、w.x.y.z 形式のインターネットアドレス表記でも、 ドメインネーム表記でも構いません。 (デフォルト: /etc/resolv.conf の指定。)
−t type
関心あるリソースレコード型。型には以下のものがあります:
A
アドレス
NS
ネームサーバ
CNAME
正式名
PTR
ドメインネームへのポインタ
SOA
権威の開始 (Start of Authority)
WKS
よく知られたサービス (well-known service)
HINFO
ホスト情報
MINFO
メールボックス情報
MX
メールエクスチェンジ (mail exchange)
RP
責任者 (responsible person)
MG
メールグループメンバ
AFSDB
DCE または AFS サーバ
ANY
ワイルドカード
大文字小文字どちらでも使用できます。(デフォルト: ANY )。
−c class
関心あるリソースレコードのクラス。クラスには以下のものがあります:
IN
インターネット
HS
Hesiod
CHAOS
Chaos
ANY
ワイルドカード
大文字小文字どちらでも使用できます。(デフォルト: IN )。
−r retry
ネームサーバが応答しない場合のリトライ回数。(デフォルト: 4)
−p period
タイムアウト時間(秒)。(デフォルト: RES_TIMEOUT )。
−d
デバッグ機能を有効にする。リゾルバの options フィールドの RES_DEBUG ビットをセットします。(デフォルト: デバッグ機能オフ)
−s
パケットではなく ストリーム を用います。つまり、ネームサーバとの接続に UDP データグラムではなく、 TCP ストリームを用います。リゾルバの options フィールドの RES_USEVC ビットをセットします。(デフォルト: UDP データグラム)
−v
オプション ‘‘−s’’ と同じ意味です。
host
関心あるホスト名(あるいはドメイン名)。
関連ファイル
/etc/resolv.conf
デフォルトのネームサーバと検索リスト
<arpa/nameser.h>
利用できる RR タイプとクラスの一覧
<resolv.h>
リゾルバのフラグ一覧
診断
リゾルバが問い合わせの回答に失敗し、デバッグ機能が有効になっていない場合、 dnsquery は単に以下のようなメッセージを表示します:
Query failed (rc = 1): Unknown host
リターンコードの値は h_errno から得ます。
関連項目
nslookup(8), nstest(1), nsquery(1), named(8), resolver(5)
作者
Bryan Beecher
バグ
IN 以外のクラスを問い合わせると面白い結果が得られることがあります。 というのは、ネームサーバは普通、クラス IN のリソースレコードとして ルートネームサーバのリストだけしか持っていないからです。
本コマンドは、 inet_addr() を呼び出して ‘‘−n’’ オプションが 正しいインターネットアドレスかどうかを判断します。 残念ながら、 inet_addr() は一部の(正しくない)アドレス(例えば 1.2.3.4.5)に 対してセグメンテーションフォールトを起こすことがあるようです。