DNSで信頼できるネームサーバーを送信する理由


11

好奇心から、Wireshark DNSパケットをチェックしています。ホストからのDNSクエリがあり、DNSサーバーからのDNS応答があることがわかります。すべてが期待どおりです。

ただし、クエリをさらにチェックインすると、サーバーがNS(権限のあるネームサーバー)も送信していることがわかります。私の質問は:なぜですか?

ホストとして、私はIPのみを気にします。これが、名前をIPアドレス解決するDNS主要なポイントです

ホストとしてNS情報が必要なのはなぜですか?


1
@downvoter、コメントしてください。そして、私の質問がとても簡単だと思うなら、少なくとも答えてから投票してください。
アーメドワス

6
哲学とデザインの投票により、匿名であり、どちらも投票までも投票ダウンすると、すべての必須説明は必要ありません。マウスポインターが下ボタンの上に移動したときに表示されるツールチップには、「この質問には研究努力は示されていません。不明瞭または役に立たない」と記載されています。また、質問はよく書かれていない場合、トピックに完全に一致していないか、詳細が欠落している場合は、反対票を集める可能性があります。
-HBruijn

回答:


15

伝統的に、サーバがクエリに短い応答が、RFC送信しない名前1034 - 1035リソースレコードが含まれている権限部を備え準拠した完全な応答をその権威ネームサーバ(群)に向けてのポイント。

その理由はおそらく、DNSの分散および委任された性質により、「真実のソース」を応答に含めることは、当時は良い考えのように思われたためです。

編集:ところで:権限セクションの送信はRFC準拠ですが、すべてのクエリ応答に必須ではありません。

BINDでは、この動作はminimal-responses yes | no;ディレクティブを使用して調整できます。デフォルトではno、クエリ応答のAuthorityセクションとAdditionalセクションが常に完全に読み込まれます。
他のネームサーバーCloudFlare、AWS Route 53、Infoblocks、およびおそらく他のネームサーバーは、デフォルトで常にこのような最小限の応答を送信します。Googleのパブリックリゾルバーは、利用可能であればCloudflareのAuthorityセクションを返します。


私が考えるその伝統の起源はで権威セクションの両方を含むだけでなく、実際のクエリ応答は廃止から(擬似)コードでそのルートを見つけRFC882のページ15-16

If the name server is not authoritative, the code copies 
the RRs for a closer name server into the response.  

The last section of the code copies all relevant RRs into the response.

編集と追加情報をありがとう。1つ以上のUP票を提供できることを望みます:)
AhmedWas

これは本当に質問に答えません。完全な応答が受信されたことは既にわかっています。問題は、これの利点は何ですか?標準がこのように設計されているのはなぜですか?この応答形式の「追加」情報の価値は何ですか?
軌道上の明るさのレース

3
私にとって@LightnessRacesinOrbit、答えは自明です。DNSサーバーは、example.comがabcdであることを私に言っているだけではありません。誰がそう言ったか教えてくれます。これは認識論的に健全です。なぜなら、第三者が事実であると断言したことを実際に知っているだけで、何かが事実であることを正確に伝えることができないからです。人々が伝聞をそれが観察であるかのように、または彼らの結論をあたかも主な証拠であるかのように提示する場合、問題をトラブルシューティングすることはより困難です。
モンティハーダー

1
@MontyHarderはい、それは理にかなっていますが、私が言っているのは、それが答えの中にあるべきだということです。
軌道上の明るさのレース

2
@LightnessRacesinOrbit RFCには、常に設計の動機が含まれているとは限りません。「当時は良い考えに思えた」ことを明確にするために- 現在のRFCが(pseudoでその起源を見つけることを義務付けていないにもかかわらず、実際のクエリ応答に加えて権限セクションを含めることが伝統的である理由を考えます)廃止されたRFC882ページ15-16のコード"...ネームサーバーが権限を持たない場合、コードは、より近いネームサーバーのRRを応答にコピーします。コードの最後のセクションは、関連するすべてのRRを応答にコピーします...」
HBruijn

5

サーバーは、リクエストがエンドクライアントから来ているのか、別のネームサーバーからの再帰的なリクエストなのかを知りません。別のネームサーバーの場合、権限セクションをキャッシュし、将来それらのネームサーバーに直接クエリを実行できます。

私はそれがプロトコルの最初の正当化であったと信じていますが、それはセキュリティの意味を持っています。応答には、偽のネームサーバーをリストする権限セクションを含めることができ、これはキャッシュポイズニング攻撃で使用されています。したがって、ネームサーバーは通常、クエリしているドメインのサブドメインの委任レコードでない限り、NSレコードをキャッシュしません。


サーバーは実際にそのようなリクエストの違いを知ることができます。フラグには再帰を要求するビットが少しあります。
カスペルド

サーバーは、たとえばforwarders機能が使用されている場合に、再帰クエリを送信できます。
バーマー

しかし、そうすれば、とにかく信頼できるサーバーについては気にしません。
カスペルド
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.