VCNルート表

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

VCNのルーティングの概要

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

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

  • 基本的なルーティング・シナリオは、VCN外部の宛先にサブネットのトラフィックを送信するためのものです。サブネットには、選択した単一のルート表が関連付けられます。そのサブネット内のすべてのVNICは、ルート表のルールの対象になります。ルールは、サブネットから送信されるトラフィックのルーティング方法を制御します。
  • VCNのサブネット内のトラフィックは、VCNのローカル・ルーティングで自動的に処理されます。そのトラフィックを有効化するために必要なルート・ルールはありません。一般的に、特定のVCNに属するルート表については、そのVCNのCIDR (またはサブセクション)をルールの宛先としてリストするルールを作成できません。Oracleでサブネットのルート表が使用されるのは、宛先IPアドレスがVCNのCIDRブロック内に存在しない場合のみです。
  • ルート表に重複するルールがある場合、Oracleでは表内で最も特定的なルール(最長接頭辞一致を満たすルール)を使用してトラフィックをルーティングします。一方のCIDRが他方のCIDRに含まれている場合、2つのCIDRは重複しているとみなされます。
  • VCNの外部でルーティングするためのネットワーク・トラフィックと一致するルート・ルールがない場合、トラフィックは破棄(ブラックホール化)されます。
  • IPv6アドレス指定は、すべての商用リージョンおよび政府リージョンでサポートされています。詳細は、IPv6アドレスを参照してください。

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

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

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

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

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

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

ノート

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

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

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

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

VCNのデフォルト・ルート表は削除できません。カスタム・ルート表を削除するには、サブネットにまだ関連付けられていない必要があります。または、転送ルーティングの拡張シナリオでは、それがVCNのDRGアタッチメントまたはLPGに関連付けられていない必要があります。

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

必要なIAMポリシー

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

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

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

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

一般的な使用例

前述のように、Oracleでは、宛先IPアドレスがVCN外部にあるトラフィックに対してのみ、特定のサブネットのルート表が使用されます。通常は、1つ以上のルールを設定して、そのトラフィックをVCNのゲートウェイにルーティングします(たとえば、オンプレミス・ネットワークに接続されたDRGや、インターネットに接続されたインターネット・ゲートウェイなど)。ただし、最初にVCNのインスタンス経由で(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. トラフィックを受信および転送するインスタンス(NATインスタンスなど)を決定します。
  2. インスタンスのプライベートIPを選択します(インスタンスのプライマリVNICまたはセカンダリVNICのどちらでも可能)。フェイルオーバーを実装する場合は、インスタンスのVNICのいずれかにセカンダリ・プライベートIPを設定します。
  3. プライベートIPのVNICでソース/宛先チェックを無効にします。VNICと物理NICの概要を参照してください。
  4. プライベートIPのOCIDを取得します。コンソールを使用している場合、OCIDまたはプライベートIPアドレス自体を、プライベートIPのコンパートメント名とともに取得できます。
  5. プライベートIPにトラフィックをルーティングする必要があるサブネットについて、サブネットのルート表を表示します。表に、同じ宛先CIDRで異なるターゲットを持つルールがすでにある場合、そのルールを削除します。
  6. 次を含むルート・ルールを追加します:

    • ターゲット・タイプ: プライベートIP。
    • 宛先CIDRブロック: サブネットから送信されるすべてのトラフィックがプライベートIPに移動する必要がある場合、0.0.0.0/0を使用します。
    • コンパートメント: プライベートIPのコンパートメント。
    • ターゲット: プライベート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ブロックです。0.0.0.0/0の値は、ルート表内の他のルールでカバーされないVCN外部のすべてのトラフィックが、このルールで指定されたターゲットに送信されることを意味します。
    • 宛先サービス: ターゲットがサービス・ゲートウェイである場合のみ。値は、目的のサービスCIDRラベルです。
    • コンパートメント: ターゲットが配置されているコンパートメント。
    • ターゲット: ターゲット。ターゲットがプライベートIPの場合、そのOCIDを入力します。または、プライベートIPアドレス自体を入力することもできます。その場合、コンソールによって、対応するOCIDが決定され、それがルート・ルールのターゲットとして使用されます。
    • 説明: ルールのオプションの説明。
  6. 既存のルールを削除する場合は、「アクション」アイコン(3つのドット)をクリックして、「削除」をクリックします。
  7. 既存のルールを編集する場合は、「アクション」アイコン(3つのドット)をクリックして、「編集」をクリックします。
ルート表を作成するには
  1. ナビゲーション・メニューを開き、「ネットワーキング」「仮想クラウド・ネットワーク」の順にクリックします。
  2. 目的のVCNをクリックします。
  3. 「リソース」で、「ルート表」をクリックします。
  4. 「ルート表の作成」をクリックします。
  5. 次を入力します:

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

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

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

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

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

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

前提条件: ルート表を削除するには、サブネットにまだ関連付けられていない必要があります。VCNのデフォルト・ルート表は削除できません。

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

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