DNSの主な役割は、ドメイン名を対応するIPアドレスに変換することです。なぜアプリケーションレイヤープロトコルである必要があるのでしょうか。
たとえば、TCP接続を作成する場合、レイヤー4に宛先IPアドレスが必要なため、DNSはアプリケーションレイヤープロトコルだと思います。正しいですか?別の答えはありますか?
ありがとう!
DNSの主な役割は、ドメイン名を対応するIPアドレスに変換することです。なぜアプリケーションレイヤープロトコルである必要があるのでしょうか。
たとえば、TCP接続を作成する場合、レイヤー4に宛先IPアドレスが必要なため、DNSはアプリケーションレイヤープロトコルだと思います。正しいですか?別の答えはありますか?
ありがとう!
回答:
DNSのクエリと応答はアプリケーションレベルの通信であるため、DNSはアプリケーション層プロトコルです。アプリケーション層は、DNSパケットのクエリと回答のセクションのみを理解します。したがって、アプリケーションレイヤーのDNSクエリ/応答は、レイヤー4 udpにカプセル化され、次にレイヤー3 IPにカプセル化されます。
たとえば、TCP接続を作成する場合、レイヤー4に宛先IPアドレスが必要なため、DNSはアプリケーションレイヤープロトコルだと思います。正しいですか?
IPはレイヤ3プロトコルです。
DNSはホスト名をIPアドレスに変換するサービスにすぎません。人間は数字よりも名前を覚えるのが得意なので、これが必要です。
したがって、Webサイト名を入力すると、ブラウザクライアントには、入力した名前のDNS要求を発行するようにオペレーティングシステムに要求するAPIがいくつかあります。
DNS要求は、インターネット上のどこかにある特定のDNSサーバーのIPアドレス(手動で構成したアドレス、またはDHCP更新を介して受信したアドレス)に送信されます。そのサーバーがどのサービスを具体的に必要とするかを知るために(このサーバーはたとえばHTTPサーバーでもある可能性があるため)、ポート番号も指定する必要があります。DNSはUDPポート53を使用します。そのため、アプリケーションレイヤープロトコルである必要があります。
DNSサーバーが常にローカルサブネット上にある場合は、これを実装するレイヤー4プロトコルを使用できます(サーバーは、この要求専用の一意のマルチキャストIPアドレス(たとえば、OSPFと同じメカニズム)によって着信要求を識別します)。