Linuxコマンド辞典 digコマンド(ネットワーク)
DNSサーバーに問い合わせて名前解決を行う「dig」コマンドの概要と使い方を記載しています。
RHEL Fedora CentOS Vine Deblan Ubuntu Plamo
参考サイト:Man page of INSTALL
目次
概要・使用方法
書式
$ dig [オプション] [@DNSサーバ] ホスト名/IPアドレス/ドメイン [検索タイプ][検索クラス][検索オプション・・・]
DNSサーバーに問い合わせて名前解決を行います。名前解決とはホスト名からIPアドレスに変換したり(正引き)、IPアドレスからホスト名に変換したり(逆引き)することです。digコマンドの出力は4つのセクションに分かれます。回答はANSWERセクションに表示されます。
オプション
DNSサーバ | 問い合わせするDNSサーバをIPアドレスかホスト名で指定する。指定しない場合は、/etc/resolv.confに記述されたDNSサーバを利用する | ||||||||||||||||||||
ホスト名/ドメイン名 | 問い合わせたいホスト名やドメイン名を指定する | ||||||||||||||||||||
IPアドレス | 問い合わせたいIPアドレスを指定する(-xオプションが必要) | ||||||||||||||||||||
-x | 逆引きで問い合わせる | ||||||||||||||||||||
-p ポート | ポート番号を指定する | ||||||||||||||||||||
-f ファイル | 指定したファイルに記述された問い合わせを処理する | ||||||||||||||||||||
+short | 簡潔に表示する | ||||||||||||||||||||
検索タイプ | 問い合わせタイプを指定する(デフォルトはA)
| ||||||||||||||||||||
検索クラス | ネットワーククラスを指定する。インターネットクラスドメインのinか、任意のクラス情報を示すanyのどちらかを指定する(デフォルトはin) 指定可能な検索クラス
| ||||||||||||||||||||
検索オプション | 問い合わせオプションや出力形式を変えるために利用する 検索オプション
|
DNSサーバにIPアドレスを問い合わせる
$ digドメイン名 or ホスト
実行結果
[rin@centos ~]$ dig www.google.com
; <<>> DiG 9.11.36-RedHat-9.11.36-3.el8_6.1 <<>> www.google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27707
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION: #<問い合わせ内容が表示
;www.google.com. IN A
;; ANSWER SECTION: #<回答が表示
www.google.com. 150 IN A 142.250.196.132
;; Query time: 9 msec
;; SERVER: 192.168.0.1#53(192.168.0.1)
;; WHEN: 水 12月 21 11:18:05 JST 2022
;; MSG SIZE rcvd: 59
DNSサーバに問い合わせる
検索オプションに「+short」を指定して目的の情報だけ表示する
$ dig +short @IPアドレス ドメイン名 or ホスト
実行結果
# dig +short @192.168.1.1 www.yahoo.co.jp DNSサーバー192.168.1.1に問い合わせ、www.yahoo.co.jpのAレコードを問い合わせる
# dig +short @192.168.1.1 www.yahoo.co.jp DNSサーバー192.168.1.1に問い合わせ、yahoo.co.jpのNSレコードを問い合わせる
# dig +short @192.168.1.1 www.yahoo.co.jp DNSサーバー192.168.1.1に問い合わせ、yahoo.co.jpのMXレコードを問い合わせる
逆引きを調べる(IPアドレスからホスト名を調べる)
$ dig +short @IPアドレス -x IPアドレス
実行結果
# dig +short @192.168.1.1 -x 49.222.33.44
メールサーバーを調べる
$ dig +short @IPアドレス -x IPアドレス
実行結果
# dig +short @192.168.1.1 -x 49.222.33.44
問い合わせ内容をまとめてバッチ処理する
実行結果
# cat /tmp/dig.txt #<問い合わせ内容を列挙
deer-n-horse.jp mx
gihyo.jp soa
netlab.jp ns
# dig +short @192.168.0.1 -f /tmp/dig.txt #-fオプションでテキストファイルを指定する