第1章 DNS サービスの概要
DNS サービス (designate) は、Red Hat OpenStack Platform (RHOSP) デプロイメント向けの DNS-as-a-Service 実装を提供します。
このセクションでは、Domain Name System (DNS) の基本と DNS サービスコンポーネントを説明し、簡単な使用例を示し、DNS サービスを実行するさまざまな方法を示します。
このセクションに含まれるトピックは次のとおりです。
1.1. DNS (Domain Name System) の基本 リンクのコピーリンクがクリップボードにコピーされました!
DNS (Domain Name System) は、プライベートまたはパブリックネットワークに接続されているリソースの命名システムです。階層型の分散データベースである DNS は、リソースに関する情報を、ゾーン と呼ばれるさまざまなグループに編成されたドメイン名に関連付けます。権威ネームサーバーは、リソースとゾーンの情報をレコードに格納します。リゾルバーはこれらのレコードを照会して、ネットワークデータをルーティングするためのリソースを識別し、その場所を特定できます。
名前はゾーンの階層に分割され、これにより委譲が容易になります。個別のネームサーバーが特定のゾーンを担当します。
図1.1 Domain Name System
単純に . (ドット) には、さまざまなトップレベルドメイン (TLD) を他のネームサーバーに委任するレコードが含まれています。これらの種類のレコードはネームサーバー (NS) レコードと呼ばれ、特定のドメインに対して権限のある DNS サーバーを識別します。ドメインのプライマリーおよびバックアップネームサーバーを示す NS レコードが複数あるあることは珍しくありません。
ルートゾーンの下には、TLD 内のドメインのレコードのみを含むさまざまな TLD ネームサーバーがあります。これらはアドレスレコードおよび正規名レコードであり、それぞれ A レコードおよび CNAME レコードと呼ばれます。
たとえば、.com ネームサーバーには、ゾーンを他のネームサーバーに委譲する NS レコードに加えて、example.com の CNAME レコードが含まれます。ドメイン example.com には独自のネームサーバーがあり、それにより cloud.example.com などの他のドメインを作成できます。
多くの場合、リゾルバーは 2 つの部分で設定されています。通常はユーザーのコンピューター上のライブラリーである スタブリゾルバー と、結果をユーザーに返す前にネームサーバーに対してクエリーを実行する 再帰リゾルバー です。ドメインを検索する場合、リゾルバーはドメインの最後から開始し、ドメインの最初に向かって実行します。
たとえば、cloud.example.com を検索する場合、リゾルバーはルートネームサーバー . から開始します。ルートは、.com ネームサーバーの場所で応答します。次に、リゾルバーは .com ネームサーバーに接続して、example.com ネームサーバーを取得します。最後に、リゾルバーは cloud.example.com レコードを特定し、ユーザーに返します。
図1.2 DNS クエリーの解決
| 1 |
ユーザーは |
| 2 |
再帰リゾルバーは、 |
| 3 |
レコードが見つからず、 |
| 4 |
リゾルバーは、 |
| 5 |
レコードが見つからず、 |
| 6 |
リゾルバーは、 |
| 7 |
|
| 8 |
リゾルバーは、 |
この検索をより効率的にするために、結果はリゾルバーにキャッシュされます。そうすることで、最初のユーザーが cloud.example.com を要求した後、リゾルバーは後続の要求に対してキャッシュされた結果を迅速に返すことができます。