Webサイトの運営やネットワークのトラブルシューティングにおいて、ドメイン名からIPアドレスを特定する作業は非常に頻繁に行われます。
ネットワークの接続確認やDNSサーバーの設定反映状況をチェックする際に、最も手軽で強力なツールの一つがWindows標準のコマンドプロンプトに搭載されている「nslookup」です。
本記事では、エンジニアだけでなく一般のWeb担当者の方でも迷わずにドメインの情報を調べられるよう、nslookupの基本的な使い方から応用的なエラー対処法までを詳しく解説します。
なぜコマンドプロンプトでIPアドレスを調べるのか
インターネット上のWebサイトやメールサーバーは、本来「192.0.2.1」のような数字の羅列であるIPアドレスで識別されています。
しかし、人間にとって数字の羅列は覚えにくいため、代わりに「example.com」のようなドメイン名が使用されています。
このドメイン名とIPアドレスを紐付ける仕組みがDNS(Domain Name System)であり、その動作を確認するためにnslookupコマンドが必要不可欠です。
ブラウザでサイトが表示されない場合、原因がサーバー自体にあるのか、それともDNSの設定ミスにあるのかを切り分けるためにこのツールを使用します。
ネットワークトラブルの切り分け
特定のWebサイトにアクセスできない時、まず「ドメイン名が正しくIPアドレスに変換されているか」を確認する必要があります。
もしnslookupを実行して正しいIPアドレスが返ってこない場合、ドメインの有効期限切れやDNSサーバーの設定不備が疑われます。
サーバー移行時の反映確認
レンタルサーバーを移転した際、新しいサーバーのIPアドレスに切り替わったかどうかをリアルタイムで確認するのに役立ちます。
自分のパソコンが現在、新旧どちらのサーバーを参照しているかを即座に判断できるため、公開作業のミスを防ぐことができます。
nslookupの基本的な使い方
まずは、最もシンプルに特定のドメインのIPアドレスを調べる方法から見ていきましょう。
コマンドプロンプトの起動
Windowsのスタートメニューを開き、「cmd」と入力してコマンドプロンプトを起動してください。
あるいは、キーボードの「Windowsキー + R」を押し、「cmd」と入力してエンターキーを押すことでも起動可能です。
基本コマンドの実行
特定のドメインのIPアドレスを知りたい場合は、以下の形式でコマンドを入力します。
nslookup example.com
このコマンドを入力してエンターキーを押すと、即座に結果が表示されます。
以下は、実行した際に表示される典型的な出力結果の例です。
サーバー: UnKnown
Address: 192.168.1.1
権限のない回答:
名前: example.com
Addresses: 93.184.216.34
出力結果の読み方
出力結果の最初の2行(サーバーとAddress)は、現在あなたのパソコンが問い合わせに使用しているDNSサーバーの情報を示しています。
次に表示される「権限のない回答(Non-authoritative answer)」という項目が、調査対象のドメインに関する情報です。
「権限のない回答」とは、問い合わせたDNSサーバーがそのドメインの管理元ではなく、一時的なキャッシュから回答していることを意味します。
「Addresses」の後に表示されている数字が、そのドメインに関連付けられているIPアドレスです。
特定のDNSサーバーを指定して調査する方法
デフォルトの設定では、パソコンに設定されているプロバイダなどのDNSサーバーに問い合わせが行われます。
しかし、特定のDNSサーバー(Google Public DNSなど)を指定して、そこでの反映状況を調べたい場合もあります。
Google Public DNSを指定する場合
世界的に利用されているGoogleのDNSサーバー「8.8.8.8」を使用して調査を行うには、以下のように記述します。
nslookup example.com 8.8.8.8
この方法を使うことで、自分のネットワーク環境の影響を受けずに、世界標準のDNSサーバーがどのような値を返しているかを確認できます。
CloudflareのDNSを指定する場合
同様に、高速なDNSとして知られるCloudflareの「1.1.1.1」を使用することも可能です。
nslookup example.com 1.1.1.1
複数のDNSサーバーで結果を比較することで、情報の伝播(プロパゲーション)が正常に進んでいるかを判断する材料になります。
詳細なDNSレコードを調べる「対話モード」
nslookupには、コマンドを一度打つだけで終わる「非対話モード」と、連続して複数の調査を行う「対話モード」があります。
対話モードを使用すると、IPアドレス(Aレコード)以外の詳細なレコード情報も簡単に取得できます。
対話モードの開始方法
引数を付けずに「nslookup」とだけ入力してエンターキーを押すと、対話モードに入ります。
nslookup
既定のサーバー: UnKnown
Address: 192.168.1.1
>
画面に「>」というプロンプトが表示されれば、対話モードの状態です。
MXレコード(メールサーバー)を調べる
メールの配送先を指定するMXレコードを調べたい場合は、以下のコマンドを順に入力します。
set type=mx
example.com
これにより、そのドメイン宛のメールがどのサーバーに配送される設定になっているかが表示されます。
CNAMEレコードやTXTレコードを調べる
別名を定義するCNAMEレコードや、ドメイン認証などで使われるTXTレコードも同様の手順で確認できます。
| レコードの種類 | 入力するコマンド | 主な用途 |
|---|---|---|
| Aレコード | set type=a | IPv4アドレスの確認 |
| AAAAレコード | set type=aaaa | IPv6アドレスの確認 |
| MXレコード | set type=mx | メールサーバー情報の確認 |
| TXTレコード | set type=txt | SPF設定やドメイン所有権の確認 |
| NSレコード | set type=ns | 権限を持つネームサーバーの確認 |
| 全てのレコード | set type=any | 公開されている全レコードの一括確認 |
対話モードの終了
調査が終わったら、「exit」と入力してエンターキーを押すと、通常のコマンドプロンプトに戻ります。
nslookupでよく遭遇するエラーと対処法
コマンドを実行した際、期待した結果が得られずエラーメッセージが表示されることがあります。
代表的なエラーとその原因を知っておくことで、トラブルの早期解決に繋がります。
Non-existent domain (NXDOMAIN)
このエラーは、指定したドメイン名がDNSサーバー上に存在しないことを示しています。
ドメイン名のスペルミスがないか、あるいはドメインの有効期限が切れて削除されていないかを確認してください。
No response from server / DNS request timed out
問い合わせ先のDNSサーバーから応答がない場合に表示されるエラーです。
自身のインターネット接続が切断されているか、問い合わせ先のDNSサーバーがダウンしている可能性があります。
まずは「8.8.8.8」など別のDNSサーバーを指定して、接続が可能か試してみましょう。
Default Server: Unknown
コマンド起動時に「既定のサーバー: UnKnown」と表示されることがありますが、これは必ずしもエラーではありません。
利用しているルーターやDNSサーバーが、自身のホスト名を逆引き(IPから名前を特定)できない設定になっている場合に表示されます。
IPアドレスの調査自体には影響ありませんので、そのままコマンドを続けて問題ありません。
nslookupの応用:逆引き(PTRレコード)
ここまではドメイン名からIPアドレスを調べましたが、逆に「IPアドレスからドメイン名を特定する」ことも可能です。
これを「逆引き」と呼び、サーバーの信頼性を確認する際などに用いられます。
nslookup 93.184.216.34
IPアドレスを直接入力して実行すると、そのIPに紐付けられたホスト名が表示されます。
ただし、すべてのIPアドレスに対して逆引き設定がされているわけではないため、結果が表示されないケースもあります。
2026年現在のDNS調査における注意点
近年では、セキュリティの観点から「DNS over HTTPS (DoH)」や「DNS over TLS (DoT)」といった暗号化技術が普及しています。
Windows 11などの最新環境では、OSレベルでDNSクエリが暗号化される設定になっている場合があります。
nslookupコマンド自体は基本的な動作を維持していますが、ネットワーク環境によっては特定のパケットがセキュリティソフトにより制限される可能性も考慮しておきましょう。
また、CDN(Content Delivery Network)を利用しているサイトの場合、アクセスする場所によって返ってくるIPアドレスが異なるのが正常な動作です。
まとめ
nslookupは、コマンドプロンプトから手軽にドメインのIPアドレスや各種レコードを調査できる非常に便利なツールです。
基本的な「nslookup ドメイン名」という形を覚えるだけでも、Webサイトのトラブル対応能力は大幅に向上します。
また、必要に応じてGoogle Public DNSなどを経由して調査することで、より客観的なネットワークの状態を把握することが可能になります。
エラーが表示された際も、そのメッセージの意味を正しく理解すれば、問題の所在が自分のパソコンなのかサーバー側なのかを即座に切り分けられるようになります。
日頃からネットワークの状態を確認する習慣をつけ、nslookupを自在に使いこなせるようにしておきましょう。
