digコマンドの基本的な使い方

  • 56
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

About

digコマンドを理解していなかったので、この機会に基本的な使い方をまとめました。

digとは

domain information groperのこと。ネームサーバから情報を引き出すツール。

基本的な使い方

  • ドメイン名に対応するAレコードを取得する
$dig <domain>

; <<>> DiG 9.8.3-P1 <<>> ANY <domain>
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 29775
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 4, ADDITIONAL: 4
...
;; QUESTION SECTION:
...
;; ANSWER SECTION:
...
;; AUTHORITY SECTION:
...
;; ADDITIONAL SECTION:
...
;; Query time: 31 msec
;; SERVER: 61.122.116.147#53(61.122.116.147)
;; WHEN: Tue Jul 14 15:23:07 2015
;; MSG SIZE  rcvd: 285

ヘッダ・フッタを除くと最大で4つのセクションが表示される。QUESTIONが実行した検索内容、ANSWERが検索結果、AUTHORITYがANSWERに権威を持つDNSサーバ(NSレコード)、ADDITIONALは追加情報を示す。

  • ドメイン名に対応するNSレコードを取得する
$ dig NS <domain>
$ dig NS google.com

NSの部分に他のタイプを入れれば対応するレコードを確認できる(A/CNAME/ANYなど)

  • IPアドレスからドメイン名を取得する(逆引き)
$ dig -x <ipaddress>
  • 特定のネームサーバに対してQUERYを発行する
$ dig A <domain> @<name server>
$ dig A google.com @ns2.google.com

応用編

出力結果を短くする

$ dig google.com +short

インストール方法

centos系でdigを導入しようと思った時、sudo yum install digではインストールできません。

下記のパッケージを指定してインストールします。

$ sudo yum install bind-utils

ちなみにubuntuでは下記のようにインストールするようです。

$ sudo apt-get install dnsutils