Digは、DNS情報を収集するために使用される「DomainInformationGroper」の略です。通常、これは、DNSルックアップを検証し、DNS関連の問題をトラブルシューティングするためにシステムまたはネットワーク管理者によって使用されます。デフォルトでは、digコマンドは/etc/resolv.comにリストされているDNSサーバーにクエリを送信します。また、特定のDNSサーバーにクエリを実行することもできます。
このチュートリアルでは、実際の例を通じてdigコマンドの使用方法を示します。
前提条件
- Atlantic.Netクラウドプラットフォーム上のLinuxサーバー
- サーバーで構成されているrootパスワード
ステップ1-Atlantic.Netクラウドサーバーを作成する
まず、Atlantic.Netクラウドサーバーにログインします。 2GB以上のRAMを搭載したオペレーティングシステムとしてUbuntu、CentOS、またはRocky Linuxを選択して、新しいサーバーを作成します。 SSH経由でクラウドサーバーに接続し、ページの上部で強調表示されているクレデンシャルを使用してログインします。
サーバーにログインしたら、次のコマンドを実行して、ベースシステムを最新の利用可能なパッケージで更新します。
apt-get update -y
または
dnf update -y
ステップ2–digをインストールする
DebianおよびUbuntuオペレーティングシステムの場合、次のコマンドを使用してdigコマンドをインストールします。
apt-get install dnsutils -y
CentOSおよびRHELオペレーティングシステムの場合、次のコマンドを使用してdigコマンドをインストールします。
yum install bind9-utils -y
digコマンドをインストールした後、次のコマンドを使用してdigバージョンを確認します。
dig -v
サンプル出力:
DiG 9.9.5-3ubuntu0.19-Ubuntu
ステップ3–基本的なDigコマンド
オプションなしでdigコマンドを実行すると、ターゲットドメインのAレコードが表示されます。
たとえば、ドメインubuntu.orgのDNSルックアップを実行し、次のコマンドを実行します。
dig ubuntu.com
サンプル出力:
; <<>> DiG 9.9.5-3ubuntu0.19-Ubuntu <<>> ubuntu.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 9230 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;ubuntu.com. IN A ;; ANSWER SECTION: ubuntu.com. 77 IN A 91.189.88.181 ubuntu.com. 77 IN A 91.189.88.180 ;; Query time: 263 msec ;; SERVER: 127.0.1.1#53(127.0.1.1) ;; WHEN: Tue Aug 24 08:55:56 IST 2021 ;; MSG SIZE rcvd: 71
上記の出力では、主な情報は回答セクションにあります。
ステップ4–特定のDNSサーバーを使用したクエリ
オプションなしでdigコマンドを実行すると、/ etc/resolv.confで指定されたDNSサーバーが使用されます。特定のDNSサーバーを使用してドメインを照会することもできます。
次のコマンドを実行して、DNS4.4.4.4を使用してubuntu.comドメインにクエリを実行します。
dig @8.8.4.4 ubuntu.com
サンプル出力:
; <<>> DiG 9.9.5-3ubuntu0.19-Ubuntu <<>> @8.8.4.4 ubuntu.com ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 25217 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ;ubuntu.com. IN A ;; ANSWER SECTION: ubuntu.com. 40 IN A 91.189.88.181 ubuntu.com. 40 IN A 91.189.88.180 ;; Query time: 130 msec ;; SERVER: 8.8.4.4#53(8.8.4.4) ;; WHEN: Tue Aug 24 09:00:48 IST 2021 ;; MSG SIZE rcvd: 71
ステップ5–すべてのDNSレコードタイプのクエリ
すべてのDNSレコードの情報を取得する場合は、次のコマンドを実行します。
dig @8.8.4.4 ubuntu.com ANY +noall +answer
サンプル出力:
; <<>> DiG 9.9.5-3ubuntu0.19-Ubuntu <<>> @8.8.4.4 ubuntu.com ANY +noall +answer ; (1 server found) ;; global options: +cmd ubuntu.com. 3599 IN SOA ns1.canonical.com. hostmaster.canonical.com. 2018054375 10800 3600 604800 3600 ubuntu.com. 3599 IN MX 10 mx.canonical.com. ubuntu.com. 599 IN NS ns1.canonical.com. ubuntu.com. 599 IN NS ns2.canonical.com. ubuntu.com. 599 IN NS ns3.canonical.com. ubuntu.com. 59 IN AAAA 2001:67c:1360:8001::2b ubuntu.com. 59 IN AAAA 2001:67c:1360:8001::2c ubuntu.com. 59 IN A 91.189.88.180 ubuntu.com. 59 IN A 91.189.88.181
ステップ6–回答セクションのみのクエリ
オプション+noallを使用できます および+answer 回答セクションのみを表示します。
dig @8.8.4.4 ubuntu.com +noall +answer
サンプル出力:
; <<>> DiG 9.9.5-3ubuntu0.19-Ubuntu <<>> @8.8.4.4 ubuntu.com +noall +answer ; (1 server found) ;; global options: +cmd ubuntu.com. 12 IN A 91.189.88.181 ubuntu.com. 12 IN A 91.189.88.180
ステップ7–レコードのクエリ
DNSの「レコード」は、ドメイン名をIPアドレスにバインドするために使用されます。 + shortを使用できます 指定されたドメインのレコードを照会するオプション。
dig ubuntu.com A +short
サンプル出力:
91.189.88.180 91.189.88.181
ステップ8–NSレコードのクエリ
NSレコードには、ドメイン名の権限のあるDNSサーバーのリストの情報が含まれています。 NSオプションを使用して、NSレコードを照会できます。
dig +nocmd ubuntu.com NS +noall +answer
サンプル出力:
ubuntu.com. 714 IN NS ns2.canonical.com. ubuntu.com. 714 IN NS ns3.canonical.com. ubuntu.com. 714 IN NS ns1.canonical.com.
ステップ9–MXレコードのクエリ
MXレコードは、メールサーバーを指定するために使用されるメール交換レコードです。 MXオプションを使用して、MXレコードをクエリできます。
dig +nocmd ubuntu.com MX +noall +answer
サンプル出力:
ubuntu.com. 4502 IN MX 10 mx.canonical.com.
ステップ10–TTLレコードのクエリ
TTLオプションを使用してTTLレコードをクエリできます:
dig +nocmd ubuntu.com TTL +noall +answer
サンプル出力:
;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 50516 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;ubuntu.com. IN A ;; ANSWER SECTION: ubuntu.com. 59 IN A 91.189.88.180 ubuntu.com. 59 IN A 91.189.88.181 ;; Query time: 4 msec ;; SERVER: 127.0.1.1#53(127.0.1.1) ;; WHEN: Tue Aug 24 09:24:32 IST 2021 ;; MSG SIZE rcvd: 71
ステップ11–逆引き参照を実行する
DNSの逆引き参照では、IPアドレスに関連付けられているドメインとホスト名に関する情報が表示されます。 -xオプションの後にIPアドレスを使用して、DNSの逆引き参照を実行できます。
dig +answer -x 8.8.8.8
サンプル出力:
; <<>> DiG 9.9.5-3ubuntu0.19-Ubuntu <<>> +answer -x 8.8.8.8 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58576 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;8.8.8.8.in-addr.arpa. IN PTR ;; ANSWER SECTION: 8.8.8.8.in-addr.arpa. 7200 IN PTR dns.google. ;; Query time: 580 msec ;; SERVER: 127.0.1.1#53(127.0.1.1) ;; WHEN: Tue Aug 24 09:27:00 IST 2021 ;; MSG SIZE rcvd: 73
結論
上記のガイドでは、さまざまな例を通じて、digコマンドを使用してDNSサーバーにクエリを実行する方法を説明しました。これで、さまざまなオプションを使用してドメインのDNSルックアップを実行できます。 Altantic.NetのVPSで今すぐお試しください。