サイト間VPNの概要
サイト間VPNは、オンプレミス・ネットワークのIPSec接続とVirtual Cloud Network (VCN)を提供します。IPSecプロトコル・スイートは、パケットがソースから宛先に転送される前にIPトラフィックを暗号化し、到着時にトラフィックを復号化します。サイト間VPNは、以前VPN接続やIPSec VPNと呼ばれていました。
セキュアなVPNソリューションとしては他に、Oracle Marketplaceでアクセス可能なクライアントVPNソリューションであるOpenVPNがあります。OpenVPNは、個々のデバイスをVCNに接続するものではなく、サイトまたはネットワーク全体に接続します。
このトピックでは、VCNのサイト間VPNの概要を示します。サイト間VPCを含むシナリオについては、シナリオB: VPNを使用したプライベート・ネットおよびシナリオC: VPNを使用したパブリック・サブセットとプライベート・サブセットに関する項を参照してください。
制限関連の情報については、サイト間VPNの制限およびサービス制限の引上げのリクエストを参照してください。
必要な人員および知識
通常、Oracle Cloud Infrastructureを使用したサイト間VPNの設定には、次のタイプの人員が関与します:
- Oracle Cloud InfrastructureConsoleを使用して仮想ネットワークおよびサイト間VPNに必要なクラウド・コンポーネントを設定する、Dev Opsチーム・メンバー(または同様の職務)。
- Dev Opsチーム・メンバーから提供された情報を使用して顧客構内機器(CPE)デバイスを構成する、ネットワーク・エンジニア(または同様の職務)。
Dev Opsチーム・メンバーは、クラウド・コンポーネントの作成と管理に必要な権限を持っている必要があります。Oracle Cloud Infrastructureテナンシのデフォルト管理者または管理者グループのメンバーであれば、必要な権限をすでに持っています。ネットワーキング・コンポーネントへのアクセスの制限の詳細は、アクセス制御に関する項を参照してください。
次の概念と定義をよく理解している人である必要があります:
- 「Oracle Cloud Infrastructureへようこそ」で説明されているOracle Cloud Infrastructureの基礎
- 基本的なネットワーキング・サービス・コンポーネント
- IPSecトンネルの一般的な機能
- クラウド・リソース
- ユーザーがクラウド・プラットフォームでプロビジョニングするあらゆるものです。たとえば、Oracle Cloud Infrastructureでは、クラウド・リソースとして、VCN、コンピュート・インスタンス、ユーザー、コンパートメント、ロード・バランサー、またはプラットフォーム上のその他のサービス・コンポーネントを使用できます。
- オンプレミス
- 従来のデータ・センター環境を指す、クラウド・テクノロジで広く使用されている用語。オンプレミスには、コロケーション・シナリオ、専用フロア・スペース、専用データ・センター・ビルディング、またはデスク下で稼働するデスクトップなどがあります。
- Oracle Cloud Identifier (OCID)
- Oracle Cloud Infrastructureでプロビジョニングする各リソースに割り当てられる一意の識別子。OCIDは、Oracleによって自動的に生成される長い文字列です。OCIDの値を選択したり、リソースのOCIDを変更することはできません。詳細は、リソース識別子を参照してください。
Oracle IPSec接続について
一般に、IPSec接続は次のモードで構成できます:
- トランスポート・モード: IPSecはパケットの実際のペイロードのみを暗号化して認証し、ヘッダー情報は元のままです。
- トンネル・モード(Oracleでサポート): IPSecはパケット全体を暗号化して認証します。暗号化の後、パケットはカプセル化されて、異なるヘッダー情報を持つ新しいIPパケットを形成します。
Oracle Cloud Infrastructureは、IPSec VPNsのトンネル・モードのみをサポートしています。
各Oracle IPSec接続は、いくつかの冗長IPSecトンネルで構成されます。特定のトンネルについて、Border Gateway Protocol (BGP)動的ルーティングか静的ルーティングのいずれかを使用して、そのトンネルのトラフィックをルーティングできます。ルーティングの詳細については後述します。
サイト間VPN IPSecトンネルを使用すると、次の利点があります:
- データの送付に公衆インターネット回線を使用しているため、サイト間で高価な専用のリース回線は必要ありません。
- 参加しているネットワークおよびノードの内部IPアドレスは、外部ユーザーには公開されません。
- ソース・サイトと宛先サイト間の通信全体が暗号化されるため、情報窃取の可能性が減少します。
Site-to-Site VPNのルーティング
サイト間VPNを設定する場合、2つの冗長IPSecトンネルがあります。Oracleでは、両方のトンネルを使用するようにCPEデバイスを構成することをお薦めします(デバイスでサポートされている場合)。以前は、Oracleによって、最大4つのIPSecトンネルを持つIPSec接続が作成されていました。
次の3つのルーティング・タイプを使用でき、サイト間VPNの各IPSecトンネルに対して個別にルーティング・タイプを選択できます:
- BGP動的ルーティング: 使用可能なルートは、BGPによって動的に学習されます。DRGは、オンプレミス・ネットワークからルートを動的に学習します。Oracle側では、DRGはVCNのサブネットを通知します。
- 静的ルーティング: DRGへのIPSec接続を設定する場合は、VCNに通知する必要のあるオンプレミス・ネットワークへの特定のルートを指定します。VCNのサブネットへの静的ルートを使用して、CPEデバイスも構成する必要があります。これらのルートは動的に学習されません。
- ポリシーベースのルーティング: DRGへのIPSec接続を設定する場合は、VCNに通知する必要のあるオンプレミス・ネットワークへの特定のルートを指定します。VCNのサブネットへの静的ルートを使用して、CPEデバイスも構成する必要があります。これらのルートは動的に学習されません。
Site-to-Site VPNの重要なルーティング詳細
サイト間VPNのルーティングについて理解する重要な詳細を次に示します:
-
ルーティングの選択肢:
- 当初、サイト間VPNでサポートされるのは静的ルーティングのみであり、IPSec接続全体に対して少なくとも1つの静的ルートを指定する必要があります。
- 現在は、2つの異なるタイプのルーティング(BGPと静的ルーティング)が使用可能になったため、トンネルごとにルーティング・タイプを構成します。あるトンネルに対して同時にサポートされるルーティングのタイプは1つだけです。
- 一般に、IPSec接続内のすべてのトンネルに対して同じルーティング・タイプを使用することをお薦めします。1つの例外は、静的ルーティングとBGPとの切替えプロセス中である場合は、一方のトンネルのトンネルが一時的にまだ静的ルーティングを使用していて、もう一方のトンネルのすでにBGPに切り替わっている可能性があります。
- IPSec接続を作成するとき、BGPを使用するように各トンネルを明示的に構成しないかぎりは、すべてのトンネルのデフォルトのルーティング・タイプが静的ルーティングになります。
-
必要なルーティング情報:
- BGPを選択した場合は、各トンネルに2つのIPアドレス(トンネルのBPGセッションで2つのBGPスピーカそれぞれにつき1つ)を指定する必要があります。これらのアドレスは、IPSec接続の暗号化ドメインに存在している必要があります。また、オンプレミス・ネットワークにBGP自律型システム番号(BGP ASN)を指定する必要もあります。
- 静的ルーティングを選択した場合は、少なくとも1つ(最大10)の静的ルートを指定する必要があります。静的ルートはIPSec接続全体で構成されるため、静的ルーティングを使用するように構成されたIPSec接続のすべてのトンネルに対して同じ静的ルート・セットが使用されます。IPSec接続の作成後は、いつでも静的ルートを変更できます。CPEデバイスとVCNの間でPATを実行している場合は、IPSec接続の静的ルートがPAT IPアドレスになります。PATを使用したレイアウトの例を参照してください。
- 静的ルーティングを選択した場合、トンネルのトラブルシューティングまたはモニタリングの目的でトンネルの各端にIPアドレスを指定できます。
- BGPを使用するようにトンネルが構成されている場合、IPSec接続の静的ルートは無視されます。IPSec接続に関連付けられている静的ルートは、そのトンネルが静的ルーティングを使用するように構成されている場合のみ、特定のトンネルのトラフィックのルーティングに使用されます。これは特に、静的ルーティングを使用するサイト間VPNがあるが、BGPの使用に切り替える場合に関連します。
-
ルーティングの変更:
- トンネルをBGPから静的ルーティングに変更する場合は、まず、IPSec接続自体に少なくとも1つの静的ルートが関連付けられていることを確認する必要があります。
- 既存のトンネルのルーティング・タイプは、(現時点でOracleによってトンネルがプロビジョニングされていないかぎり、)いつでも変更できます。ルーティングの変更中も、トンネルは稼働しているままです(そのIPSecステータスは変わりありません)。ただし、再プロビジョニング中およびCPPデバイスの再構成中は、トンネルを通過するトラフィックが一時的に中断されます。サイト間VPNの変更の詳細は、サイト間VPNの作業を参照してください。
- トンネル別にルーティング・タイプを別々に構成するため、サイト間VPNを静的ルーティングからBGPに切り替える場合は、トンネルに対してこれを行うことができます。これにより、IPSec接続全体の停止を回避できます。手順については、静的ルーティングからBGP動的ルーティングへの変更を参照してください。
接続が複数ある場合のルート通知とパス・プリファレンス
BGPを使用する場合、VCNにアタッチされたDRGはCPEへのルートを通知します。
オンプレミス・ネットワークとVCNの間にいくつかの接続を設定する場合は、DRGが通知するルート、および優先接続を使用するためのパス・プリファレンスの設定方法について理解する必要があります。
詳細は、オンプレミス・ネットワークへの接続のルーティング詳細を参照してください。
Site-to-Site VPNでの特定のトンネルの優先
サイト間VPN内で、どのトンネルを優先するかを設定できます。構成できる項目は次のとおりです:
- CPEのBGPローカル・プリファレンス: BGPを使用する場合、CPEデバイス上でBGPローカル・プリファレンス属性を構成して、オンプレミス・ネットワークから開始したVCNへの接続に対して優先されるトンネルを制御できます。Oracleでは非対称型ルーティングが使用されるため、Oracleの応答をその同じトンネルで実行する場合は、他の属性を構成する必要があります。次の2つの項目を参照してください。
- 優先トンネルに、より限定的なルート:優先トンネルのほうには、より限定的なルートを通知するようにCPPを構成できます。Oracleでは、応答時または接続の開始時に接頭辞が最も長いルートが使用されます。
- ASパス・プリペンド: BGPでは最短のASパスが優先されるため、BGPを使用する場合は、特定ルートに対してどのパスが最短かを制御するためにASパス・プリペンドを使用できます。Oracleでは、応答時または接続の開始時に最短ASパスが使用されます。
Site-to-Site VPNコンポーネントの概要
基本的なネットワーキング・サービス・コンポーネントについてまだ十分に知識がない場合は、先に進む前にネットワーキングを参照してください。
VCNにサイト間VPNを設定するときは、複数のネットワーキング・コンポーネントを作成する必要があります。コンポーネントは、コンソールまたはAPIを使用して作成できます。コンポーネントの次の図および説明を参照してください。
宛先CIDR | ルート・ターゲット |
---|---|
0.0.0.0/0 | DRG |
- CPEオブジェクト
- サイト間VPNのオンプレミス側の終端は、オンプレミス・ネットワーク内の実際のデバイスの(ハードウェアまたはソフトウェア)です。顧客構外機器(CPE)という語はこのタイプのオンプレミス機器を示す言語であり、一部の業界では一般的に使用しています。VPNを設定する際には、デバイスの仮想表現を作成する必要があります。Oracleではこの仮想表現をCPEと呼びますが、このドキュメントでは通常、仮想表現と実際のCPEデバイスを区別するためにCPEオブジェクトという語を使用します。CPEオブジェクトには、Oracleが必要とするデバイスに関する基本情報が含まれています。単一のCPEオブジェクト・パブリックIPには、最大8つのIPSec接続を含めることができます。
- 動的ルーティング・ゲートウェイ(DRG)
- Oracleのサイト間VPNの終端は、動的ルーティング・ゲートウェイと呼ばれる仮想ルーターです。これは、オンプレミス・ネットワークからVCNへのゲートウェイになります。オンプレミス・ネットワークおよびVCNに接続するためにサイト間VPNかOracle Cloud Infrastructure FastConnectプライベート仮想回線のどちらのを使用しているかにかかわらず、トラフィックはDRGを通過します。詳細は、Dynamic Routing Gatewaysを参照してください。
- IPsec接続
- CPEオブジェクトとDRGを作成した後で、IPSec接続を作成して接続します。これは、サイト間VPNを表す親オブジェクトと考えることができます。IPSec接続には独自のOCIDがあります。このコンポーネントを作成するときは、各IPSecトンネルに使用するルーティングのタイプを構成し、関連するルーティング情報を指定します。1つのCPEオブジェクトのパブリックIPには、最大8つのIPSec接続を設定できます。
- トンネル
- IPSecトンネルは、セキュアなIPSecエンドポイント間のトラフィックを暗号化するために使用されます。Oracleにより、冗長性のために各IPSec接続に2つのトンネルが作成されます。各トンネルには独自のOCIDがあります。両方のトンネルで障害が発生した場合、またはOracleがメンテナンスのために1つオフラインになった場合に備えて、CPEデバイスを構成することをお薦めします。各トンネルには、CPEデバイスの構成時にネットワーク・エンジニアが必要とする構成ファイルが含まれています。この情報には、IPアドレスと共有シークレットのほか、ISAKMPおよびIPSecパラメータも含まれます。CPE構成ヘルパーを使用すると、ネットワーク・エンジニアが必要とする情報を収集できます。詳細は、サポートされているIPSecパラメータおよび検証済CPEデバイスを参照してください。
コンポーネントのアクセス制御
アクセス制御の目的で、サイト間VPNを設定するとき、各コンポーネントを配置するコンパートメントを指定する必要があります。使用するコンパートメントがわからない場合は、すべてのコンポーネントをVCNと同じコンパートメント内に配置します。IPSecトンネルは常に、親IPSec接続と同じコンパートメントに存在します。コンパートメントの詳細、およびネットワーキング・コンポーネントへのアクセスの制限の詳細は、アクセス制御に関する項を参照してください。
コンポーネントの名前と識別子
オプションで、コンポーネントの作成時に各コンポーネントにわかりやすい名前を割り当てることができます。これらの名前は一意である必要はありませんが、テナンシ全体で一意の名前を使用することがベスト・プラクティスです。機密情報の入力は避けてください。Oracleによって各コンポーネントにOCIDが自動的に割り当てられます。詳細は、リソース識別子を参照してください。
CPEがNATデバイスの背後にある場合
一般的に、接続のオンプレミス側で構成されたCPE IKE識別子は、Oracleが使用しているCPE IKE識別子と一致する必要があります。デフォルトでは、OracleではCPEのパブリックIPアドレスが使用されます。これは、Oracle ConsoleでCPEオブジェクトを作成したときに指定したものです。ただし、CPEがNATデバイスの背後にある場合、次の図に示すように、オンプレミス側で構成されたCPE IKE識別子がCPEのプライベートIPアドレスになる可能性があります。
一部のCPEプラットフォームでは、ローカルIKE識別子を変更できません。実行できない場合は、Oracle ConsoleでリモートIKE IDを変更して、CPEのローカルIKE IDと一致させる必要があります。IPSec接続を設定するときに、または設定後に、IPSec接続を編集して値を指定できます。Oracleでは、値がIPアドレスまたはcpe.example.comなどの完全修飾ドメイン名(FQDN)であることが必要です。手順については、Oracleで使用されるCPE IKE識別子の変更を参照してください。
CPE構成のリソース
ネットワーク・エンジニアは、IPSec接続のオンプレミス側にあるCPEを構成する必要があります。これを容易にするために、Oracleでは次のリソースを提供しています:
- CPE構成ヘルパー: ネットワーク・エンジニアがCPPの構成時に使用できるコンテンツのセットを生成する、Oracle Consoleのツール。
- 検証済CPEデバイスのリスト: デバイスごとに構成手順が提供されます。
- サポートされているIPSecパラメータのリスト: CPEは検証済デバイスのリストにない場合は、このパラメータのリストを使用してCPEPEを構成できます。
詳細は、CPE構成も参照してください。