名称


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
 -p タイムアウト時間(秒)。(デフォルト:
 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)に 対してセグメンテーションフォールトを起こすことがあるようです。

openSUSE Logo

コンテンツ