プライベートIPアドレス

仮想クラウド・ネットワークでインスタンスに割り当てられたIPアドレスを管理する方法について学習します。

IPv6アドレス指定は、すべての商用リージョンおよび政府リージョンでサポートされています。詳細は、IPv6アドレスを参照してください。

IPアドレスの概要

インスタンスは、通信にIPアドレスを使用します。各インスタンスには少なくとも1つのプライベートIPアドレスがあり、オプションで1つ以上のパブリックIPアドレスを指定できます。プライベートIPアドレスによって、インスタンスは、(サイト間VPNまたはOracle Cloud Infrastructure FastConnectを使用して) VCN内の他のインスタンスや、オンプレミス・ネットワークのホストと通信できます。パブリックIPアドレスによって、インスタンスは、インターネット上のホストと通信できます。詳細は、次の関連トピックを参照してください:

プライベートIPオブジェクトについて

ネットワーキング・サービスは、プライベートIPオブジェクトを介したプライベートIPアドレスの割当てをサポートしています。プライベートIPオブジェクトは次のいずれかです。

  • IPアドレス: /32ビットのIPアドレス。
  • IP CIDRアドレス: ネットワーク・マスクで指定されたIPアドレス範囲(CIDR表記)。

IPアドレス属性

IPアドレスには次のものを含めることができます。

  • DNSのオプションのホスト名(詳細は、Virtual Cloud NetworkのDNSを参照)。
  • オプションのパブリックIPが割り当てられます。
  • プライマリまたはセカンダリ・プライベートIPアドレスとして指定します(暗黙の/32ビット・ネットマスクを使用)。

IP CIDRアドレス属性

IP CIDRアドレスのプライベート・オブジェクトは、常にユーザー定義の'/X'ネットマスク値を持つセカンダリ・プライベートIPオブジェクトです。

プライベートIPオブジェクト属性

プライベートIPオブジェクトには次の属性があります。

  • 自分またはOracleによる割当。
  • Oracleが割り当てたOCID (リソース識別子を参照)。APIを使用する場合は、各プライベートIPオブジェクトにわかりやすい名前を割り当てることもできます。
  • タイプ: IPアドレス(/32ビットIPアドレス)またはIP CIDRアドレス(CIDR形式のIPアドレスの範囲)。
  • カスタム・ルート表とのオプションの関連付け(リソースごとのルーティングを参照)。IP CIDRアドレスの場合、範囲内のすべてのIPがカスタム・ルート表アソシエーションを共有します。

各インスタンスは、インスタンスの作成時にプライマリ・プライベートIPアドレス・オブジェクトを受け取ります。ネットワーキング・サービスは、Dynamic Host Configuration Protocol (DHCP)を使用してオブジェクトのプライベートIPアドレスをインスタンスに渡します。このアドレスはインスタンスの存続期間中に変更されず、インスタンスから削除できません。プライベートIPオブジェクトは、インスタンスの終了時に終了されます。

インスタンスにセカンダリVNICがアタッチされている場合は、それらの各VNICにもプライマリ・プライベートIPが含まれます。

プライベートIPアドレスには、オプションでパブリックIPを割り当てることができます。

プライベートIPオブジェクトは、VCN内のルート・ルールのターゲットにできます。詳細は、ルート・ターゲットとしてのプライベートIPの使用を参照してください。

セカンダリ・プライベートIPオブジェクトについて

セカンダリ・プライベートIPアドレスまたはセカンダリ・プライベートIP CIDRアドレスを、作成後にコンピュート・インスタンスに追加できます。インスタンスのプライマリVNICまたはセカンダリVNICに追加できます。セカンダリ・プライベートIPアドレスまたはセカンダリ・プライベートIP CIDRアドレスは、VNICのサブネットのCIDRの1つから取得する必要があります。両方のVNICが同じサブネットに属している場合、セカンダリ・プライベートIPアドレスまたはIP CIDRアドレスのいずれかを、あるインスタンスのVNICから別のインスタンスのVNICに移動できます。CIDR IPアドレスは、予約済または割当て済の他のプライベートIPオブジェクトと重複できません。

セカンダリ・プライベートIPアドレスを使用する理由は次のとおりです:

  • インスタンス・フェイルオーバー: セカンダリ・プライベートIPをインスタンスに割り当てます。インスタンスに問題がある場合、そのセカンダリ・プライベートIPを同じサブネットのスタンバイ・インスタンスに簡単に再割当てできます。セカンダリ・プライベートIPにパブリックIPが割り当てられている場合、そのパブリックIPはプライベートIPとともに移動します。
  • 単一インスタンスでのいくつかのサービスまたはエンドポイントの実行: たとえば、単一インスタンスでいくつかのコンテナ・ポッドを実行し、それぞれにVCNのCIDRからのIPアドレスを使用することができました。コンテナは、VCNの他のインスタンスおよびサービスと直接接続します。別の例: それぞれ独自のIPアドレスを使用して、いくつかのSSL Webサイトを実行することもできます。

セカンダリ・プライベートIP CIDRアドレスを使用する理由をいくつか示します:

  • VNICのプライベートIPアドレスの数の増加: 64を超えるプライベートIPアドレスが必要な場合は、セカンダリ・プライベートIP CIDRアドレスをVNICに割り当てます。ネットマスクが/26より大きいCIDRブロックを割り当てるか、複数の小さいCIDRブロックを作成できます。ただし、VNIC当たり64のプライベートIPオブジェクトの制限を超えないようにする必要があります。
  • IPアドレスの割当ての高速化: セカンダリ・プライベートIP CIDRアドレスをVNICに割り当てると、1つのAPIコールで連続する範囲のIPアドレスを割り当てることができます。この方法では、数秒以内に追加のIPアドレスが使用可能になります。

セカンダリ・プライベートIPオブジェクトの詳細は次のとおりです:

  • ベア・メタル(BM)インスタンスと仮想マシン(VM)インスタンスの両方について、すべてのコンピュート・シェイプおよびOSタイプでサポートされます。
  • VNICは、最大65のプライベートIPv4アドレス(1つのプライマリ・プライベートIPアドレスと最大64のセカンダリ・プライベートIPアドレスの組合せ)を持つことができます。VNICには、32個のセカンダリIPv6オブジェクトを含めることもできます。サブネットがIPv6のみのアドレス指定用に構成されている場合を除き、VNICのプライマリ・アドレスはIPv4です。
  • 割当てできるのは、インスタンスの作成後(またはセカンダリVNICの作成/アタッチ後)のみです。
  • リージョナル・サブネット内のVNICに割り当てられたセカンダリ・プライベートIPオブジェクトには、nullの可用性ドメイン属性があります。これを比較して、VNICのプライマリ・プライベートIPと比較します。このプライベートIPでは、インスタンスのサブネットがリージョラルかAD固有かに関係なく、常にその可用性ドメイン属性がインスタンスの可用性ドメインのドメインに設定されています。
  • VNICからセカンダリ・プライベートIPオブジェクトを削除すると、そのアドレスまたはアドレスの範囲がサブネット内の使用可能アドレスのプールに戻されます。
  • これらは、インスタンスを終了(またはセカンダリVNICをデタッチ/削除)すると自動的に削除されます。
  • アタッチされたプライベートIPオブジェクトの数に関係なく、インスタンスの帯域幅が固定されます。インスタンスの特定のIPアドレスに対して帯域幅制限を指定することはできません。
  • セカンダリ・プライベートIPアドレスには、予約済パブリックIPを割り当てることができます。CIDR範囲内のすべての個々のIPアドレスを含むIP CIDRアドレスには、パブリックIPを割り当てることはできません。
  • セカンダリ・プライベートIPアドレスには、IP解決のためにFQDNを作成できます。セカンダリ・プライベートIP CIDRアドレスは使用できません。
  • セカンダリ・プライベート・ホストのIPアドレスと、IP CIDRアドレス内の各個々のIPアドレスは、VCN DNSリゾルバのIPアドレスを問い合せることができます。
  • セカンダリ・プライベートIPアドレスもIP CIDRアドレスもIMDSエンドポイントIPアドレスを問い合せることはできません。

プライベートIPオブジェクトの自動割当ての動作

IPv4自動割り当て

  • サブネットのIPv4 CIDRブロックが1つのみの場合、プライベートIPアドレスおよびIP CIDRアドレスは、その接頭辞から自動的に割り当てられます。
  • サブネットに複数のIPv4 CIDRブロックがある場合、割当ての動作は異なります。
    • 割当て中にCIDRブロックを指定すると、IPv4プライベートIPアドレスおよびIP CIDRアドレスはそのブロックからランダムに割り当てられます。
    • 割当て中にCIDRブロックを指定しない場合:
      • IPv4プライベートIPアドレスは、サブネット内の最初のCIDRブロックから割り当てられます。このブロックは、コンソールの「サブネットの詳細」ビューの「IPv4 CIDRブロック」フィールド、またはGetSubnet APIの詳細のcidrBlockフィールドで表示できます。
      • IPv4プライベートIP CIDRアドレスは、サブネット内の他のCIDRブロックから割り当てられます。
ノート

自動アドレス割当てを使用する予定の場合は、2つ以上のIPv4 CIDRブロックを使用することをお薦めします。複数のCIDRブロックを使用すると、様々なIP CIDRアドレス長に起因するIP断片化のリスクが軽減されます。

IPv6自動割当

IPv6オブジェクトには、一意の割当て動作があります。

  • すべてのIPv6オブジェクトは、Oracle-GUA接頭辞から最初に割り当てられます(使用可能な場合)。
  • Oracle-GUA接頭辞を使用できない場合、オブジェクトはBYOIPv6-GUA接頭辞から割り当てられます。
  • Oracle-GUAもBYOIPv6-GUA接頭辞も使用できない場合、オブジェクトはULA接頭辞から割り当てられます。
  • IPv6アドレスは、最初の::/80接頭辞から自動的に割り当てられます。
  • IPv6 CIDRアドレスは、::/64サブネット内の残りのネットワーク・スペースから自動的に割り当てられます。

IP CIDRアドレス指定のサブネット動作

IPv4 CIDRアドレス指定

  • IPv4アドレス指定を持つサブネットは、サブネットに関連付けられたすべてのCIDRブロックでIPv4 CIDRアドレスの割当てをサポートします。
  • サブネットの最初のCIDRブロック(コンソールのサブネットの詳細ページの「IPv4 CIDRブロック」フィールドまたはGetSubnet API詳細のcidrBlockフィールドとして表示可能)からCIDRアドレスがリクエストされた場合、サブネットはUPDATING状態に遷移します。サブネットがUPDATING状態のままになる時間は、CIDRブロックからすでに割り当てられているホストIPアドレスの数によって異なります。

    この間、IPアドレスの管理タスク(新しいIPアドレスの割当て、既存のIPアドレスの削除)は実行できません。これは1回かぎりの更新動作です。このため、IP CIDRアドレス指定を使用する場合は、2つ以上のサブネットCIDRブロックを使用することをお薦めします。ホストIPはIPv4 CIDRブロックから自動的に割り当てられ、IP CIDRアドレスは他のサブネットCIDRブロックから自動的に割り当てられます。

  • 他のCIDRブロックからCIDRアドレスがリクエストされた場合、更新動作は発生しません。

IPv6 CIDRアドレス指定

  • IPv6アドレス指定を持つサブネットでは、CIDRアドレス指定機能がリージョンおよびレルムで一般に使用可能(GA)になった後に割り当てられたサブネットおよび接頭辞でのみ、IPv6 CIDRアドレスの割当てがサポートされます。

  • IP CIDRアドレス指定のサポートを有効にする既存のサブネットまたはレガシー・サブネットがある場合は、サポート・リクエストを開き、CIDRアドレス指定をサポートする必要があるIPv6接頭辞ごとに手動更新タスクを調整します。

インスタンス・メタデータのIPアドレス情報

インスタンス・メタデータには、次のURLにあるプライベートIPアドレスに関する情報が含まれます:

http://169.254.169.254/opc/v1/vnics/

レスポンスの例を次に示します:

[
  {
    "ipv6AddressCidrs": [
      "fd10::ff:5ffc:dce2:af83:0/112"
    ],
    "ipv6Addresses": [
      "2603:c020:4015:f7ff:0:8e25:9d70:1d01",
      "2603:c020:4015:f7ff:0:a213:5604:9a02"
    ],
    "ipv6SubnetCidrBlock": "2603:c020:4015:f7ff::/64",
    "ipv6SubnetCidrBlocks": [
      "2603:c020:4015:f7ff::/64",
      "fd10:0:0:ff::/64",
      "fd00:0:0:ff::/64"
    ],
    "ipv6VirtualRouterIp": "fe80::200:17ff:fe0e:823e",
    "macAddr": "00:00:00:00:00:01",
    "privateIp": "10.100.100.121",
    "secondaryPrivateIpCidrs": [
      "10.100.100.8/29"
    ],
    "secondaryPrivateIps": [
      "10.100.100.244",
      "10.100.100.124",
      "10.100.251.128"
    ],
    "subnetCidrBlock": "10.100.100.0/24",
    "subnetCidrBlocks": [
      "10.100.100.0/24",
      "10.100.251.0/24"
    ],
    "virtualRouterIp": "10.100.100.1",
    "vlanTag": 645,
    "vnicId": "ocid1.vnic.oc1.sea.<unique_ID>"
  }
]

必要なIAMポリシー

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

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

プライベートIPタスク