2026年8月2日

2026年8月2日

nslookupとdigでDNSを確認する方法

はじめに

DNSはインターネットの根幹をなす名前解決の仕組みです。サイト移転、メール設定、SSL証明書発行などサーバー運用のあらゆる場面でDNSレコードの確認が必要となります。

本記事ではdignslookupを使ってA/AAAA/MX/TXT/CNAMEなど各種レコードを調べる方法と、DNSキャッシュやTTLの扱いまで解説します。

症状・背景

  • ドメインの正引きや逆引きを確認したい
  • メール設定(MX/SPF/DKIM)を検証したい
  • DNS変更が反映されているか確認したい
  • 権威DNSとキャッシュDNSの応答を比較したい

手順・設定方法

ステップ1: 基本的な名前解決を行う

# digコマンドのインストール
sudo apt install -y dnsutils         # Debian/Ubuntu
sudo dnf install -y bind-utils       # RHEL/Rocky

# Aレコードを引く
dig example.com A

# 簡潔表示(+short)
dig +short example.com

# nslookup版
nslookup example.com

ステップ2: 各種DNSレコードを確認する

# MXレコード(メールサーバー)
dig example.com MX +short

# TXTレコード(SPF/DKIM/DMARCなど)
dig example.com TXT +short

# CNAMEレコード
dig www.example.com CNAME +short

# AAAA(IPv6)レコード
dig example.com AAAA +short

# NSレコード(権威DNS)
dig example.com NS +short

# すべて取得(ALL)
dig example.com ANY

ステップ3: 権威DNS・キャッシュDNSを指定する

# 指定したDNSサーバーに問い合わせ
dig @8.8.8.8 example.com

# Cloudflare DNSで確認
dig @1.1.1.1 example.com

# 権威DNSに直接問い合わせ
dig @ns1.example.com example.com SOA

# 詳細表示(トレース)
dig +trace example.com

# 短縮回答付き
dig @8.8.8.8 example.com +noall +answer

ステップ4: 逆引きとデバッグ

# IPアドレスから逆引き
dig -x 93.184.216.34
nslookup 93.184.216.34

# DNS応答時間の測定
dig example.com | grep "Query time"

# 特定レコードのTTLを確認
dig example.com +noall +answer

# DNSSECの検証
dig +dnssec example.com

注意事項

  • nslookupは古くから存在するが、dig/hostの利用が現在の推奨
  • DNSはローカルキャッシュやリゾルバキャッシュの影響を受けるため、@で直接問い合わせる
  • TTLが大きいレコードの変更は反映に時間がかかる
  • digの+traceはルートDNSから順に追跡できるが時間がかかる

まとめ

1. digは機能豊富、nslookupは対話モードもあるシンプル系

2. +shortで必要情報のみ簡潔表示が可能

3. @サーバーで特定DNSへ直接問い合わせ

4. -xで逆引き、ANYで全レコードを一括確認

関連記事:

お気軽にご相談ください

お見積りへ お問い合わせへ