こんにちは、k.katoです。
今回は、同じOCI内でも「異なるテナンシ」かつ「異なるリージョン」同士を、DRG(動的ルーティング・ゲートウェイ)を用いてリモート・ピアリング接続を行う方法をご紹介したいと思います!
同じリージョン、異なるテナンシにあるVCN同士の接続方法を知りたい場合はこちらの記事をご確認ください!
【Oracle Cloud】DRGで、同じリージョン、異なるテナンシにあるVCN同士を繋いでみた!
構成
今回の構成では、テナンシA(リクエスタ)とテナンシB(アクセプタ)を接続します。
テナンシAでは東京リージョンを使用し、テナンシBでは大阪リージョンを使用します。
この検証では、VM同士でpingが通ることを以て検証の成功としたいと思います!
・別のリージョン同士でピアリングする際には、まず両方のテナンシがそのリージョンにサブスクライブされている必要があります。(例:大阪と東京をつなぐ場合、テナンシA・B両方で大阪と東京の両リージョンを有効化しておく必要があります)
・2つのVCNでCIDRが重複しないようにしてください。
グループの作成
【グループの作成:テナンシA】
テナンシAのDefaultドメインにグループ「R-Group」(リクエスタグループ)を作成します。
ここに私のアカウントを所属させます。前提として、私はAdministoratorグループにも所属しているので、2つのグループに所属させていることになります。
後で使用するので、作成した「R-Group」のグループOCIDを控えておきます。
【グループの作成:テナンシB】
テナンシBでは、自分のユーザがAdministoratorグループに所属しているのであれば、グループの作成は必要ありません。所属していないのであれば、DRGやVCN、ポリシーの作成権限など必要なポリシーを設定したグループを別途作成してください。
ポリシーの作成
ここが今回の1番の肝ですね!
ここからの内容は、VCN間のルーティングに関するIAMポリシーのドキュメントの、[アップグレードされたDRGを使用したリモート・ピアリング]という内容をもとにしています。
【ポリシーの作成:テナンシA】
まず先に、テナンシBのテナンシOCIDを控えておく必要があります。テナンシBにログインし、右上のユーザアイコンからテナンシの詳細画面を表示してコピーしてください。
以下の準備が必要です!
用意するもの
ocid1.group.oc1..aaaaaa...ocid1.tenancy.oc1..aaaaaaaaa....これらが用意できましたら、ルートコンパートメントに、以下のポリシー「R-Policy」を作成します。
Define group R-Group as <テナンシAのグループOCID>
Endorse group R-Group to manage remote-peering-to in tenancy Acceptor
Allow group R-Group to manage remote-peering-from in tenancy
【ポリシーの作成:テナンシB】
用意するもの
ocid1.tenancy.oc1..aaaaaa....ocid1.group.oc1..aaaaaa.....これらが用意できましたら、ルートコンパートメントに、以下のポリシー「A-Policy」を作成します。
Define group R-Group as <テナンシAのグループOCID>
Admit group R-Group of tenancy Requestor to manage remote-peering-to in tenancy
VCN、VM、セキュリティリストの設定
本来、本番環境などではセキュリティの観点からプライベート・サブネットの利用が推奨されます。本記事では、簡単な検証を行うため、パブリック・サブネットを使用して構成しています。
【テナンシA】
1.ネットワーク(VCN / サブネット)
| 項目 | 設定値 |
|---|---|
| VCN CIDR | 10.0.0.0/16 |
| パブリックサブネット | 10.0.0.0/24 |
2.NSG(またはセキュリティリスト)
イングレス・ルール(受信)
| プロトコル | ポート範囲 | ソース(接続元) | 説明 |
|---|---|---|---|
| ICMP | Type: 8, Code: 0 | 192.168.0.0/16 | アクセプタ(大阪)からのPing応答用 |
| TCP | 22 | (接続元のIPアドレス) | SSH接続用 |
エグレス・ルール(送信)
| プロトコル | ポート範囲 | 送信先 | 説明 |
|---|---|---|---|
| すべてのプロトコル | All | 0.0.0.0/0 | 全方向へのアウトバウンド許可 |
3.ゲートウェイ
- 動的ルーティング・ゲートウェイ(DRG)
- DRGアタッチメント
- インターネット・ゲートウェイ(vmとの接続のため)
4.ルート表
| 宛先 CIDR | ターゲット | 説明 |
|---|---|---|
| 192.168.0.0/16 | 動的ルーティング・ゲートウェイ | アクセプタ(大阪)宛 |
| 0.0.0.0/0 | インターネット・ゲートウェイ | インターネット宛 |
5.コンピュート・インスタンス(VM)
| 項目 | 設定値 |
|---|---|
| 用途 | Ping送信・検証用 |
| シェイプ | VM.Standard.A1.Flex |
| スペック | 1 OCPU / 6 GB メモリ |
| 配置 | パブリックサブネット |
【テナンシB】
1.ネットワーク(VCN / サブネット)
| 項目 | 設定値 |
|---|---|
| VCN CIDR | 192.168.0.0/16 |
| パブリックサブネット | 192.168.0.0/24 |
2.セキュリティ・リスト
イングレス・ルール(受信)
| プロトコル | ポート範囲 | ソース(接続元) | 説明 |
|---|---|---|---|
| ICMP | Type: 8, Code: 0 | 10.0.0.0/16 | リクエスタ(東京)からのPing受信用 |
| TCP | 22 | (接続元のIPアドレス) | SSH接続用 |
エグレス・ルール(送信)
| プロトコル | ポート範囲 | 送信先 | 説明 |
|---|---|---|---|
| すべてのプロトコル | All | 0.0.0.0/0 | 全方向へのアウトバウンド許可 |
3.ゲートウェイ
- 動的ルーティング・ゲートウェイ(DRG)
- DRGアタッチメント
4.ルート表
| 宛先 CIDR | ターゲット | 説明 |
|---|---|---|
| 10.0.0.0/16 | 動的ルーティング・ゲートウェイ | リクエスタ(東京)宛 |
5.コンピュート・インスタンス(VM)
| 項目 | 設定値 |
|---|---|
| 用途 | Ping受信・検証用 |
| シェイプ | VM.Standard.A1.Flex |
| スペック | 1 OCPU / 6 GB メモリ |
| 配置 | パブリックサブネット |
DRGの設定
それぞれのDRGで、以下のリモート・ピアリング接続アタッチメントを作成します。
テナンシA DRG:R-rpc
テナンシB DRG:A-rpc
必ず、リクエスタ(今回はテナンシA)から接続の確立を行ってください。
1.テナンシBのリモート・ピアリング接続の詳細を開き、OCIDをコピーする。
2.テナンシAのリモート・ピアリング接続の詳細を開き、「接続の確立」を押下し、リージョンは「大阪」、コピーしたOCIDを貼り付け、接続する。
3.今度は逆を行います。テナンシAのリモート・ピアリング接続のOCIDをコピーします。テナンシBのリモート・ピアリング接続の詳細画面から、「接続の確立」を押下し、リージョンは「東京」、コピーしたOCIDを貼り付け、接続を行います。
検証
では、検証してみましょう。
テナンシA(東京)のVMから、テナンシB(大阪)のVMに向かって、pingを飛ばしてみます。
成功です!!
終わりに
最後までお読みいただき、ありがとうございました!
テナンシ間接続を活用すれば、既存のネットワーク構成を変更することなく、異なるテナンシにあるDRGを介した安全なプライベート通信が可能になります。
「既存のネットワーク資産をそのまま利用したい」場合や、「テナンシを跨いでリソースを統合・共有したい」といったシーンで、環境を再構築する工数を大幅に削減できる非常に有効な手段です。
この記事の内容が、皆様の運用や設計の一助となれば幸いです。







