Digは、Domain Information Groperの頭字語であり、DNS情報のクエリと、それに関連する問題のトラブルシューティングに役立ちます。 digコマンドは、ネームサーバー、ホストアドレス、およびコマンドを使用してクエリを実行するさまざまなDNSレコードに関する情報を提供する一般的なコマンドラインネットワーク管理ツールです。 nslookupなどの古いツールに代わる、より柔軟で少数のツールです。
例を示すために、Ubuntu20.04を使用しました。この記事は、A、AAAA、MX、NS、PTR、TXT、DKIM、SPFなどのさまざまなDNSレコードを検索するのに役立ちます。インストールから始めましょう。
インストール
digツールは、さまざまなLinuxディストリビューションをサポートしています。以下は、いくつかの一般的なLinuxシステムにdigをインストールするためのコマンドです。
Ubuntu/Debianにインストール
$ sudo apt install dnsutils
Centos/Fedoraにインストール
$ sudo yum install bind-utils
バージョンチェックによるインストールの確認
$ dig –v
ドメイン「A」レコードのクエリ
デフォルトでは、digコマンドはDNS「A」レコード情報を提供します。ドメインをクエリした後の出力は次のとおりです。
$ dig google.com
ドメインをクエリした後に出力します。
上記の出力では、digコマンドは4つのセクションで出力を提供します。最初のセクションの最初の行には、検索するdigバージョンとドメイン名が表示されます。 2番目の行は、現在のコンテキストでデフォルトで(+ cmd)であるドメインを照会するために使用されるオプションを示しています。最後にヘッダーです。これは、クエリ中にサーバーが提供した応答です。ヘッダーのフラグセクションで、qr、rd、およびraは、回答形式を決定するクエリ、必要な再帰、および使用可能な再帰をそれぞれ参照します。
DNSルックアップの最初のセクション。
2番目のセクションでは、OPT PSEUDOSECTIONに使用される高度なデータ、DNS用拡張システム(EDNS)が表示され、UDPにUDPパケットサイズが表示されます。質問セクションには、digコマンドが送信したクエリデータが表示されます。ここで、INはインターネットを参照し、Aは必要なアドレスレコードを参照します。
DNSルックアップの2番目のセクション。
3番目のセクションは、要求されたクエリに対する回答を示しています。最初の列はdigコマンドクエリのサーバー名を示し、2番目の列はレコードが更新されるまでの設定された時間枠を示し、3番目の列はクエリのクラスを示し、4番目の列はコマンドクエリのDNSレコードを示し、最後の列は列には、ドメイン名にリンクされているipv4IPアドレスが表示されます。
DNSルックアップの回答セクション。
最後のセクションには、クエリのメタデータまたは統計が表示されます
DNSルックアップの最後のセクション。
ドメイン「AAAA」レコードのクエリ。
DNSレコードを照会するには、コマンドでレコードタイプを指定する必要があります。 + shortsを使用して出力を短縮できます。以下は、その動作の出力です。
$ dig +short google.com AAAA
AAAAレコード出力。
回答のみを表示するドメイン「NS」レコードのクエリ
次の例では、+ noallを使用すると、出力を提供しないすべての表示フラグがクリアされ、+ answerオプションを使用すると、回答セクションのみが出力されます。
$ dig google.com ‘NS’ +noall +answer
Nsレコード出力
複数のDNSレコードのクエリ。
digコマンドを使用して複数のDNSレコードを照会できます。この例では、digを使用してAレコードとTXTレコードをクエリします。
$ dig google.com +nocomments yahoo.com +noall +answer
複数のレコードをクエリしています。
ドメイン「MX」レコードのクエリ
MXは、電子メールをメールサーバーに転送するメール交換を指します。以下のコマンドでは、+nocommentsオプションを使用してコメントを除外しています。ルックアップするために、MXレコードはコマンドでMXにレコードタイプを指定します。
$ dig google.com MX +nocomments
MXレコード出力。
SPFレコードのクエリ
Sender Policy Framework(SPF)は、メール交換でドメインにメールを送信するための承認されたホストを示すために使用されます。次の例では、下線が引かれたセクションにドメインのSPFレコードが表示されます。
$ dig google.com TXT +noall +answer
SPFレコードルックアップ
DKIMレコードルックアップ
DomainKeys Identified Mail(DKIM)をクエリするには、セレクターが必要です。電子メールメッセージを認証するデジタル署名と暗号化キーを提供します。
ドメインのセレクターを見つける必要があります。グーグル/Gmailから送信されたメールの詳細を見ると、グーグルのセレクターを見つけることができます。同様に、他のドメインセレクターを見つけることができます。クエリを実行するには、次のようにコマンドを実行する必要があります。出力では、DNSレコードで公開されているDKIM署名を確認できます。
$ dig txt 20161025._domainkey.google.com
DKIMルックアップ
DNS逆引き参照
逆引きDNSを検索するには、サーバーのIPアドレスとともに-xオプションを使用する必要があります。次の例では、GoogleIPアドレスを使用して逆引きDNSを検索しています。
$ dig -x 142.250.182.238 +short
DNS逆引き参照。
結論
この記事では、digコマンドで提供されるオプションを使用してさまざまなDNSレコードを照会する方法を学習しました。この記事がさまざまなDNSレコードのクエリに役立つことを願っています。