目次
nslookupコマンドとは
通常、DNSサーバへのIPアドレスの問い合わせは自動的に行われます。WebブラウザでWebサイトを見るときやメールソフトでメールを送受信するときに、ユーザはDNSサーバへの問い合わせを意識することはありません。
普段は意識することはないのですが、DNSサーバのリソースレコードの登録を確認したり、何らかの障害やDNSサーバの設定ミスなどでDNSの動作が正しくないとき、DNSサーバへの問い合わせを手動で行わなければいけない場合があります。
nslookupコマンドによって、DNSサーバへのIPアドレスの問い合わせを手動で実行することができます。
nslookupコマンドのモード
nslookupコマンドには以下の2つのモードがあります。
- 非対話モード
- 対話モード
非対話モードは、nslookupコマンドのあとにホスト名などの引数やオプションの指定を直接指定します。そして、結果が表示されるとすぐにコマンドが終了します。
一方、対話モードは1回の問い合わせだけでコマンドの実行が終了せずに、次々と連続して問い合わせを行うことができます。その際、オプションの指定や問い合わせるDNSサーバの切り替えなども可能です。対話モードを実行するには、nslookupコマンドだけを入力します。すると、「>」だけの表示になり、対話モードに入っていることがわかります。対話モードから抜けるときには、「exit」または「Ctrl+C」を入力してください。
nslookupコマンドの例
nslookupコマンドには、たくさんのオプションがあり、DNSサーバに対してさまざまな問い合わせを行うことができます。対話モードで以下のリソースレコードの問い合わせの例について解説します。
- Aレコード
- PTRレコード
- MXレコード
- NSレコード
Aレコードの問い合わせ
Aレコードには、ホスト名に対するIPアドレスが登録されています。DNSサーバに対する問い合わせで最も多いのがAレコードの問い合わせです。Aレコードを問い合わせるときには、単に問い合わせるホスト名を入力します。以下は、www.google.co.jp のAレコードの問い合わせの例です。
C:\Users\gene>nslookup 既定のサーバー: UnKnown Address: 192.168.1.1 > www.google.co.jp サーバー: UnKnown Address: 192.168.1.1 権限のない回答: 名前: www.google.co.jp Addresses: 2404:6800:4004:80c::2003 172.217.25.227
「サーバー」および「Address」は問い合わせを行なっているDNSサーバの情報です。「サーバー」がUnknownとなっているのは、DNSサーバのホスト名がわからない状態だからです。問い合わせるDNSサーバを特に指定していないので、パソコンで設定されているDNSサーバの情報が表示されます。家庭内ネットワークでは、たいていの場合、ブロードバンドルータのIPアドレスとなります。
その下の部分が問い合わせ結果です。「権限のない回答」とあるのは、問い合わせを行ったDNSサーバではなく、別のDNSサーバに登録されている情報であることを表しています。「名前」がサーバのホスト名で、「Addresses」が対応するIPアドレスです。そして、対応するIPアドレスとして、IPv4アドレス「172.217.25.227」とIPv6アドレス「2404:6800:4004:80c::2003」があります。
PTRレコードの問い合わせの例
PTRレコードは、IPアドレスに対応するホスト名の情報です。サーバがクライアントから何らかのリクエストを受信するとき、クライアントのIPアドレスがわかってもホスト名がわからないことがあります。そのような場合、PTRレコードを問い合わせて、IPアドレスに対応するホスト名の情報を調べることができます。
nslookupコマンドはAレコードの問い合わせか、PTRレコードの問い合わせかは自動的に判別してくれます。PTRレコードの問い合わせは、IPアドレスを指定するだけです。先ほどのwww.google.co.jp のAレコードで調べたIPアドレスを指定してPTRレコードの問い合わせをしてみましょう。
C:\Users\gene>nslookup 既定のサーバー: UnKnown Address: 192.168.1.1 > 172.217.25.227 サーバー: UnKnown Address: 192.168.1.1 名前: nrt12s14-in-f227.1e100.net Address: 172.217.25.227
「172.217.25.227」に対するホスト名として「nrt12s14-in-f227.1e100.net」であることがわかります。「www.google.co.jp」ではありません。GoogleのWebサーバは実際には何台もあり、それぞれホスト名とIPアドレスが設定されています。何台ものWebサーバをグループ化したホスト名が「www.google.co.jp」です。
MXレコードの問い合わせの例
MXレコードとはメールサーバの情報を登録しているものです。電子メールは、メールサーバからメールサーバへと転送されていきます。転送先のメールサーバの情報を調べるためにMXレコードの問い合わせを行います。以下は、「ネットワークのおべんきょしませんか?」のドメイン「n-study.com」のMXレコードの問い合わせの例です。
C:\Users\gene>nslookup 既定のサーバー: UnKnown Address: 192.168.1.1 > set tyep=MX > n-study.com サーバー: UnKnown Address: 192.168.1.1 権限のない回答: n-study.com MX preference = 50, mail exchanger = mx01.lolipop.jp
「set type=MX」によってMXレコードの問い合わせを行うように変更しています。そしてドメイン名を入力すると、入力したドメイン名のMXレコードの問い合わせを行います。ドメイン名はメールアドレスの@から右の部分です。すると、指定したドメインのメールサーバの情報が表示されます。
メールサーバの情報は、複数登録することができます。複数のメールサーバの優先度を示しているのが「MX preference」です。値が大きいほど優先度が高いメールサーバです。
MXレコードでは、メールサーバのホスト名がわかります。IPアドレスを調べるためには、さらにAレコードの問い合わせを行います。
NSレコードの問い合わせ
NSレコードはドメインのDNSサーバの情報が登録されています。NSとはName Serverのことです。以下は、NSレコードの問い合わせの例です。
C:\Users\gene>nslookup 既定のサーバー: UnKnown Address: 192.168.1.1 > set type=NS > n-study.com サーバー: UnKnown Address: 192.168.1.1 権限のない回答: n-study.com nameserver = dns01.muumuu-domain.com n-study.com nameserver = dns02.muumuu-domain.com
「set type=NS」によってNSレコードの問い合わせを行うように変更しています。そしてドメイン名を入力すると、入力したドメイン名のNSレコードの問い合わせを行います。n-study.comのDNSサーバは「dns01.muumuu-domain.com」および「dns02.muumuu-domain.com」というサーバであることがわかります。
TCP/IP
- TCP/IPの階層
- IP(Internet Protocol) ~データを送り届ける~
- ICMP ~きちんとIPで転送できますか?~
- Ping ~きちんとデータは届きますか?~
- Windows OSのPingコマンド
- トレースルート ~データはどのルータを通っていますか?~
- tracertコマンド(Windows OS)
- ICMPリダイレクト
- トラブルはどこ? ~Pingとトレースルート~
- ARP ~IPアドレスとMACアドレスを対応付け~
- ARPフォーマット
- Gratuitous ARP(GARP)
- ポート番号 ~どのアプリケーションのデータなの?
- TCPの概要
- TCPの動作
- UDPの概要
- アプリケーションのデータが届くまでのまとめ
- DNS ~宛先IPアドレスを求める~
- nslookupコマンド ~DNSの名前解決の確認~
- DHCP ~IPアドレスを自動割り当て~
- Cisco IOS DHCPサーバの設定と確認コマンド
- Ciscoルータ DHCPサーバの設定例
- DHCPリレーエージェント
- DHCPリレーエージェントの設定例[Cisco]
- DHCPサーバ配置のまとめ
- TCP/IPの設定のまとめ
- ipconfigコマンド ~Windows OSのTCP/IP設定を確認~
- Linux(Ubuntu)でのTCP/IP設定の確認コマンド
- Webサイト
- HTMLとCSS ~Webページを作る~
- URL ~Webサイト(Webページ)のアドレス~
- HTTP ~HTMLファイルを転送する~
- Webアプリケーション ~Webブラウザだけあればいい~
- HTTP Cookie
- Webアプリケーションのセッション管理
- Webプロキシサーバ ~Webアクセスを代わりに~
- Webアクセスのまとめ
- 電子メール
- SMTP ~電子メール送信用プロトコル~
- POP3 ~メール受信用プロトコル~
- IMAP4 ~メールサーバ上でメールを管理~
- 電子メールのまとめ
- FTP ~代表的なファイル転送プロトコル~
- TFTP ~簡易的なファイル転送プロトコル~
- Windows10/11のTFTPクライアント
- ネットワークのトラブルの切り分け手順