ノート:
- このチュートリアルでは、Oracle Cloudへのアクセスが必要です。無料アカウントにサインアップするには、Oracle Cloud Infrastructure Free Tierの開始を参照してください。
- Oracle Cloud Infrastructureの資格証明、テナンシおよびコンパートメントの値の例を使用します。演習を完了するときに、これらの値をクラウド環境に固有の値に置き換えます。
Oracle Cloud Infrastructure DNSを使用したネイティブ・ドメインの解決
イントロダクション
OraStageは、再生可能エネルギー・ソリューションと革新的な電力技術を専門とするエネルギー部門のリーディング・カンパニーであり、パフォーマンス、スケーラビリティ、セキュリティを強化するためにワークロードをOracle Cloud Infrastructure(OCI)に移行するという戦略的な決定を発表しました。
OraStageが概説した特定のニーズと条件を考慮すると、同社はクラウドでハイブリッド・ドメイン・ネーム・システム(DNS)ソリューションを必要とし、ハイブリッドでは、OCI DNSサービスに加えて、独自のBerkeley Internet Name Domainバージョン9 (BIND9) DNSシステムを使用します。ここでは、構築しようとしている最終的なアーキテクチャを次のイメージに示します。
OraStage DNSの要件:
-
会社には複数の内部ドメインおよびサブドメインがあり、それらのすべてをOCIのBIND9 DNSによって解決する必要があります。OraStageは、関連するすべてのゾーンおよびレコードを管理します。これらのドメインの1つは、このチュートリアルで使用する
orastage.com
です。そのため、orastage.com
への問合せは、BIND9に転送する必要があります。 -
場合によっては、OCIネイティブ・ドメイン(
oraclevcn.com
、oraclecloud.com
など)を解決する必要があり、これはOCIプライベートDNSコンポーネント(プライベート・ビュー、エンドポイントとルールの転送、リスニング・エンドポイント)を使用して行われます。 -
すべての問合せは、pfSenseファイアウォール・インスタンスによって検査される必要があります。
-
単一障害点を回避するために、OraStageは別のDNSサーバーを使用し、OCIロード・バランサを利用してプライマリDNSとセカンダリDNS間で問合せを分散することを計画しています。
このチュートリアルシリーズは、上記の概説された要件を達成するためにステップバイステップをガイドし、最初からソリューション全体を構築します。次のリストから各チュートリアルに簡単にナビゲートできます。
-
チュートリアル1: OCIでBIND9 DNSを構成します。コンピュート・インスタンスにBIND9をインストールおよび構成し、それをOCIの2つのテスト環境用のローカルDNSサーバーとする方法について学習します。これらの環境は、それぞれ別のスポーク・ネットワークでホストされる「フロントエンド」および「バックエンド」サーバーで構成されます。BIND9サーバーは、
orastage.com
に送信されたすべてのDNS問合せを処理します。 -
チュートリアル2: OCIのBIND9 DNSシナリオで高可用性を実装します。このチュートリアルでは、セカンダリBIND9サーバーの追加と、両方のサーバー間でDNSトラフィックを分散するためのネットワーク・ロード・バランサ(NLB)の構成に重点を置きます。
orastage.com
へのDNS問合せはNLB IPに送信され、プライマリとセカンダリBIND9サーバー間の負荷が分散されます。1つのサーバーが使用できなくなった場合、DNSの解決はサービスの中断なしで続行されます。 -
チュートリアル3: OCI DNSを使用したネイティブ・ドメインの解決。
oraclevcn.com
やoraclecloud.com
などのネイティブ・ドメインを解決する必要がある場合に備えて、OCIでネイティブDNSコンポーネントを使用する特定のユース・ケースにのみ焦点を当てます。BIND9 DNSはこのチュートリアルでは使用されません。 -
チュートリアル4: pfSenseファイアウォールを使用したDNSアーキテクチャへのセキュリティの追加。OCIのハブVCNにpfSenseファイアウォールをインストールすることに焦点を当て、検査対象のファイアウォールを介して(過去のチュートリアルで実行された)DNS問合せを含むすべての東西トラフィックをルーティングするために必要なネットワーク構成を実行します。
概要
このチュートリアルでは、oraclevcn.com
やoraclecloud.com
などのOCIネイティブ・ドメインの処理に焦点を当てます。この項では、BIND9を使用したorastage.com
などのカスタム・ドメインの解決から脱却し、かわりにOCI組込みDNS機能を確認します。
OCI Private DNSのコンポーネントと、OCIプライベート・ネットワーク内のDNSトラフィックの管理に重要な役割を果たすクエリ処理に関わる主要な要素について説明します。チュートリアル1とチュートリアル2の一部では、すでにそれらが使用されています。コンポーネントは次のとおりです。
-
プライベートDNSゾーン:プライベートIPアドレスなど、VCN内からのみアクセス可能なDNSデータが含まれます。プライベートDNSゾーンにはインターネットDNSゾーンに似た機能がありますが、プライベートDNSゾーンにVCN経由でアクセスできるクライアントに対してのみレスポンスを提供します。各ゾーンは単一のビューに属しています。
-
プライベートDNSビュー:プライベート・ゾーンのグループ。各ビューをリゾルバに関連付けて、DNS問合せの解決方法を制御できます。単一のビューを複数のリゾルバが使用できるため、異なるVCNs間でプライベートDNSデータを共有できます。各ゾーンは1つのビューにのみ含めることができます。
たとえば、VCN-AとVCN-Bの2つの新しいVCNsを作成しました。デフォルトでは、VCN-A内のリソースは、VCN-Aプライベート・ビューにある同じプライベート・ゾーンに格納されるため、追加の構成なしで相互に解決できます。VCN-Bについても同様です。ただし、VCN-AのリソースでVCN-B内のリソースを解決する場合は、VCN-Bのプライベート・ビューをVCN-Aリゾルバに関連付ける必要があります。VCN-B内のリソースでVCN-A内のリソースを解決する場合は、VCN-Aのプライベート・ビューをVCN-Bリゾルバに関連付ける必要があります。
-
プライベートDNSリゾルバ: VCN専用プライベートDNSリゾルバは、DNS問合せへのレスポンスを次の順序で提供します: まず、アタッチされたプライベート・ビューでゾーンをチェックし、次にデフォルト・ビューでゾーンをチェックし、次に転送ルールをチェックし、最後にインターネットDNSを使用します。基本的に、インスタンスの問合せに対する回答を検索するエンジンです。
たとえば、次のイメージのスクリーンショットはVCNリゾルバ・ページを示しています。このVCN内のインスタンスから問合せを解決する際のシーケンスは次のようになります:
-
エンドポイントおよびルールの転送:転送エンドポイントは、OCI VCNと外部DNSリゾルバまたは他のDNSゾーンの間のコネクタとして機能します。転送ルールを使用すると、特定のDNS問合せを他のVCNリゾルバ内の指定された外部サーバーまたはリスナーに転送して、ハイブリッド・クラウドDNSアーキテクチャまたはマルチゾーン解決を実現できます。
-
リスニング・エンドポイント:これらのエンドポイントは、外部ソースからDNS問合せを受信するために使用されます。これにより、OCI DNSインフラストラクチャは、受信DNSリクエストをリスニングして応答し、さまざまなネットワーク構成でDNSクエリを管理できるようになります。
これらのコンポーネントは、OCI環境でDNSを管理およびカスタマイズするための強力なツールを提供します。
このチュートリアルを終えるまでには、これらのOCI DNSコンポーネントを使用して、クラウド環境内のクエリを効率的に管理および解決する方法についてしっかりと理解していただけます。
目的
- このチュートリアルの主な目的は、FE-VMクライアント(
fe-vm.feprivatesubnet.frontendvcn.oraclevcn.com
)がBE-VM (be-vm.beprivatesubnet.backendvcn.oraclevcn.com
)を問い合せること、またはその逆をリスナーLSNがこれらの問合せすべてに応答できるようにすることです。
最終的なアーキテクチャ
ノート:
最初にVCNとサブネットを作成するときに、コンピュート・インスタンスを起動するたびにDNSラベルを指定でき、そのインスタンスにホスト名を割り当てることができます。最終的に、インスタンスの完全修飾ドメイン名(FQDN)は次のようになります:
<VM-HOSTNAME>.<SUBNET-DNS-Label>.<VCN-DNS-Label>.oraclevcn.com
。これらのラベルの指定はオプションです。空のままにすると、このチュートリアルのFE-VMやBE-VMと同様に、リソース名から取得されたランダムな名前が付けられます。解決にOCIリソースのみが必要な場合、ここではリスナーは必要ありません。これは、「概要」の項で説明したプライベート・ビューのみを使用して行うことができるためです。ただし、ここでリスナーを使用する理由は、オンプレミスや他のクラウドなどの他の環境からのDNS解決も処理するためであり、このリスナーのリゾルバにすべてのプライベート・ビューを追加すれば十分です。この設定は、OCIリソースを解決するために他の環境(オンプレミス環境または他のクラウド環境)が必要になる場合がある特定のユース・ケースに対処します。ただし、このチュートリアルには含まれていません。
LSN-VCNのリゾルバがプライベート・ビューからのこれらの問合せをすべて処理するため、問合せがOCI、オンプレミス・ネットワークまたはその他のクラウド・プロバイダ・ネットワークからのものかどうかに関係なく、すべての
oraclevcn.com
およびoraclecloud.com
問合せを同じリスナーに転送する必要があります。このチュートリアルでは、オンプレミスまたはMicrosoft Azureからの問合せはテストせず、OCIインスタンスからの問合せのみをテストします。したがって、次の図は説明のみを目的としています。
前提条件
-
OCIテナンシへのアクセスと、必要なネットワークおよびコンピュート・サービスを管理するための権限。
-
OCIネットワークのルーティングとセキュリティとその機能(Virtual Cloud Network (VCN)、ルート表、Dynamic Routing Gateway (DRG)、セキュリティ・リスト、要塞およびOCIネットワーク・ロード・バランサ)の基本的な理解。
-
DNSの基本的な理解
-
最初の2つのチュートリアルを完了してください。
-
1つのVCNに1つのプライベート・サブネットが含まれ、既存のDRGにアタッチする必要があります。詳細は、タスク1.3: VCNsのDRGへのアタッチを参照してください。
- LSN-VCN:これによりリスナーがホストされます。リスナーは専用VCN内に存在する必要はありませんが、他のリソースから分離するために、このチュートリアルで行うことをお薦めします。
-
前提条件に基づいて、次のアーキテクチャをすでに構築している必要があります。
タスク1: ルーティングやセキュリティなどのネットワーク・コンポーネントの設定
タスク1.1: Virtual Cloud Network (LSN-VCN)の作成
LSN-VCN (10.3.0.0/16
)がすでに作成されており、LSN-Private-Subnet (10.3.0.0/24
)が含まれていることを確認します。
-
左上隅のハンバーガー・メニュー(≡)をクリックします。
- 「ネットワーキング」をクリックします。
- 「仮想クラウド・ネットワーク」をクリックします。
-
現在のところ、VCNは1つのプライベート・サブネットのみであり、デフォルトのルート表とセキュリティ・リストもアタッチされています。
タスク1.2: LSN-VCNのルーティングおよびセキュリティの構成
-
これは、サブネット・レベルで実行する必要があります。「VCNs」ページに移動し、「LSN-VCN」をクリックします。
-
プライベート・サブネットをクリックします。
-
割り当てられたルート表である「ルート表」をクリックします。
-
次のルールを追加します。
10.0.0.0/16
- DRG: DNS-VCN宛てのトラフィックをDRGにルーティングします。10.1.0.0/16
- DRG: フロントエンドVCN宛てのトラフィックをDRGにルーティングします。10.2.0.0/16
- DRG: バックエンドVCN宛てのトラフィックをDRGにルーティングします。
-
今はセキュリティをしよう。「サブネットの詳細」ページに移動し、割り当てられたセキュリティ・リストをクリックします。
-
イングレス・トラフィックの許可: DNS-VCN、フロントエンド-VCNおよびバックエンド-VCNからのDNSトラフィック(TCP/ポート53およびUDP/ポート53)。
-
すべてのエグレス・トラフィックを許可します。
タスク1.3: DNS-VCNのルーティングおよびセキュリティの構成
-
「VCNs」ページに移動し、「DNS-VCN」をクリックします。
-
プライベート・サブネットをクリックします。
-
割り当てられたルート表である「ルート表」をクリックします。
-
次のルールを追加します。
10.3.0.0/16
- DRG: LSN-VCN宛てのトラフィックをDRGにルーティングします。
-
必要なセキュリティ・ルールはすでに追加されています。詳細は、チュートリアル1: タスク1.4 - DNS-VCNのルーティングおよびセキュリティの構成を参照してください。
タスク1.4: フロントエンドVCNのルーティングおよびセキュリティの構成
- フロントエンドVCNについて、タスク1.3で実行したステップを繰り返します。
タスク1.5: バックエンドVCNのルーティングおよびセキュリティの構成
- バックエンドVCNについて、タスク1.3で実行したステップを繰り返します。
タスク2: OCIプライベートDNSコンポーネントの構成
タスク2.1: LSN-VCN Resolverへのプライベート・ビューの追加
-
LSN-VCNに移動し、「DNSリゾルバ」をクリックします。
- 下にスクロールして、「関連付けられたプライベート・ビュー」をクリックします。
- 「プライベート・ビューの管理」をクリックします。
- DNS-VCN、フロントエンド-VCNおよびバックエンド-VCNのプライベート・ビューを選択します。
- 「変更の保存」をクリックします。
- プライベート・ビューは正常に追加されました。
現在、LSN-VCNリゾルバは、他のプライベート・ゾーンで作成されたすべてのDNSレコードを表示できます。そのため、リスナーがFE-VMおよびBE-VM FQDNへの問合せを受信すると、関連するプライベート・ビューを使用して直接解決されます。
タスク2.2: LSN-VCN Resolverでのリスニング・エンドポイントの構成
-
OCIコンソールに移動します。
- 同じリゾルバで、「エンドポイント」をクリックします。
- 「エンドポイントの作成」をクリックします。
- 名前:エンドポイントの名前を入力します。
- サブネット: LSN-VCNのプライベート・サブネットを選択します。
- エンドポイント・タイプ: 「リスニング」を選択します。
- リスニングIPアドレス:
10.3.0.6
と入力します。 - 「エンドポイントの作成」をクリックします。
- リスニング・エンドポイントは正常に作成されました。
タスク2.3: フロントエンドVCN Resolverでの転送ルールの構成
-
左上隅のハンバーガー・メニュー(≡)をクリックします。
- 「ネットワーキング」をクリックします。
- 「仮想クラウド・ネットワーク」をクリックします。
-
「フロントエンド-VCN」をクリックします。
- VCNの「DNSリゾルバ」をクリックします。
-
下へスクロール
- 「ルール」をクリックします。
- 「ルールの管理」をクリックします。
- スクリーンショットに示すように、次の情報を含む別のルールを追加します。
- 「変更の保存」をクリックします。
- 転送ルールが正常に作成されました。
タスク2.4: バックエンドVCN Resolverでの転送ルールの構成
-
左上隅のハンバーガー・メニュー(≡)をクリックします。
- 「ネットワーキング」をクリックします。
- 「仮想クラウド・ネットワーク」をクリックします。
-
「バックエンドVCN」をクリックします。
-
VCNの「DNSリゾルバ」をクリックします。
-
下へスクロール
- 「ルール」をクリックします。
- 「ルールの管理」をクリックします。
- スクリーンショットに示すように、次の情報を含む別のルールを追加します。
- 「変更の保存」をクリックします。
- 転送ルールが正常に作成されました。
-
アーキテクチャは次のようになります。
タスク3: テストと検証
テスト・シナリオ1: BE-VMネイティブ・ドメインのリスナーを問い合せるFE-VM
-
FE-VMクライアント・マシンは、
be-vm.beprivatesubnet.backendvcn.oraclevcn.com
を解決できる必要があります。次の図は、達成を目指すテスト・シナリオを示しています。 -
OCIコンソールに移動し、BE-VMインスタンスに移動し、内部FQDNをコピーしてテストで使用します。
-
FE-VMにアクセスし、チュートリアル2: テスト・シナリオ1 - セカンダリDNSが停止している場合のプライマリDNSがFE-VM問合せに応答すると同じOCI要塞サービスを使用して問合せテストを実行します。接続したら、FE-VMから
be-vm.beprivatesubnet.backendvcn.oraclevcn.com
にoraclevcn.com
問合せを実行し、構成を検証します。様々な方法を使用して、設定が正しく機能していることを確認できます。host
コマンドを実行します。ping
コマンドを実行します。dig
コマンドを実行します。
テストシナリオに示すように、BE-VMネイティブドメインのIPアドレスを取得でき、pingはFQDNを使用して動作しています。これは、テストが成功したことを意味します。
テスト・シナリオ2: BE-VMでリスナーにFE-VMネイティブ・ドメインを問い合せる
-
BE-VMクライアント・マシンは、
fe-vm.feprivatesubnet.frontendvcn.oraclevcn.com
を解決できる必要があります。次の図は、達成を目指すテスト・シナリオを示しています。 -
OCIコンソールに移動し、FE-VMインスタンスに移動し、内部FQDNをコピーしてテストで使用します。
-
BE-VMにアクセスし、OCI Bastionサービスを使用して問合せテストを実行します。接続したら、BE-VMから
fe-vm.feprivatesubnet.frontendvcn.oraclevcn.com
へのoraclevcn.com
問合せを実行し、構成を検証します。様々な方法を使用して、設定が正しく機能していることを確認できます。host
コマンドを実行します。ping
コマンドを実行します。dig
コマンドを実行します。
テストシナリオに示すように、BE-VMネイティブドメインのIPアドレスを取得でき、pingはFQDNを使用して動作しています。これは、テストが成功したことを意味します。
次のステップ
このチュートリアルでは、仮想クラウド・ネットワーク内で柔軟かつ堅牢なDNS管理を提供するOCIのプライベート・ビュー、エンドポイントおよびルールの転送およびリスニング・エンドポイントを使用しました。これらのコンポーネントを併用すると、DNSの運用が合理化され、特に、統合されたマルチクラウドおよびオンプレミス環境を含むハイブリッドDNSシナリオでの、OCI環境内での効率的でスケーラブルな名前解決が保証されます。
このシリーズの次および最後のチュートリアルであるpfSenseファイアウォールを使用したDNSアーキテクチャへのセキュリティの追加では、pfSenseファイアウォールを構成してすべてのDNS問合せを検査および制御することで、DNSインフラストラクチャのセキュリティを強化します。これには、内部OCIドメイン(oraclevcn.com
およびoraclecloud.com
)とBIND9で管理されるカスタム・ドメイン(orastage.com
など)の両方のモニタリングおよびフィルタリング・リクエストが含まれます。
承認
- 作成者 - Anas abdallah (クラウド・ネットワーキング・スペシャリスト)
その他の学習リソース
docs.oracle.com/learnの他のラボを確認するか、Oracle Learning YouTubeチャネルで無料のラーニング・コンテンツにアクセスしてください。また、education.oracle.com/learning-explorerにアクセスしてOracle Learning Explorerになります。
製品ドキュメントについては、Oracle Help Centerを参照してください。
Use Oracle Cloud Infrastructure DNS to Resolve Native Domains
G16586-02
Copyright ©2025, Oracle and/or its affiliates.