dig - DNS ルックアップユーティリティ
概要
dig [@server] [-b address] [-c class] [-f filename] [-k filename] [-m] [-p port#] [-q name] [-t
type] [-v] [-x addr] [-y [hmac:]name:key] [ [-4] | [-6] ] [name] [type] [class] [queryopt...]
dig [-h]
dig [global-queryopt...] [query...]
説明
dig は、DNS サーバーを照会するための柔軟なツールです。DNS ルックアップを実行し、照会された名前サーバーから返された応答を表示します。ほとんどの DNS 管理者は、その柔軟性、使いやすさ、および明確な出力により、dig を使用して DNS の問題をトラブルシューティングします。他のルックアップツールは、dig ほど多くの機能を持たない傾向があります。
dig は通常、コマンドライン引数で実行されますが、ファイルからルックアップ要求を読み込むバッチモードでも動作します。コマンドライン引数とオプションの簡単な概要は、-h オプションを指定すると表示されます。BIND 9 の dig 実装では、コマンドラインから複数のルックアップを送信できます。
特に指定しない限り、dig は /etc/resolv.conf にリストされている各サーバーを試します。使用可能なサーバーアドレスが見つからない場合、dig はクエリをローカルホストに送信します。
コマンドライン引数またはオプションが指定されていない場合、dig は「.」(ルート)に対して NS クエリを実行します。
ユーザーごとの dig のデフォルト設定は、${HOME}/.digrc で設定できます。このファイルは読み込まれ、コマンドライン引数が適用される前に、ファイル内のオプションが適用されます。-r オプションは、予測可能な動作を必要とするスクリプトでこの機能を無効にします。
IN および CH クラス名は、IN および CH トップレベルドメイン名と重複します。-t および -c オプションを使用して、タイプとクラスを指定するか、-q を使用してドメイン名を指定するか、または IN および CH を使用してこれらのトップレベルドメインを検索します。
簡単な使用法
dig の典型的な呼び出しは次のとおりです。
dig @server name type
ここで:
server は、照会する名前サーバーの名前または IP アドレスです。これは、ドットで区切られた 10 進形式の IPv4 アドレス、またはコロンで区切られた形式の IPv6 アドレスにすることができます。指定されたサーバー引数がホスト名の場合、dig はその名前を解決してから、その名前サーバーに照会します。
server 引数が指定されていない場合、dig は /etc/resolv.conf を参照します。アドレスがそこで見つかった場合、dig はそのアドレスの名前サーバーに照会します。-4 または -6 オプションのいずれかが使用されている場合、対応するトランスポートのアドレスのみが試行されます。使用可能なアドレスが見つからない場合、dig はクエリをローカルホストに送信します。名前サーバーからの応答が表示されます。
name は、ルックアップするリソースレコードの名前です。
type は、必要なクエリの種類を示します(ANY、A、MX、SIGなど)。type は、有効なクエリタイプにすることができます。type 引数が指定されていない場合、dig は A レコードの検索を実行します。
オプション
-4 このオプションは、IPv4 のみを使用するように指定します。
-6 このオプションは、IPv6 のみを使用するように指定します。
-b アドレス[#ポート]
このオプションは、クエリの送信元 IP アドレスを設定します。アドレスは、ホストのネットワークインターフェイスのいずれかに存在する有効なアドレス、または "0.0.0.0" または "::" である必要があります。オプションで、#ポートを付けてポートを指定できます。
-c クラス
このオプションは、クエリクラスを設定します。デフォルトのクラスは IN です。その他のクラスは、Hesiod レコードの場合は HS、Chaosnet レコードの場合は CH です。
-f ファイル
このオプションは、バッチモードを設定します。dig は、指定されたファイルから一連のルックアップリクエストを読み込んで処理します。ファイル内の各行は、コマンドラインインターフェイスを使用して dig にクエリとして提示されるのと同じように構成する必要があります。
-h 使用法の概要を表示します。
-k キーファイル
このオプションは、dig が TSIG または SIG(0) を使用してクエリに署名し、指定されたファイルからキーを読み取るように指示します。キーファイルは、tsig-keygen を使用して生成できます。TSIG 認証で dig を使用する場合、クエリされる名前サーバーは、使用されているキーとアルゴリズムを知っている必要があります。BIND では、これは、TSIG の場合は named.conf に適切なキーとサーバーステートメントを提供し、SIG(0) の場合はゾーンデータ内の KEY レコードを検索することで行われます。
-m このオプションは、メモリ使用量のデバッグを有効にします。
-p ポート
このオプションは、クエリをサーバー上の標準以外のポートに送信します。デフォルトのポートは 53 です。このオプションは、標準以外のポート番号でリッスンするように構成された名前サーバーをテストするために使用されます。
-q 名前
このオプションは、クエリするドメイン名を指定します。これにより、名前を他の引数と区別できます。
-r このオプションは、${HOME}/.digrc からのオプションを読み込まないように指定します。これは、予測可能な動作を必要とするスクリプトで役立ちます。
-t タイプ
このオプションは、クエリするリソースレコードタイプを示します。これは、有効なクエリタイプにすることができます。BIND 9 でサポートされているリソースレコードタイプである場合、タイプ名を指定できます(NS や AAAA など)。デフォルトのクエリタイプは A です。ただし、-x オプションを指定して逆引きを示す場合は例外です。ゾーン転送は、タイプを AXFR に指定して要求できます。増分ゾーン転送(IXFR)が必要な場合は、タイプを ixfr=N に設定します。増分ゾーン転送には、ゾーンの SOA レコードのシリアル番号が N だった時点からのすべての変更が含まれます。
すべてのリソースレコードタイプは、TYPE nn として表すことができます。ここで、nn はタイプの番号です。リソースレコードタイプが BIND 9 でサポートされていない場合、結果は RFC 3597 に記載されているように表示されます。
-u このオプションは、クエリ時間をミリ秒ではなくマイクロ秒で表示するように指定します。
-v このオプションは、バージョン番号を表示して終了します。
-x addr
このオプションは、アドレスを名前にマッピングするための簡易リバースルックアップを設定します。addr は、ドット区切りの IPv4 アドレスまたはコロン区切りの IPv6 アドレスです。-x オプションを使用すると、名前、クラス、およびタイプ引数を指定する必要はありません。dig は、94.2.0.192.in-addr.arpa のような名前に対して自動的にルックアップを実行し、クエリタイプとクラスをそれぞれ PTR と IN に設定します。IPv6 アドレスは、IP6.ARPA ドメインの下のニブル形式を使用してルックアップされます。
-y [hmac:]keyname:secret
このオプションは、指定された認証キーを使用して TSIG でクエリに署名します。keyname はキーの名前、secret は Base64 エンコードされた共有シークレットです。hmac はキーアルゴリズムの名前であり、有効な選択肢は hmac-md5、hmac-sha1、hmac-sha224、hmac-sha256、hmac-sha384、または hmac-sha512 です。hmac が指定されていない場合、デフォルトは hmac-md5 です。MD5 が無効になっている場合は、デフォルトは hmac-sha256 です。
注意:
-k オプションのみを使用し、-y オプションは使用しないでください。-y を使用すると、共有シークレットがコマンドライン引数としてプレーンテキストで提供されるためです。これは、ps1 の出力またはユーザーのシェルによって保持される履歴ファイルに表示される可能性があります。
クエリオプション
dig は、ルックアップの方法や結果の表示に影響を与える多くのクエリオプションを提供します。これらのオプションの一部は、クエリヘッダーのフラグビットを設定またはリセットし、一部は回答のどのセクションを表示するかを決定し、他のオプションはタイムアウトと再試行戦略を決定します。
各クエリオプションは、プラス記号 (+) で始まるキーワードによって識別されます。一部のキーワードはオプションを設定またはリセットします。これらには、文字列「no」を先頭に追加して、キーワードの意味を否定できます。他のキーワードは、オプションに値を割り当てます。たとえば、タイムアウト間隔です。これらは、+keyword=value の形式を持ちます。キーワードは省略できます。ただし、省略形が一意である必要があります。たとえば、+cd は +cdflag と同等です。クエリオプションは次のとおりです。
+aaflag、+noaaflag
このオプションは、+aaonly、+noaaonly の同義語です。
+aaonly、+noaaonly
このオプションは、クエリの aa フラグを設定します。
+additional、+noadditional
このオプションは、応答の追加セクションを [表示するか、表示しないか] を決定します。デフォルトでは、表示されます。
+adflag、+noadflag
このオプションは、クエリの AD (認証データ) ビットを [設定するか、設定しないか] を決定します。これは、サーバーに、応答と権威セクションのすべてが、サーバーのセキュリティポリシーに従ってセキュアとして検証されているかどうかを返すように要求します。AD=1 は、すべてのレコードがセキュアとして検証され、応答が OPT-OUT 範囲からのものではないことを示します。AD=0 は、応答の一部が安全でないか、検証されていないことを示します。このビットはデフォルトで設定されています。
+all、+noall
このオプションは、すべての表示フラグを設定またはクリアします。
+answer、+noanswer
このオプションは、応答の応答セクションを [表示するか、表示しないか] を決定します。デフォルトでは、表示されます。
+authority、+noauthority
このオプションは、応答の権威セクションを [表示するか、表示しないか] を決定します。デフォルトでは、表示されます。
+badcookie、+nobadcookie
このオプションは、BADCOOKIE 応答を受信した場合に、新しいサーバーCookieでルックアップを再試行します。
+besteffort, +nobesteffort
このオプションは、形式が正しくないメッセージの内容を表示しようとします。デフォルトでは、形式が正しくない応答は表示されません。
+bufsize[=B]
このオプションは、EDNS0を使用してUDPメッセージのバッファサイズをBバイトに設定します。このバッファの最大サイズと最小サイズは、それぞれ65535と0です。+bufsizeはデフォルトのバッファサイズを復元します。
+cd, +cdflag, +nocdflag
このオプションは、クエリでCD(チェック無効)ビットを[設定または設定解除します]。これにより、サーバーにDNSSEC検証を実行しないように要求します。
+class, +noclass
このオプションは、レコードを印刷するときにCLASSを[表示または非表示にします]。
+cmd, +nocmd
このオプションは、出力で、digのバージョンと適用されたクエリオプションを識別する最初のコメントの印刷を[切り替えます]。このオプションは常にグローバルな効果を持ち、グローバルに設定してから、個々のルックアップごとにオーバーライドすることはできません。デフォルトでは、このコメントが印刷されます。
+coflag, +co, +nocoflag, +noco
このオプションは、クエリでCO(コンパクトな存在拒否OK)EDNSビットを[設定または設定解除します]。設定されている場合、サーバーに、コンパクトな存在拒否応答が許容されることを伝えます。デフォルトは+nocoflagです。
+comments, +nocomments
このオプションは、出力で、パケットヘッダーとOPT疑似セクションに関する情報、および応答セクションの名前に関するいくつかのコメント行の表示を[切り替えます]。デフォルトでは、これらのコメントが印刷されます。
出力内の他の種類のコメントは、このオプションの影響を受けませんが、+cmd、+question、+stats、および+rrcommentsなどの他のコマンドラインスイッチを使用して制御できます。
+cookie=####, +nocookie
このオプションは、オプションの値とともに、COOKIE EDNSオプションを[送信または送信しません]。以前の応答からCOOKIEを再送信すると、サーバーは以前のクライアントを識別できます。デフォルトは+cookieです。
+traceが設定されている場合も、+cookieが設定されます。これは、名前サーバーからのデフォルトのクエリをより良くエミュレートするためです。
+crypto, +nocrypto
このオプションは、DNSSECレコードの暗号化フィールドの表示を[切り替えます]。これらのフィールドの内容は、ほとんどのDNSSEC検証エラーのデバッグには不要であり、削除すると、一般的なエラーをより簡単に確認できます。デフォルトでは、これらのフィールドが表示されます。 省略された場合、[省略]という文字列に置き換えられ、DNSKEYの場合、キーIDが[キーID = 値]として置き換えられます。
+defname, +nodefname
このオプションは非推奨であり、+search、+nosearchの同義語として扱われます。
+dns64prefix, +nodns64prefix
IPV4ONLY.ARPA AAAAを検索し、見つかったDNS64プレフィックスを印刷します。
+dnssec, +do, +nodnssec, +nodo
このオプションは、OPTレコードのDNSSEC OK(DO)ビットを設定することで、DNSSECレコードを送信するように要求します。
+domain=somename
このオプションは、検索リストに単一のドメインsomenameを含めるように設定し、/etc/resolv.confのドメインディレクティブで指定されているように、検索リスト処理を有効にします。+searchオプションが指定されているかのように動作します。
+edns[=#], +noedns
このオプションは、クエリで使用する EDNS バージョンを指定します。有効な値は 0 ~ 255 です。 EDNS バージョンを設定すると、EDNS クエリが送信されます。+noedns は、記憶された EDNS バージョンをクリアします。EDNS はデフォルトで 0 に設定されています。
+ednsflags[=#], +noednsflags
このオプションは、EDNS フラグビット (Z ビット) の指定された値を設定します。10 進数、16 進数、および 8 進数のエンコードが許可されます。名前付きのフラグ (例: DO、CO) を設定しても、無視されます。デフォルトでは、Z ビットは設定されていません。
+ednsnegotiation, +noednsnegotiation
このオプションは、EDNS バージョンネゴシエーションを有効/無効にします。デフォルトでは、EDNS バージョンネゴシエーションが有効になっています。
+ednsopt[=code[:value]], +noednsopt
このオプションは、コードポイント code とオプションのペイロード value (16 進文字列) を持つ EDNS オプションを指定します。code は、EDNS オプション名 (例: NSID または ECS) または任意の数値にすることができます。+noednsopt は、送信する EDNS オプションをクリアします。
+expire, +noexpire
このオプションは、EDNS Expire オプションを送信します。
+fail, +nofail
このオプションは、名前付きが SERVFAIL を受信した場合に、次のサーバーを試行するかどうかを指定します。デフォルトでは、次のサーバーを試行しません。これは、通常のスタブリゾルバーの動作とは逆です。
+fuzztime[=value], +nofuzztime
このオプションを使用すると、署名付きメッセージを生成するときに署名時間を指定できます。 値が指定されている場合は、1970 年 1 月 1 日 00:00:00 UTC からの秒数 (うるう秒は無視) になります。値が指定されていない場合は、1646972129 (2022 年 3 月 11 日金曜日 04:15:29 UTC) が使用されます。デフォルトは +nofuzztime であり、現在の時間が使用されます。
+header-only, +noheader-only
このオプションは、DNS ヘッダーのみを含むクエリを送信します。デフォルトでは、質問セクションが追加されます。クエリタイプとクエリ名は、このオプションが設定されている場合、無視されます。
+https[=value], +nohttps
このオプションは、名前サーバーにクエリするときに DNS over HTTPS (DoH) を使用するかどうかを示します。 このオプションが使用されている場合、ポート番号はデフォルトで 443 になります。クエリを送信するときは、HTTP POST リクエストモードが使用されます。
値が指定されている場合は、HTTP POST リクエストの URI に使用される HTTP エンドポイントとして使用されます。デフォルトは /dns-query です。たとえば、dig @example.com +https を実行すると、URI https://example.com/dns-query が使用されます。
+https-get[=value], +nohttps-get
+https に似ていますが、HTTP GET リクエストモードがクエリを送信するときに使用されます。
+https-post[=value], +nohttps-post
+https と同じです。
+http-plain[=value], +nohttp-plain
+https に似ていますが、HTTP クエリは暗号化されていないチャネルで送信されます。 このオプションが使用されている場合、ポート番号はデフォルトで 80 になり、HTTP リクエストモードは POST になります。
+http-plain-get[=value], +nohttp-plain-get
+http-plain に似ていますが、HTTP リクエストモードは GET になります。
+http-plain-post[=value], +nohttp-plain-post
+http-plain と同じです。
+identify, +noidentify
このオプションは、+short オプションが有効になっている場合に、応答を送信した IP アドレスとポート番号を表示 [または表示しない] ようにします。短い形式の応答が要求された場合、デフォルトでは、応答を提供したサーバーのソースアドレスとポート番号は表示されません。
+idn, +noidn
IDN 処理を有効にするか無効にします。デフォルトでは、入力クエリ名に対して IDN が有効になり、出力がターミナルに表示される場合にも有効になります。
dig の IDN 処理をオフにするには、IDN_DISABLE 環境変数を設定することもできます。
+ignore, +noignore
このオプションは、UDP 応答の切り捨てを無視 [または無視しない] ようにします。代わりに TCP で再試行します。デフォルトでは、TCP 再試行が実行されます。
+keepalive, +nokeepalive
このオプションは、EDNS Keepalive オプションを送信 [または送信しない] ようにします。
+keepopen, +nokeepopen
このオプションは、クエリ間で TCP ソケットを開いたままにする [または開いたままにしない] ようにし、各ルックアップの代わりに再利用します。デフォルトは +nokeepopen です。
+multiline, +nomultiline
このオプションは、SOA レコードなどのレコードを、人間が読めるコメントを含む詳細な複数行形式で表示 [または表示しない] ようにします。デフォルトでは、各レコードを 1 行で表示して、dig の出力の機械的な解析を容易にします。
+ndots=D
このオプションは、名前が絶対名と見なされるために、名前に出現する必要があるドットの数 (D) を設定します。デフォルト値は、/etc/resolv.conf の ndots ステートメントで定義されている値であり、ndots ステートメントが存在しない場合は 1 です。ドットの数が少ない名前は相対名として解釈され、+search が設定されている場合は、/etc/resolv.conf の search または domain ディレクティブにリストされているドメインで検索されます。
+nsid, +nonsid
有効にすると、このオプションは EDNS 名前サーバー ID 要求をクエリに含めます。
+nssearch, +nonssearch
このオプションが設定されている場合、dig は、ルックアップされている名前を含むゾーンの権限のある名前サーバーを見つけ、各名前サーバーがゾーンに対して持つ SOA レコードを表示しようとします。応答しなかったサーバーのアドレスも表示されます。
+onesoa, +noonesoa
有効にすると、このオプションは、AXFR を実行するときに最初の (開始) SOA レコードのみを出力します。デフォルトでは、開始 SOA レコードと終了 SOA レコードの両方を出力します。
+opcode=value, +noopcode
有効にすると、このオプションは DNS メッセージのオペコードを指定された値に設定 (復元) します。デフォルト値は QUERY (0) です。
+padding=value
このオプションは、EDNS Padding オプションを使用して、クエリパケットのサイズを value バイトのブロックになるようにパディングします。たとえば、+padding=32 は、48 バイトのクエリを 64 バイトにパディングします。デフォルトのブロックサイズは 0 で、パディングが無効になります。最大値は 512 です。通常、値は 128 などの 2 の累乗になることが予想されますが、必須ではありません。パディングされたクエリへの応答もパディングされる場合がありますが、TCP または DNS COOKIE を使用する場合にのみです。
+proxy[=src_addr[#src_port]-dst_addr[#dst_port]], +noproxy
このオプションが設定されている場合、dig はクエリに PROXYv2 ヘッダーを追加します。ソースアドレスと宛先アドレスが指定されている場合、ヘッダーにはそれらが含まれ、PROXY コマンドが使用されます。これは、リモートピアに対して、クエリが別のノードの代わりに送信されたものであり、PROXYv2 ヘッダーが元の接続のエンドポイントを反映していることを意味します。デフォルトのソースポートは 0 で、宛先ポートは 53 です。
暗号化された DNS トランスポートの場合、偶発的な情報漏洩を防ぐために、PROXYv2 ヘッダーは暗号化されます。ヘッダーは、ハンドシェイクプロセスが完了した後すぐに送信されます。
プレーンな DNS トランスポートの場合、PROXYv2 ヘッダーは暗号化されません。
アドレスが省略された場合、LOCAL コマンドセットを使用する PROXYv2 ヘッダーが代わりに追加されます。リモートピアの場合、これは、クエリがリレーされずに意図的に送信されたことを意味するため、実際の接続エンドポイントのアドレスを使用する必要があります。
+proxy-plain[=src_addr[#src_port]-dst_addr[#dst_port], +noproxy-plain
+[no]proxy と同じですが、暗号化の前に、ハンドシェイクメッセージが送信される前に PROXYv2 ヘッダーを送信するように dig に指示します。これにより、dig は PROXY プロトコル仕様で説明されているとおりに動作しますが、すべてのソフトウェアがそのような動作を期待するわけではありません。
ソフトウェアのドキュメントを参照して、このオプションが必要かどうかを確認してください (たとえば、dnsdist は、暗号化を使用する場合、TLS 経由で暗号化された PROXYv2 ヘッダーを送信することを期待しますが、HAProxy やその他の多くのソフトウェアパッケージは、プレーンなヘッダーを期待します)。
プレーンな DNS トランスポートの場合、このオプションは、上記で説明した +[no]proxy のエイリアスとして機能します。
+qid=value
クエリを送信するときに使用するクエリ ID を指定します。
+qr, +noqr
クエリメッセージを送信するときに表示するかどうかを切り替えます。デフォルトでは、クエリは表示されません。
+question, +noquestion
応答が返されたときに、クエリの質問セクションを表示するかどうかを切り替えます。デフォルトでは、質問セクションはコメントとして表示されます。
+raflag, +noraflag
クエリで RA (Recursion Available) ビットを設定するかどうかを切り替えます。デフォルトは +noraflag です。このビットは、QUERY に対してサーバーによって無視されます。
+rdflag, +nordflag
このオプションは、+recurse、+norecurse と同じです。
+recurse, +norecurse
クエリで RD (recursion desired) ビットを設定するかどうかを切り替えます。デフォルトではこのビットが設定されており、dig は通常、再帰クエリを送信します。+nssearch または +trace クエリオプションを使用すると、再帰は自動的に無効になります。
+retry=T
サーバーへの UDP および TCP クエリを T 回再試行するように設定します。デフォルトは 2 です。+tries とは異なり、これは最初のクエリを含みません。
+rrcomments, +norrcomments
出力でレコードごとのコメントを表示するかどうかを切り替えます (たとえば、DNSKEY レコードに関する人間が読めるキー情報)。デフォルトでは、コメントは表示されません(ただし、マルチラインモードがアクティブな場合は表示されます)。
+search, +nosearch
resolv.conf の searchlist または domain ディレクティブで定義された検索リストを使用するかどうかを切り替えます。検索リストはデフォルトでは使用されません。
`ndots` は `resolv.conf` (デフォルトは 1) で、`+ndots` によってオーバーライドできます。これは、名前が相対名として扱われ、最終的に検索が実行されるかどうかを決定します。
`+short`, `+noshort`
このオプションは、簡潔な回答を提供するかどうかを切り替えます。デフォルトでは、回答は冗長な形式で表示されます。このオプションは常にグローバルな効果を持ち、グローバルに設定してから個々の検索でオーバーライドすることはできません。
`+showbadcookie`, `+noshowbadcookie`
このオプションは、BADCOOKIE rcode を含むメッセージを、リクエストを再試行する前に表示するかどうかを切り替えます。デフォルトでは、メッセージは表示されません。
`+showbadvers`, `+noshowbadvers`
このオプションは、BADVERS rcode を含むメッセージを、リクエストを再試行する前に表示するかどうかを切り替えます。デフォルトでは、メッセージは表示されません。
`+showsearch`, `+noshowsearch`
このオプションは、中間結果を表示して検索を実行するか、または実行しないかを切り替えます。
`+split=W`
このオプションは、リソースレコード内の長い 16 進数または Base64 形式のフィールドを、W 文字 (W は 4 の倍数に切り上げられます) ごとに分割します。`+nosplit` または `+split=0` は、フィールドをまったく分割しないようにします。デフォルトは 56 文字、またはマルチラインモードがアクティブになっている場合は 44 文字です。
`+stats`, `+nostats`
このオプションは、統計の印刷を切り替えます。クエリがいつ実行されたか、応答のサイズなどです。デフォルトの動作は、各ルックアップの後にコメントとしてクエリの統計情報を印刷することです。
`+subnet=addr[/prefix-length], +nosubnet`
このオプションは、指定された IP アドレスまたはネットワークプレフィックスを含む EDNS CLIENT-SUBNET オプションを送信するかどうかを切り替えます。
`dig +subnet=0.0.0.0/0`、または単に `dig +subnet=0` は、空のアドレスとソースプレフィックス長 0 を含む EDNS CLIENT-SUBNET オプションを送信し、リゾルバーにクライアントのアドレス情報を使用してこのクエリを解決しないように指示します。
`+tcflag`, `+notcflag`
このオプションは、クエリ内の TC (Truncation) ビットを設定するかどうかを切り替えます。デフォルトは `+notcflag` です。このビットは、クエリに対してサーバーによって無視されます。
`+tcp`, `+notcp`
このオプションは、名前サーバーにクエリするときに TCP を使用するかどうかを示します。デフォルトの動作は、UDP を使用することです。ただし、`any` 型のクエリまたは `ixfr=N` クエリが要求された場合は、デフォルトは TCP になります。AXFR クエリは常に TCP を使用します。UDP クエリから TC=1 が返された場合に TCP での再試行を防ぐには、`+ignore` を使用します。
`+timeout=T`
このオプションは、クエリのタイムアウトを T 秒に設定します。デフォルトのタイムアウトは 5 秒です。T を 1 未満に設定しようとすると、サイレントに 1 に設定されます。
`+tls`, `+notls`
このオプションは、名前サーバーにクエリするときに DNS over TLS (DoT) を使用するかどうかを示します。このオプションが使用されている場合、ポート番号はデフォルトで 853 になります。
`+tls-ca[=file-name], +notls-ca`
このオプションは、TLS に依存して、DNS トランスポートでリモートサーバーの TLS 証明書検証を有効にします。証明書認証局の証明書は、指定された PEM ファイル (file-name) からロードされます。ファイルが指定されていない場合は、グローバル証明書ストアからデフォルトの証明書が使用されます。
+tls-certfile=ファイル名, +tls-keyfile=ファイル名, +notls-certfile, +notls-keyfile
これらのオプションは、TLSに依存するDNSトランスポートの証明書ベースのクライアント認証の状態を設定します。証明書チェーンファイルと秘密鍵ファイルの両方がPEM形式で存在する必要があります。両方のオプションは同時に指定する必要があります。
+tls-hostname=ホスト名, +notls-hostname
このオプションを使用すると、digはリモートサーバーのTLS証明書検証中に指定されたホスト名を使用します。それ以外の場合は、DNSサーバー名が使用されます。このオプションは、+tls-caが指定されていない場合は効果がありません。
+trace, +notrace
このオプションは、ルックアップされている名前の委任パスのトレースを切り替えます。トレースはデフォルトで無効になっています。トレースが有効になっている場合、digはルックアップされている名前を解決するために反復的なクエリを実行します。ルートサーバーからの参照を追跡し、ルックアップに使用された各サーバーからの応答を表示します。
@serverも指定されている場合、これはルートゾーン名のサーバーに対する初期クエリにのみ影響します。
+dnssecは、名前サーバーからのデフォルトのクエリをより適切にエミュレートするために、+traceが設定されている場合に設定されます。
delvの+nsオプションを使用して、ルートから名前の解決をトレースすることもできます(delvを参照)。
+tries=T
このオプションは、サーバーへのUDPおよびTCPクエリの試行回数をTに設定します(デフォルトは3)。Tがゼロ以下の場合、試行回数は1に自動的に切り上げられます。
+ttlid, +nottlid
このオプションは、レコードを出力するときにTTLを表示するかどうかを制御します。
+ttlunits, +nottlunits
このオプションは、TTLを人間が読みやすい時間単位(s、m、h、d、およびw)で表示するかどうかを制御します。これらは、それぞれ秒、分、時間、日、および週を表します。このオプションは、+ttlidを暗黙的に有効にします。
+unknownformat, +nounknownformat
このオプションは、不明なRRタイプのすべてのRDATAを不明なRRタイプ表現形式(RFC 3597)で出力します。デフォルトでは、既知のタイプのRDATAは、そのタイプの表現形式で出力されます。
+vc, +novc
このオプションは、名前サーバーにクエリするときにTCPを使用するかどうかを制御します。この代替構文は、+tcpのバックワード互換性のために提供されます。vcは「仮想回路」を意味します。
+yaml, +noyaml
有効にすると、このオプションは応答(および+qrが使用されている場合は送信クエリ)を詳細なYAML形式で出力します。
+zflag, +nozflag
このオプションは、DNSクエリの最後の未使用のDNSヘッダーフラグを設定するかどうかを制御します。このフラグはデフォルトではオフになっています。
複数のクエリ
BIND 9の実装では、コマンドラインで複数のクエリを指定できます(-fバッチファイルオプションもサポートされています)。これらのクエリはそれぞれ、独自のフラグ、オプション、およびクエリオプションを使用して指定できます。
この場合、各クエリ引数は、上記のコマンドライン構文の個別のクエリを表します。各クエリは、標準オプションとフラグ、ルックアップする名前、オプションのクエリタイプとクラス、およびそのクエリに適用するクエリオプションで構成されます。
グローバルなクエリオプションのセットを定義し、すべてのクエリに適用することもできます。 これらのグローバルなクエリオプションは、コマンドラインで指定される名前、クラス、タイプ、オプション、フラグ、およびクエリオプションの最初のタプルに先行する必要があります。グローバルなクエリオプション(+cmdおよび+shortオプションを除く)は、クエリ固有のクエリオプションのセットによってオーバーライドできます。たとえば、
dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr
は、digがコマンドラインからどのように使用されて、3つのルックアップを実行するかを示しています。www.isc.orgに対するANYクエリ、127.0.0.1の逆引きルックアップ、およびisc.orgのNSレコードに対するクエリです。グローバルなクエリオプションとして+qrが適用されているため、digは各ルックアップに対して行われた初期クエリを表示します。最後のクエリには、ローカルのクエリオプションとして+noqrが設定されており、digはisc.orgのNSレコードをルックアップするときに、初期クエリを表示しません。
戻りコード
digの戻りコードは次のとおりです。
0 DNSレスポンスを受信(NXDOMAINステータスを含む)
1 使用法エラー
8 バッチファイルをオープンできない
9 サーバーからの応答がない
10 内部エラー
ファイル
/etc/resolv.conf
${HOME}/.digrc
関連項目
delv(1), host(1), named(8), dnssec-keygen(8), RFC 1035.
バグ
クエリオプションが多すぎる可能性があります。
著者
Internet Systems Consortium
著作権
2025 Internet Systems Consortium