web-dev-qa-db-ja.com

DNS-NSLOOKUP権限のない回答の意味は何ですか?

一部のドメインでは、nslookupNon-authoritative answer セクション。これは何を意味するのでしょうか?

Got answer:
    HEADER:
        opcode = QUERY, id = 3, rcode = NXDOMAIN
        header flags:  response, want recursion, recursion avail.
        questions = 1,  answers = 0,  authority records = 1,  additional =

    QUESTIONS:
        www.ssss.com.SME, type = AAAA, class = IN
    AUTHORITY RECORDS:
    ->  (root)
        ttl = 1787 (29 mins 47 secs)
        primary name server = a.root-servers.net
        responsible mail addr = nstld.verisign-grs.com

------------
Non-authoritative answer:
------------

------------
Name:    example.com
Address:  93.184.216.34
Aliases:  www.example.com
131
user1179459

基本的に、それは名前が言うとおりです。権限のある回答は、レコードを返すドメイン(権限のあるドメインのリストにあるネームサーバーの1つ)に対して権限があると見なされているネームサーバーからのものであり、権限のない回答は他の場所からのものです(aルックアップを実行したドメインのリストにネームサーバーがありません)。

これは基本的に、照会しているドメインの公式ネームサーバーであるネームサーバーとそうでないネームサーバーの違いです。権威のないネームサーバーは、2番目(または3番目または4番目...)に回答を受け取ります-他の場所から情報を中継するだけです。

したがって、たとえば、今すぐmaps.google.comのnslookupを実行すると、構成済みネームサーバーの1つから応答が返されます。 (私のISPまたは私のドメインのいずれかから。)自分のISPのネームサーバーも自分のネームサーバーもgoogle.comのネームサーバーのリストにないため、権限のないものとして返されます。これらはGoogleのネームサーバーではないため、NSレコードを作成する信頼できるソースではありません。

Googleの信頼できるネームサーバーのリストを以下に示します(whois.internic.netから)。

ドメイン名:GOOGLE.COM

レジストラ:MARKMONITOR INC。

Whoisサーバー:whois.markmonitor.com

ネームサーバー:NS1.GOOGLE.COM

ネームサーバー:NS2.GOOGLE.COM

ネームサーバー:NS3.GOOGLE.COM

ネームサーバー:NS4.GOOGLE.COM

更新日:2011年7月20日

作成日:1997年9月15日

有効期限:2020年9月14日

構成済みのDNSサーバーをそのリストにあるものの1つに変更してから、maps.google.comに対してnslookupを実行すると、信頼できる回答が返されます。これらのサーバーは、Googleのドメインで有効な名前とそうでない名前に対する権限(またはソース)です。他のすべてのネームサーバー、権限のないネームサーバーは、行のどこかにある権限のあるサーバーからNSレコードを取得します。

109
HopelessN00b

受け取った答えは、基本的にローカルDNSサーバーからのキャッシュまたは転送された応答です。基本的に、権限のないネームサーバーは、照会されるゾーンのレコードを含まないネームサーバーです。たとえば、ローカルDNSにGoogleの名前レコードが含まれない可能性があります。

Host -t ns example.comを実行してNSレコードを取得することにより、特定のドメインに対して権限のあるネームサーバーを取得できます。

Googleの場合、次のようになります。

$ Host -t ns google.com
google.com name server ns4.google.com.
google.com name server ns1.google.com.
google.com name server ns2.google.com.
google.com name server ns3.google.com.

その後、これらのサーバーの1つに対してnslookupコマンドを実行すると、信頼できる回答が得られます。

$ nslookup www.google.com ns1.google.com
Server:         ns1.google.com
Address:        216.239.32.10#53

www.google.com  canonical name = www.l.google.com.
Name:   www.l.google.com
Address: 173.194.43.49
Name:   www.l.google.com
Address: 173.194.43.50
Name:   www.l.google.com
Address: 173.194.43.48
Name:   www.l.google.com
Address: 173.194.43.52
Name:   www.l.google.com
Address: 173.194.43.51

nslookupを使用している場合、NSレコードタイプを取得するには、インタラクティブモードで次のように実行します。

$ nslookup
> set querytype=ns
> google.com
Server:         127.0.0.1
Address:        127.0.0.1#53

Non-authoritative answer:
google.com      nameserver = ns3.google.com.
google.com      nameserver = ns4.google.com.
google.com      nameserver = ns1.google.com.
google.com      nameserver = ns2.google.com.

Authoritative answers can be found from:
ns1.google.com  internet address = 216.239.32.10

したがって、querytype=nsを設定すると、上記のHostコマンドが行ったことが実行されます。

39
cjc

権限のない回答とは、クエリされたドメイン名の権限のあるDNSサーバーから回答がフェッチされないことを意味します。

まず、DNSシステムの仕組みを理解する必要があります。 DNSシステムは3つの層に分けることができます。彼らです:

  • ルートDNSサーバー
  • トップレベルドメインDNSサーバー
  • 信頼できるDNSサーバー

通常、ローカルDNSサーバーと呼ばれる別のクラスのDNSサーバーがあり、そのIPアドレスはオペレーティングシステムで指定されています。

ブラウザがexample.comなどのWebサイトに接続すると、ブラウザは最初にローカルDNSサーバーにクエリを送信して、example.comのIPアドレスを取得します。

  • ローカルDNSサーバーにexample.comのAレコードがない場合は、ルートDNSサーバーの1つを照会します。

  • ルートDNSサーバーは言うでしょう:私はAレコードを持っていませんが、.comドメインを担当するトップレベルドメインDNSサーバーを知っています。

  • 次に、ローカルDNSサーバーが、.comドメインを担当するトップレベルドメインDNSサーバーにクエリを送信します。 TLD DNSサーバーが応答します。どちらもわかりませんが、example.comに対してどのDNSサーバーが信頼できるかはわかります。

  • したがって、ローカルDNSサーバーは信頼できるDNSサーバーにクエリを送信します。実際のDNSレコードはその信頼できるDNSサーバーに格納されているため、ローカルDNSサーバーに回答が提供されます。

次に、このクエリ結果はローカルDNSサーバーにキャッシュされますが、古くなっている可能性があります。 TTLの時間が経過すると、ローカルDNSサーバーは権限のあるDNSサーバーからのクエリ結果を更新します。ローカルのDNSサーバーでDNSレコードをクエリすると、権限のない(非公式)回答。信頼できる回答が必要な場合は、nslookupまたは他のユーティリティを使用するときに、信頼できるDNSサーバーを明示的に指定する必要があります。ローカルDNSサーバーは、キャッシュDNSサーバーと呼ばれるべきだと思います。

誰かがドメイン名を登録するとき、彼/彼女はどのDNSサーバーが権限のあるDNSサーバーであるかを指定できます。この情報は、NSレコードと呼ばれます。NSレコードは、ドメインのAレコード、MXレコードなどを保持しているネームサーバーをトップレベルドメインDNSサーバーに通知します。

28
LinuxBabe

From Wireshark Lab:DNS v6.01However, nslookup also indicates that the answer is “non-authoritative,” meaning that this answer came from the cache of some server rather than from an authoritative MIT DNS server

2
TheLogicGuy