VCNルート表

このトピックでは、仮想クラウド・ネットワーク(VCN)のルート表を管理する方法について説明します。動的ルーティング・ゲートウェイ(DRG)のルート表の詳細は、動的ルーティング・ゲートウェイ(DRG)を参照してください。

VCNのルーティングの概要

VCNでは、ルート表を使用して、VCNから(インターネット、オンプレミス・ネットワーク、ピアリングされたVCNなどに)トラフィックを送信します。これらのルート表には、すでに使い慣れている従来のネットワーク・ルート・ルールのように動作するルールがあります。各ルールでは、宛先CIDRブロックと、そのCIDRに一致するトラフィックのターゲット(ネクスト・ホップ)を指定します。

VCNでのルーティングの基本は次のとおりです:

  • 基本的なルーティング・シナリオは、サブネット外部の宛先にサブネットのトラフィックを送信するためのものです。サブネットには、選択した単一のルート表が関連付けられます。そのサブネット内のすべてのVNICは、ルート表のルールの対象になります。ルールは、サブネットから送信されるトラフィックのルーティング方法を制御します。
  • VCNローカル・ルーティングは、VCNのサブネット内のトラフィックを自動的に処理します。ローカル・ルーティングでは、トラフィックを有効にするためのルート・ルールを定義する必要はありません。
  • VCN内ルーティングを使用して、VCN内の別のサブネットを宛先とするトラフィックに対して、VCN内のネクスト・ホップ・プライベートIP、LPGまたはDRGを指定することもできます。VCN内ルーティングにより、より複雑なセキュリティおよびネットワーク仮想化のユースケースが可能になります。OCIでは、サブネット間のトラフィックに加えて、ゲートウェイを介してVCNに進入するトラフィックに対するVCN内ルーティングもサポートされます。
  • ルート表に重複するルールがある場合、Oracleでは表内で最も特定的なルール(最長接頭辞一致を満たすルール)を使用してトラフィックをルーティングします。一方のCIDRが他方のCIDR内に含まれている場合、2つのCIDRは重複していると言われます。VCNルート表には、ローカルVCNルートのエントリが含まれます。VCN CIDRブロックの静的ルート(VCNローカル・ルートと同じ接頭辞の長さ)を作成する場合、静的ルートが優先されます。
  • VCNの外部でルーティングするためのネットワーク・トラフィックと一致するルート・ルールがない場合、トラフィックは破棄(ブラックホール化)されます。
  • IPv6アドレス指定は、すべての商用リージョンおよび政府リージョンでサポートされています。詳細は、IPv6アドレスを参照してください。

VCNとオンプレミス・ネットワーク間のルーティングに関する重要な詳細は、オンプレミス・ネットワークへの接続のルーティング詳細を参照してください。

ルート表とルート・ルールの作業

各VCNには、VCN CIDRのルートを含む暗黙的なルールを持つデフォルトのルート表が自動的に付属しています。特に指定しない場合は、すべてのサブネットでVCNのデフォルト・ルート表が使用されます。VCNにルート・ルールを追加する場合、デフォルト表に簡単に追加できます。ただし、必要に応じて、サブネットごとにカスタム・ルート表を作成できます。たとえば、VCNにパブリック・サブネットとプライベート・サブネットがある場合(例は、シナリオC: VPNを使用したパブリック・サブネットとプライベート・サブネットを参照)、サブネットのルート・ルールは異なる必要があるため、サブネットに異なるルート表を使用する必要があります。

VCN内の各サブネットは、単一のルート表を使用します。サブネットの作成時に、どれを使用するかを指定します。いつでもサブネットが使用するルート表を変更できます。また、ルート表のルールを編集したり、表からすべてのルールを削除することもできます。

オプションで、作成時にカスタム・ルート表にわかりやすい名前を割り当てることができます。一意である必要はなく、後で変更できます。Oracleは、Oracle Cloud ID (OCID)と呼ばれる一意の識別子をルート表に自動的に割り当てます。詳細は、リソース識別子を参照してください。

ルート・ルールでは、宛先CIDRブロックと、そのCIDRに一致するトラフィックのターゲット(ネクスト・ホップ)を指定します。ルート・ルールで許可されるタイプのターゲットは次のとおりです:

ノート

特定のリソースがルート・ルールのターゲットである場合、それを削除することはできません。たとえば、トラフィックがルーティングされているインターネット・ゲートウェイは削除できません。ゲートウェイまたはその他のリソースを削除する前に、そのインターネット・ゲートウェイをターゲットとして持つ(すべてのルート表の)すべてのルールを削除してください。

ルート表にルート・ルールを追加するときに、宛先CIDRブロックとターゲット(およびそのターゲットが存在するコンパートメント)を指定します。例外: ターゲットがサービス・ゲートウェイである場合、宛先CIDRブロックのかわりに、対象サービスのパブリック・エンドポイントを表すOracle提供の文字列を指定します。この方法では、時間の経過とともに変化する可能性のあるサービスのCIDRブロックをすべて把握する必要はありません。

ルールを誤って構成した(たとえば、間違った宛先CIDRブロックを入力した)場合、ルーティングしようとしているネットワーク・トラフィックは、破棄(ブラックホール化)されるか、意図しないターゲットに送信される可能性があります。

ルート表は、コンパートメント間で移動できます。ルート表の移動は、VCNまたはサブネットへのアタッチメントには影響しません。ルート表を新しいコンパートメントに移動すると、固有のポリシーがただちに適用され、ルート表へのアクセスが影響を受けます。詳細は、アクセス制御を参照してください。

VCNのデフォルト・ルート表は削除できません。カスタム・ルート表を削除するには、サブネットまたはゲートウェイ(DRG、LPG、IGW、NGW、SGWなど)に関連付けられていない必要があります。

ルート表およびルート・ルールの最大数の詳細は、サービス制限を参照してください。

VCN内ルーティング

VCN内ルーティングでは、VCN CIDRブロック内に含まれるIPアドレスを宛先とするトラフィックに適用されるデフォルト・ルーティングの決定をオーバーライドできます。VCN内ルーティングには次の機能があります:

  • デフォルト・ルート: すべてのVCNルート表には、VCN CIDRの暗黙的なローカル・ルートがあります。それは、VCN内の宛先へのローカル・ダイレクト・ルーティングで使用されます。ルート表内のカスタム・ルートとともに、この暗黙的なローカル・ルートが最適なルート選択で使用されます。
  • カスタムVCN内ルート: VCN内トラフィックのルート表に作成するルート・ルール。すべてのカスタム・ルートには、ターゲット(VCN内のDRG、LPG、プライベートIP)および静的のルート・タイプがあります。
  • ルート選択: 最長接頭辞一致(または最も特定的なルート)が選択されます。同じ接頭辞のルートが複数ある場合は、次のルート・タイプの優先度に基づいて最適なルートが選択されます:
    1. 静的(ユーザー定義)
    2. 暗黙的なローカル・ルート(OCIによって自動的に作成)
  • IPv6: OCIは、IPv6 VCN接頭辞のVCN内ルーティングをサポートしています。
ノート

サブネット内ルーティングはサポートされていません。元のVNICと同じサブネット内の宛先IPアドレスを持つトラフィックは、適切な宛先に直接転送されます(ルーティングされません)。

ゲートウェイ・イングレス・ルーティング

サブネットを退出するトラフィックは、サブネット・ルート表を使用してルーティングされます。サブネットに進入するトラフィックは、ゲートウェイ・ルート表(そのゲートウェイに関連付けられたルート表)を使用してルーティングされます。ゲートウェイ・イングレス・ルーティングのルート・ルールは、次のリソースに関連付けられたルート表でサポートされています:
  • ローカル・ピアリング・ゲートウェイ(LPG)
  • 動的ルーティング・ゲートウェイ
  • インターネット・ゲートウェイ
  • NATゲートウェイ
  • サービス・ゲートウェイ
ノート

ルート表をこれらのゲートウェイのいずれかに関連付ける場合、ゲートウェイにはその後、常に関連付けられたルート表が必要です。関連付けられたルート表のルールは変更または削除できます。インターネット・ゲートウェイの場合、ターゲットはパブリック・サブネット内に存在する必要があります。

VCN内ルーティングの使用方法

次の例では、インターネットとVCN内のVNIC間を流れるすべてのトラフィックは、Subnet-Aのセキュリティ・アプライアンスを経由してルーティングされます。また、サブネット間のトラフィックは同じファイアウォールを経由します。この例を実装するには、次のようにします:
  1. インバウンド・トラフィックの10.0.1.4 (ファイアウォール)のネクスト・ホップを指定する静的ルート・ルールをIGWルート表に作成します。
  2. サブネットA、BおよびCのルート表を作成します。インターネットからサブネットBおよびCへのトラフィックは、サブネットAの10.0.1.4にあるファイアウォール・アプライアンスを経由する必要があります。サブネットBとC間のトラフィックは、同じファイアウォールを経由する必要があります。
図1. 内部ルーティングの例
内部ルーティングの例の図
コールアウト1: IGWルート表
宛先 ターゲット ルート・タイプ
10.0.0.0/16 10.0.1.4 静的
コールアウト2: サブネットAルート表
宛先 ターゲット ルート・タイプ
0.0.0.0/0 IGW 静的
コールアウト3: サブネットBルート表
宛先 ターゲット ルート・タイプ
10.0.0.0/16 10.0.1.4 静的
0.0.0.0/0 10.0.1.4 静的
コールアウト4: サブネットCルート表
宛先 ターゲット ルート・タイプ
10.0.0.0/16 10.0.1.4 静的
0.0.0.0/0 10.0.1.4 静的

必要なIAMポリシー

Oracle Cloud Infrastructureを使用するには、管理者からポリシーでセキュリティ・アクセス権が付与されている必要があります。コンソールまたは(SDK、CLIまたはその他のツールを使用した) REST APIのどれを使用しているかにかかわらず、このアクセス権が必要です。権限がない、または認可されていないというメッセージが表示された場合は、自分がどのタイプのアクセス権を持っているか、およびどのコンパートメントで作業するかを管理者に確認してください。

管理者用: ネットワーキングに対するIAMポリシーを参照してください。

VCNルート表の制限

このセクションは、VCNルート表の制限に固有です。DRGルート表の制限は、「DRGルート表の制限」セクションに記載されています。

リソース

スコープ

月次または年次ユニバーサル・クレジット

Pay-as-You-Goまたはプロモーション

VCNルート表 VCN 300 300
ルート・ルール VCNルート表 200 200

ルート・ターゲットとしてのプライベートIPの使用

プライベートIPの定義がよくわからない場合は、プライベートIPアドレスを参照してください。要するに、プライベートIPとは、プライベートIPアドレスと関連プロパティを含み、独自のOCIDを持つオブジェクトです。

一般的な使用例

OCIは、特定のサブネットのルート表を使用して、サブネットの外部にある宛先IPアドレスにトラフィックをルーティングします。宛先がVCNの外部にある場合、通常は、トラフィックをVCNのゲートウェイ(オンプレミス・ネットワークまたは別のVCNに接続されたDRGや、インターネットに接続されたインターネット・ゲートウェイなど)にルーティングするルート・ルールを設定します。宛先が同じVCNの別のサブネットにある場合、デフォルトでは、トラフィックはVCN CIDRのローカル・ルートを使用してルーティングされます。ただし、最初にVCNのインスタンス経由でそのトラフィックをルーティングすることもできます。その場合、VCNのゲートウェイではなく、VCNのプライベートIPをターゲットとして使用できます。これを行う理由はいくつかあります:

  • インスタンスからの送信トラフィックをフィルタするファイアウォールや侵入検出などの仮想ネットワーク・アプライアンス(NVA)を実装するため。
  • VCNでオーバーレイ・ネットワークを管理することにより、コンテナ・オーケストレーション・ワークロードを実行するため。
  • VCNにネットワーク・アドレス変換(NAT)を実装するため。かわりに、VCNでNATゲートウェイを使用することをお薦めします。一般的に、NATは、直接インターネットに接続できないインスタンスのアウトバウンド・インターネット・アクセスを可能にします。

このような使用例を実装するには、単純にトラフィックをインスタンスにルーティングするよりも多くの処理が必要です。また、インスタンス自体の構成も必要です。

ヒント

セカンダリ・プライベートIPアドレスを使用することで、プライベートIPルート・ターゲットの高可用性を有効にできます。障害に備えて、同じサブネット内の既存のVNICから別のVNICにセカンダリ・プライベートIPを移動できます。コンソールの使用(コンソールの手順)およびUpdatePrivateIp (APIの手順)を参照してください。

ターゲットとしてプライベートIPを使用するための要件

  • プライベートIPは、ルート表と同じVCN内にある必要があります。
  • プライベートIPのVNICは、VNICがトラフィックを転送できるように、ソース/宛先チェックをスキップするように構成する必要があります。デフォルトでは、VNICはチェックを実行するように構成されます。詳細は、VNICと物理NICの概要を参照してください。
  • パケットを転送するようにインスタンス自体を構成する必要があります。
  • ルート・ルールでは、IPアドレス自体ではなく、プライベートIPのOCIDをターゲットとして指定する必要があります。例外: コンソールを使用する場合、ターゲットとしてプライベートIPアドレス自体を指定することもできます。また、コンソールによって、ルール内で対応するOCIDが決定され、使用されます。

    重要

    プライベートIPターゲットを持つルート・ルールは、次の場合にブラックホールとなることがあります:
    • プライベートIPが割り当てられているインスタンスが停止または終了します
    • プライベートIPが割り当てられているVNICが更新されて、ソース/宛先チェックが有効になるか、削除されます
    • プライベートIPがVNICから割当て解除されます

    ターゲットのプライベートIPが終了すると、コンソールでは、ターゲットOCIDが存在しなくなったことを示すノートがルート・ルールに表示されます。

    フェイルオーバーの場合: ターゲット・インスタンスが終了した後で、セカンダリ・プライベートIPをスタンバイに移動する場合は、スタンバイ上の新しいターゲット・プライベートIPのOCIDを使用するようにルート・ルールを更新する必要があります。ルールではターゲットのOCIDが使用され、プライベートIPアドレス自体は使用されません。

一般的な設定プロセス

  1. トラフィックを受信および転送するインスタンスを決定します。
  2. インスタンスのプライベートIPを選択します(インスタンスのプライマリVNICまたはセカンダリVNICのどちらでも可能)。フェイルオーバーを実装する場合は、インスタンスのVNICのいずれかにセカンダリ・プライベートIPを設定します。
  3. プライベートIPのVNICでソース/宛先チェックを無効にします。VNICと物理NICの概要を参照してください。
  4. プライベートIPのOCIDを取得します。コンソールを使用している場合、OCIDまたはプライベートIPアドレス自体を、プライベートIPのコンパートメント名とともに取得できます。
  5. プライベートIPにトラフィックをルーティングする必要があるサブネットについて、サブネットのルート表を表示します。表に、同じ宛先CIDRで異なるターゲットを持つルールがすでにある場合、そのルールを削除します。
  6. 次を含むルート・ルールを追加します:

    • ターゲット・タイプ: VCNのルーティングの概要のターゲット・タイプのリストを参照してください。ターゲット・タイプがDRGの場合は、VCNのアタッチされているDRGがターゲットとして自動的に選択されるため、ターゲットを自分で指定する必要はありません。ターゲットがプライベートIPの場合、ターゲットを指定する前に、プライベートIPのVNICでソース/宛先チェックを無効にする必要があります。詳細は、ルート・ターゲットとしてのプライベートIPの使用を参照してください。
    • 宛先CIDRブロック: ターゲットがサービス・ゲートウェイでない場合のみ。値は、トラフィックの宛先CIDRブロックです。特定の宛先CIDRブロックを指定できます。または、サブネットを退出するすべてのトラフィックをこのルールで指定されたターゲットにルーティングする必要がある場合は、0.0.0.0/0を使用できます。
    • 宛先サービス: ターゲットがサービス・ゲートウェイである場合のみ。値は、目的のサービスCIDRラベルです。
    • コンパートメント: ターゲットが配置されているコンパートメント。
    • ターゲット: ターゲット。ターゲットがプライベートIPの場合、そのOCIDを入力します。または、プライベートIPアドレス自体を入力することもできます。その場合、コンソールによって、対応するOCIDが決定され、それがルート・ルールのターゲットとして使用されます。
    • 説明: ルールのオプションの説明。

前述のように、パケットを転送するようにインスタンス自体を構成する必要があります。

コンソールの使用

VCNのデフォルト・ルート表を表示するには
  1. ナビゲーション・メニューを開き、「ネットワーキング」をクリックして、「仮想クラウド・ネットワーク」をクリックします。
  2. 目的のVCNをクリックします。
  3. 「リソース」で、「ルート表」.をクリックします

    デフォルト・ルート表が表のリストに表示されます。

  4. 詳細を表示するデフォルト・ルート表をクリックします。
既存のルート表内のルールを更新するには

ルールは追加、編集または削除できます。

  1. ナビゲーション・メニューを開き、「ネットワーキング」をクリックして、「仮想クラウド・ネットワーク」をクリックします。
  2. 目的のVCNをクリックします。
  3. 「リソース」で、「ルート表」をクリックします。
  4. 目的のルート表をクリックします。
  5. ルート・ルールを作成する場合は、「ルート・ルールの追加」をクリックして次を入力します:

    • ターゲット・タイプ: VCNのルーティングの概要のターゲット・タイプのリストを参照してください。ターゲット・タイプがDRGの場合は、VCNのアタッチされているDRGがターゲットとして自動的に選択されるため、ターゲットを自分で指定する必要はありません。ターゲットがプライベートIPの場合、ターゲットを指定する前に、プライベートIPのVNICでソース/宛先チェックを無効にする必要があります。詳細は、ルート・ターゲットとしてのプライベートIPの使用を参照してください。
    • 宛先CIDRブロック: ターゲットがサービス・ゲートウェイでない場合のみ。値は、トラフィックの宛先CIDRブロックです。特定の宛先CIDRブロックを指定できます。または、サブネットを退出するすべてのトラフィックをこのルールで指定されたターゲットにルーティングする必要がある場合は、0.0.0.0/0を使用できます。
    • 宛先サービス: ターゲットがサービス・ゲートウェイである場合のみ。値は、目的のサービスCIDRラベルです。
    • コンパートメント: ターゲットが配置されているコンパートメント。
    • ターゲット: ターゲット。ターゲットがプライベートIPの場合、そのOCIDを入力します。または、プライベートIPアドレス自体を入力することもできます。その場合、コンソールによって、対応するOCIDが決定され、それがルート・ルールのターゲットとして使用されます。
    • 説明: ルールのオプションの説明。
  6. 既存のルールを削除する場合は、「アクション」メニューをクリックして、「削除」をクリックします。
  7. 既存のルールを編集する場合は、「アクション」メニューをクリックして、「編集」をクリックします。
ルート表を作成するには
  1. ナビゲーション・メニューを開き、「ネットワーキング」をクリックして、「仮想クラウド・ネットワーク」をクリックします。
  2. 目的のVCNをクリックします。
  3. 「リソース」で、「ルート表」をクリックします。
  4. 「ルート表の作成」をクリックします。
  5. 次を入力します:

    • 名前: ルート表のわかりやすい名前。名前は必ずしも一意である必要はありませんが、後でコンソールで変更することはできません(ただし、APIで変更できます)。機密情報の入力は避けてください。
    • コンパートメントで作成: ルート表を作成するコンパートメント(現在作業しているコンパートメントと異なる場合)。
  6. オプションで、「+Additionalルート・ルール」をクリックして、1つ以上のルート・ルールを追加します。各ルールには次の情報が含まれます(ルート表は、ルールを追加する準備ができるまでルールなしで存在できます):

    • ターゲット・タイプ: VCNのルーティングの概要のターゲット・タイプのリストを参照してください。ターゲット・タイプがDRGの場合は、VCNのアタッチされているDRGがターゲットとして自動的に選択されるため、ターゲットを自分で指定する必要はありません。ターゲットがプライベートIPの場合、ターゲットを指定する前に、プライベートIPのVNICでソース/宛先チェックを無効にする必要があります。詳細は、ルート・ターゲットとしてのプライベートIPの使用を参照してください。
    • 宛先CIDRブロック: ターゲットがサービス・ゲートウェイでない場合のみ。値は、トラフィックの宛先CIDRブロックです。特定の宛先CIDRブロックを指定できます。または、サブネットを退出するすべてのトラフィックをこのルールで指定されたターゲットにルーティングする必要がある場合は、0.0.0.0/0を使用できます。
    • 宛先サービス: ターゲットがサービス・ゲートウェイである場合のみ。値は、目的のサービスCIDRラベルです。
    • コンパートメント: ターゲットが配置されているコンパートメント。
    • ターゲット: ターゲット。ターゲットがプライベートIPの場合、そのOCIDを入力します。または、プライベートIPアドレス自体を入力することもできます。その場合、コンソールによって、対応するOCIDが決定され、それがルート・ルールのターゲットとして使用されます。
    • 説明: ルールのオプションの説明。
  7. タグ: リソースを作成する権限がある場合、そのリソースにフリーフォーム・タグを適用する権限もあります。定義済のタグを適用するには、タグ・ネームスペースを使用する権限が必要です。タグ付けの詳細は、リソース・タグを参照してください。タグを適用するかどうかがわからない場合は、このオプションをスキップするか(後でタグを適用できます)、管理者に問い合せてください。
  8. 「ルート表の作成」をクリックします。

    ルート表が作成され、選択したコンパートメントの「ルート表」ページに表示されます。これで、サブネットの作成時または更新時に、このルート表を指定できます。

サブネットが使用するルート表を変更するには
  1. ナビゲーション・メニューを開き、「ネットワーキング」をクリックして、「仮想クラウド・ネットワーク」をクリックします。
  2. 目的のVCNをクリックします。
  3. 「サブネット」をクリックします。
  4. 目的のサブネットをクリックします
  5. 「編集」をクリックします。
  6. 「ルート表」セクションで、サブネットが使用する新しいルート表を選択します。
  7. 「変更の保存」をクリックします。

    変更は数秒以内に有効になります。

ルート表を別のコンパートメントに移動するには
  1. ナビゲーション・メニューを開き、「ネットワーキング」をクリックして、「仮想クラウド・ネットワーク」をクリックします。
  2. 目的のVCNをクリックします。
  3. 「ルート表」をクリックします。
  4. リストでルート表を検索し、「アクション」メニューをクリックして、「リソースの移動」をクリックします。
  5. リストから宛先コンパートメントを選択します。
  6. 「リソースの移動」をクリックします。
ルート表を削除するには

前提条件: ルート表を削除するには、サブネットまたはゲートウェイ関連付けられていない必要があります。VCNのデフォルト・ルート表は削除できません。ルート表をゲートウェイに関連付ける場合、ゲートウェイにはその後、常に関連付けられたルート表が必要です。現在のルート表のルールを変更することも、別のルート表に置き換えることもできます。

  1. ナビゲーション・メニューを開き、「ネットワーキング」をクリックして、「仮想クラウド・ネットワーク」をクリックします。
  2. 目的のVCNをクリックします。
  3. 「リソース」で、「ルート表」をクリックします。
  4. 目的のルート表をクリックします。
  5. 「終了」をクリックします。
  6. プロンプトが表示されたら確認します。
ルート表のタグを管理するには
  1. ナビゲーション・メニューを開き、「ネットワーキング」をクリックして、「仮想クラウド・ネットワーク」をクリックします。
  2. 目的のVCNをクリックします。
  3. 「リソース」で、「ルート表」をクリックします。
  4. 目的のルート表をクリックします。
  5. 既存のタグを表示または編集するには、「タグ」タブをクリックします。または、「タグの適用」をクリックして新しいタグを追加します。

詳細は、リソース・タグを参照してください。