この記事では、DNSサーバーと通信して名前解決の正引きと逆引きができるネットワークコマンド「nslookup」の使い方を説明します。
「nslookup」は「エヌエスルックアップ」と読みます。
「nslookup」を使うと、「yahoo.co.jp」の様なドメイン名からIPアドレスを調べることができます。(正引き)
また、その逆でIPアドレスからドメイン名を調べることもできます。(逆引き)
この様に、ドメイン名とIPアドレスの関連づけを調べることを名前解決といいます。
この記事では、Windowsのコマンドプロンプトでネットワークコマンド「nslookup」を使います。
コマンドプロンプトの基本操作についてはこちらの記事にまとめていますので、必要な方はご参照下さい。
目次
「nslookup」はDNSサーバーと通信して名前解決の正引きと逆引きができる
「nslookup」を使うと、「yahoo.co.jp」の様なドメイン名からIPアドレスを調べることができます。(正引き)
また、その逆でIPアドレスからドメイン名を調べることもできます。(逆引き)
コマンドプロンプトで「nslookup」を実行して「yahoo.co.jp」のIPアドレスを調べた結果が次の画像です。

DNSサーバーの設定が間違っていて通信できない時などは、この「nslookup」を使えば原因に気づくことができます。
Webブラウザでサイトにアクセスする時は、通常ドメイン名(yahoo.co.jpなど)で指定します。
この時、ドメインのIPアドレスを知るために、OSが裏で、ドメイン名を管理するDNSサーバーに問い合わせを行いIPアドレスを教えてもらっているのです。
この「名前からIPアドレスを調べるしくみ」そのものについては、別の記事でまとめています。そもそもDNSとは何かから知りたい方は、先にこちらを読むと分かりやすくなります。
「nslookup」は、DNSサーバーに問い合わせができるコマンドなのです。
Microsoft の公式リファレンスでも「ドメイン ネーム システム (DNS) インフラストラクチャの診断に使用できる情報を表示します」と説明されています。名前とIPアドレスの対応がおかしいときに、その場で確かめるための道具だと考えてください。
ノンネットワークエンジニアには少し難しいですが、なんとなくこんなことができるんだなと頭の片隅に覚えておきましょう。
「nslookup」コマンドの使い方
「nslookup」の使い方について説明していきます。
ノンネットワークエンジニアの方は、次の項目だけ読んでおけば十分です。
- よく使う書式
- 実行結果の見方(ポイントのみ)
もう少し詳しく知りたい方は、その先を読み進めていって下さい。
よく使う書式
ノンネットワークエンジニアが「nslookup」を使うなら、次の書式だけ覚えておきましょう。
nslookup
「nslookup」を実行すると対話型モードになります。
ノンネットワークエンジニアの方は、対話型モードがおすすめです。
対話モードでの簡単な使い方を説明します。
対話型モードに入る

最初に「nslookup」を実行し対話モードに入ります。
「既定のサーバー」にはDNSサーバーのドメイン名が表示されます。
ドメイン名が不明な場合は「UnKnown」が表示されます。
対話モードに入ると「>」が表示されます。
IPアドレスを問い合わせる

IPアドレスを問い合わせるには、ドメイン名を入力します。
例えば「yahoo.co.jp」を入力すると、IPアドレスを表示してくれます。
ドメイン名を問い合わせる

ドメイン名を問い合わせるには、IPアドレスを入力します。
例えば「183.79.135.206」と入力すると、該当するドメイン名を表示してくれます。
対話型モードを抜ける

対話型モードを抜けるには「exit」と入力します。
打つ前に確認したいときは、やりたいことを選ぶだけでコマンドを組み立てられる道具もあります。「ドメイン名からIPを引きたい」を選ぶと、この対話型モードに入る書式が出ます。ネットワークコマンドを作る
実行結果の見方(ポイントのみ)

- 検索に使ったDNSサーバの情報が表示されます。
- 検索結果の情報が表示されます。
上の画面を文字にすると、次のようになっています。
> yahoo.co.jp
サーバー: UnKnown ← ① どのDNSサーバーに聞いたか
Address: (DNSサーバーのIPアドレス)
権限のない回答:
名前: yahoo.co.jp ← ② 聞いた答え
Addresses: 183.79.135.206
182.22.59.229
見るのは②だけで十分です。①は「どのDNSサーバーに聞いたか」なので、調べたい答えは②の「名前」と「Addresses」に出ます。
英語で表示されることもあります
この記事の画面は日本語で表示されていますが、環境によっては同じ内容が英語で出ます。実際、私が2026年8月にWindows 11で試したときは英語でした。
どちらで出ても、見る場所と意味は同じです。並びも変わりません。
| 日本語のとき | 英語のとき | 意味 |
|---|---|---|
| 既定のサーバー | Default Server | 対話型モードに入ったときに出る、聞き先のDNSサーバー |
| サーバー | Server | どのDNSサーバーに聞いたか |
| 権限のない回答 | Non-authoritative answer | 大元ではなく途中のDNSサーバーが覚えていた答え |
| 名前 | Name | 調べたドメイン名(ここが答え) |
| Addresses | Addresses | そのドメイン名のIPアドレス |
ヘルプで全てのオプションを表示する
「nslookup」の対話モードにはコマンドがたくさん用意されています。
しかし、ノンネットワークエンジニアの方には、これらのコマンドはほとんど必要ありません。
ここでは、「nslookup」のコマンドを一覧表示する方法だけ説明します。
「nslookup」のコマンドを一覧表示するには、対話モードに入った後、次のように入力します。
?
と入力します。
実行すると、次の様に全オプションと説明が表示されます。
C:\>nslookup
既定のサーバー: UnKnown
Address: (DNSサーバーのIPアドレス)> ?
コマンド: (識別子は大文字で示され、[] はオプションを意味します)
NAME – 既定のサーバーを使用するホスト/ドメイン名に関する情報を
印刷します
NAME1 NAME2 – 上記と同様ですが、NAME2 をサーバーとして使用します
help または ? – 一般的なコマンドに関する情報を印刷します
set OPTION – オプションを設定します
all – オプション、現在のサーバー、およびホストを印刷します
[no]debug – デバッグ情報を印刷します
[no]d2 – 完全なデバッグ情報を印刷します
[no]defname – 各クエリにドメイン名を付加します
[no]recurse – クエリへの再帰回答を要求します
[no]search – ドメイン検索一覧を使用します
[no]vc – 常に仮想回線を使用します
domain=NAME – 既定のドメイン名を NAME に設定します
srchlist=N1[/N2/…/N6] – ドメインを N1 に設定し、検索一覧を N1、N2 などに
設定します
root=NAME – ルート サーバーを NAME に設定します
retry=X – 再試行の回数を X に設定します
timeout=X – 初期タイムアウト間隔を X 秒に設定します
type=X – クエリの種類を設定します (A、AAAA、A+AAAA、ANY、
CNAME、MX、NS、PTR、SOA、SRV など)
querytype=X – type と同じです
class=X – クエリのクラスを設定します (IN (Internet)、ANY など)
[no]msxfr – MS 高速ゾーン転送を使用します
ixfrver=X – IXFR 転送要求で使用される現在のバージョンです
server NAME – 現在の既定のサーバーを使用して、既定のサーバーを NAME に
設定します
lserver NAME – 初期サーバーを使用して、既定のサーバーを NAME に設定します
root – 現在の既定のサーバーを root に設定します
ls [opt] DOMAIN [> FILE] – DOMAIN 内のアドレスを一覧表示します (オプションとして
FILE に出力します)
-a – 正規名とエイリアスを一覧表示します
-d – すべてのレコードを一覧表示します
-t TYPE – 指定の RFC レコードの種類のレコードを一覧表示します
(A、CNAME、MX、NS、PTR など)
view FILE – ‘ls’ 出力ファイルを並べ替えて、pg で表示します
exit – プログラムを終了します
もし必要になることがあれば「?」で確認して下さい。
「nslookup」でうまく調べられないときの表示
調べたい名前が返ってこないとき、「nslookup」は理由によって違うメッセージを出します。ここを読み分けられると、原因が自分の側にあるのか、相手の名前が存在しないのかを切り分けられます。
Microsoft は、次のメッセージが返る場合があると説明しています(nslookup のリファレンス)。ノンネットワークエンジニアの方がよく出会うものだけを抜き出しました。左の列は画面に出る文字、真ん中はMicrosoftの説明です。
| 表示 | Microsoftの説明 | まず疑うこと |
|---|---|---|
Non-existent domain | 「コンピューターまたは DNS ドメイン名が存在しません。」 | 打ち間違い。名前そのものが無い状態なので、DNSは正常に動いている |
timed out | 「サーバーが、一定の時間と一定回数の再試行の後に要求に応答しませんでした。」 | DNSサーバーまで届いていない。ネットワーク側の問題を疑う |
No response from server(サーバーから応答がありません) | 「サーバー コンピューターで DNS ネーム サーバーが実行されていません。」 | 聞き先のDNSサーバーが動いていない |
No records | 「DNS ネーム サーバーに、コンピューターの現在のクエリの種類のリソース レコードが存在しませんが、コンピューター名は有効です。」 | 名前はあるが、探した種類の情報が無いだけ |
大事なのは、最初の2つが正反対だということです。「存在しないドメイン」はDNSが正常に働いた結果(そんな名前は無い、と答えが返ってきた)で、「timed out」はDNSに聞けていない状態です。
前者なら打ち間違いを疑い、後者ならネットワークのつながりを疑う、という順番になります。つながりの確認には ping が使えます。
「nslookup」のまとめ
この記事では、DNSサーバーと通信して名前解決の正引きと逆引きができるネットワークコマンド「nslookup」の使い方を説明しました。
「nslookup」を使うと「yahoo.co.jp」の様なドメイン名から、IPアドレスを調べることができます。(正引き)
また、逆にIPアドレスからドメイン名を調べることもできます。(逆引き)
ノンネットワークエンジニアは次の書式だけ覚えておきましょう。
nslookup
コマンドを実行すると対話モードに入ります。
対話モードでは、IPアドレスを調べたい「ドメイン名」、又はドメイン名を調べたい「IPアドレス」を入力すると、結果が表示されます。
「この症状のときは、どのコマンドを使えばいいのか」を一覧で確かめたい方は、次の記事にまとめてあります。



