web-dev-qa-db-ja.com

DNS AとNSレコード

DNSを少し理解しようとしていますが、AとNSレコードを完全に取得できません。

私が理解している限り、Aレコードは、どのIPアドレスが(サブ)ドメインに属しているかを示しています。しかし、私が理解したように、NSレコードは、どのネームサーバーポイントが(サブ)ドメインに属しているかを示し、そのネームサーバーはどのIPアドレスが(サブ)ドメインに属しているかを通知する必要があります。しかし、すでに同じDNSファイルのAレコードで指定されています。NSレコードとネームサーバーが正確に何をしているのかを誰かに説明してもらえますか。

編集:私があなたを正しく理解しているように、a NSレコードは、特定のドメインのAレコードを持つDNSサーバーを見つけることになったことを示し、Aレコードは、どのIPアドレスがドメインですが、AとNSレコードを同じDNSファイルに置くことの使用法は何ですか?特定のドメインのAレコードが既にある場合、なぜポイントする必要があるのですか?同じ情報を提供する別のDNSサーバー

49
Tiddo

架空のfoo.comゾーンファイルの例

 ....... SOA record & lots more stuff .......
 foo.com.      IN        NS        ns1.bar.com.

 foo.com.      IN        A         192.168.100.1
 ....... More A/CNAME/AAAA/etc. records .......

A Record = "foo.comと呼ばれるホストは、アドレス192.168.100.1に住んでいます。
NS Record = "foo.comゾーンのホストについて知りたい場合は、ネームサーバーns1.bar.comに問い合わせてください"

49
voretaq7

これは古い質問ですが、他の回答は混乱の原因に実際には触れていないと思います。頂点のNSレコードは、頂点の下のNSレコードとは異なる一連のルールに従います。

これらのルールから、同じ名前のDNSサーバーにAレコードが存在する場合に何が起こるかについて、2つの異なる動作を導出できます。

  • NSレコードで参照が定義されていない場合、同じゾーンに他のデータが存在する可能性があります。サーバーは自身をNSレコードとAレコードの両方に対して信頼できると見なすため、競合は発生しません。これが、他のデータがゾーンの頂点でNSレコードと一緒に一般的に存在する理由です。
  • NSレコードdoesが参照を定義している場合、Aレコードは-によって事実上「マスク」されます ゾーンカット 。このAレコードは信頼できるものではないため、信頼できる応答の回答セクションに表示されないようにする必要があります。これは、参照の追加セクションに表示される 接着剤データ として使用できる可能性がありますが、それだけです。

混乱していますか?そうですよ。これがうまくいかない場合は、コメントにコメントを記入してください。私ができることを確認します。

20
Andrew B

NSレコードは、そのドメイン名にDNSサービスを提供しているサーバーを指定します。

Aレコードは、ホスト名(www、ftp、メールなど)を1つ以上のIPアドレスにポイントします。

10
mrdenny

aレコードは名前をIPアドレスにマップします。例えば.

 binary.example.com。 IN 192.168.1.42 

そのbinary.example.comを述べています。 192.168.1.42に解決

NSレコードは、名前を別のネームサーバー、つまりそのドメインにサービスを提供する別のDNSサーバーにマップします。つまり、「この名前のIPアドレスはわかりませんが、そのネームサーバーに尋ねるとあそこにあるかもしれない」

 binary.example.com。 IN NS otherbox.example.com 
 otherbox.example.com。IN A 192.168.1.2 

Binary.example.comの上記の2つのレコードを持つDNSサーバーを要求した場合。 (またはwww.binary.example.com。またはfoo.bar.binary.example.com)。これらの名前を変換するために192.168.1.2に依頼する必要があることがわかります(まあ、またはDNSサーバーがそれを行うか、解決された名前がキャッシュされて返される可能性があります)。

9
nos

サブゾーンを別のDNSサーバーに委任する必要がある場合は、ゾーンにNSとAレコードの両方を含めることが重要です。

例えば。 DNSサーバーns1.bar.comには、ゾーンbar.comに対する権限があります。そして、foo.bar.comをns1.foo.bar.comに委任する必要があります。したがって、ゾーンfoo.bar.comを作成し、そこに次のレコードを配置する必要があります。

foo.bar.com.     IN NS ns1.foo.bar.com.
ns1.foo.bar.com. IN A  10.10.10.10

Aがない場合、レコードの委任は機能しません。このようなレコードのペアは、グルーレコードと呼ばれます。

グルーレコードは、非ルートゾーンの権威DNSサーバーの正確なIPをDNSシステムが見つける唯一の方法です。 Digを使用してドメインのNSレコードを確認するか、wiresharkでトラフィックダンプを確認すると、「追加の」セクションが返されていることがわかります。

;; ANSWER SECTION:
foo.bar.com.             10800   IN      NS      ns1.foo.bar.com.

;; ADDITIONAL SECTION:
ns1.foo.bar.com.         7972    IN      A       10.10.10.10

再帰的なリクエストを行うとき、例えばwww.foo.bar.com DNSクライアントは、foo.bar.comゾーンに対して権威のあるDNSを要求し、回答ns1.foo.bar.comを取得します。

さらに進むには、ns1.foo.bar.comによって提供されるns1.foo.bar.comへの要求を送信する必要があります。ループを解消するには、委任DNSサーバーで、この追加セクションとAレコードを追加する必要があります。

サーバーns1.foo.bar.comは、そのゾーンに同じレコードを持っている必要があるため、foo.bar.comゾーンに対して権限を持つことができます。

8
DukeLion

NSレコードは、NAMESERVERSが特定のドメインを担当するかどうかを定義する目的でのみ存在します。

Aレコードは、特定のマシンまたはサービスを「アドレス」するために存在します。

あなたのための例:

DNSコントロールパネルに、いくつかのNSレコードが表示されます。これらは、NAMESERVERS、またはドメイン上のどこにあるかをインターネットに通知する責任があるプライマリマシンです。

NS1.CP.COM NS2.CP.COM

また、DNSパネル内には、ウェブサイトなどのサービスを提供するために必要なドメイン(-mikesfunhouse.comなど)があります。

したがって、「mikesfunhouse.com」を「76.19.87.956」(明らかに偽のIP)にポイントするプライマリAレコードを作成します。

次に、wwwレコードを作成して、サブドメイン「www」をリダイレクトします。プライマリサイトへの部分。

つまり、Aレコードを使用して名前空間をIPアドレスに変換します。

3
JohnThePro

ネームサーバーレコードは、どのDNSサーバーがAレコードを保持しているかをインターネットに通知するため、サブドメインのAレコードを検索するには、おおよそ次のプロセスです。

ドメインのネームサーバーを検索する->ネームサーバーにサブドメインのAレコードを問い合わせる

1
James L