- ベストアンサー
上位のDNSに登録されているかを確認する方法と結果の判断について
- DNSサーバのIPアドレスが上位のDNSに登録されているかを確認する方法として、nslookupコマンドを使用することができます。具体的な手順として、Aレコードを検索対象に指定し、上位DNSサーバのアドレスを設定して実行します。結果として、登録されている場合はIPアドレスが返されますが、登録されていない場合はNXDOMAINというエラーメッセージが表示されます。
- 上記の方法による問い合わせ結果が、登録されていないと判断しても問題ありません。しかし、登録されていない場合でも他の要因によって正常にアクセスできない可能性もあるため、異常がある場合はDNS設定やネットワーク環境に問題があるかを確認することが重要です。また、DNSレコードの更新が遅延している場合も登録されていないと判断されることがあります。
- 上位のDNSに登録されているかを確認する際には、タイトルに関連するハッシュタグを活用することがSEO対策に有効です。具体的なハッシュタグとして、「#DNSサーバ」「#上位DNS登録確認」「#nslookup」「#Aレコード」「#DNS設定」などが考えられます。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
どうも、DNSによる名前解決の仕組みを誤解されているように見受けられます。 「DNSサーバのIPアドレスが上位のDNSに登録されているかを確認したい」とありますが、 基本的に、上位のDNSサーバに登録するのは、DNSサーバのホスト名であって、IPアドレスではありません。 (ただし、後述のように例外はあります) ・bar.jp のネームサーバは、○○.bar.jp というホスト名から、そのホストのIPアドレスを返すデータベースを管理します。 ・foo.bar.jp のネームサーバは、○○.foo.bar.jp というホスト名から、そのホストのIPアドレスを返すデータベースを管理します。 ・bar.jp のネームサーバを運用するためには、jp のネームサーバに、bar.jp のネームサーバを登録する必要があります。 (jpのネームサーバに、bar.jp のNSレコードを登録します) ・foo.bar.jp のネームサーバを運用するためには、bar.jp のネームサーバに、foo.bar.jp のネームサーバを登録する必要があります。 (bar.jpのネームサーバに、foo.bar.jp のNSレコードを登録します) ・ネームサーバの登録は、基本的にホスト名で行われます。ただし、以下のように、IPアドレスの登録が必要になる場合があります。 a)・bar.jp のネームサーバのホスト名が、ns.baz.jp のように、bar.jp のドメイン下にない場合 →このときは、上位の jp のサーバには、「○○.bar.jp を管理しているサーバはns.baz.jp です」ホスト名だけを登録します。IPアドレスの登録は要りません。 b)・bar.jp のネームサーバのホスト名が、ns.bar.jp のように、bar.jp のドメイン下にある場合 →このとき、上位の jp のサーバから、「○○.bar.jp を管理しているサーバはns.bar.jp です」とホスト名だけ返すとns.bar.jp のIPアドレスを調べる手段がなくなります。 そこで、例外的に、ns.bar.jp のIPアドレスも、jp のネームサーバに登録します。 > [2] 「DNSサーバが上位のDNSに登録されているか」は、NSレコードで調べます。 また、server に指定するのはドメイン名ではなく、そのドメインを管理している「ネームサーバのホスト名」です。 例えば、bar.jp のネームサーバがns.bar.jp であれば、 --- % nslookup > set querytype=NS > server ns.bar.jp > foo.bar.jp --- もしくは --- % nslookup -query=NS foo.bar.jp ns.bar.jp --- を実行します。すると、DNSサーバが正しく登録されている場合は、 --- foo.bar.jp nameserver = ns.hoge.jp --- のように、ネームサーバのホスト名が返って来ます。NXDOMAINの場合は、登録できていません。 さらに、 上述の(b)のパターンで、例えば「foo.bar.jp のネームサーバのホスト名が ns.foo.bar.jp である」場合は、 --- foo.bar.jp nameserver = ns.foo.bar.jp --- と返って来ても、この情報だけでは ns.foo.bar.jp のIPアドレスを調べる手段なないので、さらに ns.foo.bar.jp のIPアドレスを ns.bar.jp に登録する必要があります。それが登録されているかどうかは、 --- % nslookup -query=A ns.foo.bar.jp ns.bar.jp --- を実行します。これで Address: が返ってくれば、IPアドレスは登録されていることになります。
その他の回答 (1)
- pakuti
- ベストアンサー率50% (317/631)
nslookupは古いアプリケーションで使用は非推奨です。 digコマンドを利用しましょう。 dig bar.jp. NS で引いた答えが、ns.nar.jpだとしたら dig www.foo.bar.jp. @ns.bar.jp を実行します。 ここまで書いて微妙に思った事が・・・・ 知りたいのは dig foo.bar.jp. NS @ns.bar.jp なのでは?
お礼
ありがとうございます。 digでも試してみましたが駄目でした。 管理者に問い合わせようと思います。
お礼
詳しい解説までいただきありがとうございました。 なるほど、勘違いしていました。 2)の方法で問い合わせてみたところやはりNXDOMAINが返ってくるので登録できていないようです。 管理者に問い合わせてみます。 これですっきりしました。ありがとうございます。