パブリックアドレス範囲のバインド、バインド解除、移動

コンソール、CLI、API、Terraformを使って、アベイラビリティゾーンのVPCにパブリックアドレスの範囲をバインド、アンバインド、移動できます。

開始前に

パブリックアドレス範囲のバインド、バインド解除、または移動を行う前に、以下の要件と留意事項を確認してください:

  • パブリック・アドレスの範囲に関する プランニングの考慮事項を 確認してください。
  • パブリックアドレス範囲のバインディングには、VPCとアベイラビリティゾーンの両方を含める必要があります。
  • パブリックアドレス範囲を使用する場合、トラフィックを適切なリソースに誘導するために、アドレス範囲をバインドした後、 インバウンドルーティングを設定 する必要があります。 アドレス範囲をVPCにバインドしても、トラフィックが自動的にそのリソースにルーティングされるわけではありません。

コンソールでのパブリックアドレス範囲のバインド、アンバインド、移動

コンソールでは、アベイラビリティ・ゾーン内のVPCにパブリック・アドレスの範囲をバインド、アンバインド、移動できます。

コンソールでパブリックアドレスの範囲をバインドする

IBM Cloud® コンソールでパブリックアドレスの範囲をバインドするには、以下の手順に従います:

  1. IBM Cloud コンソールからナビゲーションメニューの 「Menu」アイコンを 選択し、 「Infrastructure VPC」アイコン >「 Network 」>「 Public Address Range」の順にクリックします。 VPC のパブリックアドレス範囲]ページが表示されます。
  2. 表のアドレス範囲の行をハイライトし、 「Actions」 メニューから「 Bind 」をクリックします。 Actions」アイコンは、 Actionsです。
  3. 「アドレス範囲のバインド」 ページから、アドレス範囲をバインドしたいVPCと、それに対応するアベイラビリティゾーンを選択します。
  4. パブリックアドレスの範囲をVPCにバインドするには、 [Bind] をクリックします。

コンソールでパブリックアドレス範囲のバインドを解除する

IBM Cloud コンソールでパブリックアドレス範囲のバインドを解除するには、以下の手順に従います:

パブリックアドレスのバインドが解除された後も、そのアドレスは予約されており、再びバインドすることが可能です。

  1. IBM Cloud コンソールからナビゲーションメニューの 「Menu」アイコンを 選択し、 「Infrastructure VPC」アイコン >「 Network 」>「 Public Address Range」の順にクリックします。 VPC のパブリックアドレス範囲]ページが表示されます。
  2. テーブルのアドレス範囲の行をハイライトし、 「Actions」 メニューから「 Unbind 」をクリックします。 「Actions」アイコンは、「 Actions」です。
  3. このアドレス範囲をVPCからバインド解除することを確認するには、 [Unbind] をクリックします。

コンソールでパブリックアドレスの範囲を移動する

パブリックアドレス範囲がアベイラビリティゾーン内のVPCにバインドされている場合、それを更新して別のVPCおよびアベイラビリティゾーンにバインド(移動)することができます。 パブリック・アドレスの範囲は、そのVPCとアベイラビリティ・ゾーンから自動的にバインド解除され、新たに指定されたVPCとアベイラビリティ・ゾーンにバインドされる。

最初に元のターゲットからアドレス範囲のバインドを解除する必要はない。

コンソールでパブリックアドレスの範囲を移動するには、以下の手順に従います:

  1. IBM Cloud コンソールからナビゲーションメニューの 「Menu」アイコンを 選択し、 「Infrastructure VPC」アイコン >「 Network 」>「 Public Address Range」の順にクリックします。 VPC のパブリックアドレス範囲]ページが表示されます。
  2. 表のアドレス範囲の行をハイライトし、 Actions メニューの Actions アイコン Actions から Edit をクリックします。
  3. [ パブリックアドレス範囲の編集 ] ページで、アドレス範囲を移動したい VPC およびそのアベイラビリティゾーンを選択します。
  4. 保存] をクリックして、パブリックアドレス範囲を新しいVPCにバインドします。

CLIからのパブリックアドレス範囲のバインド、バインド解除、移動

コマンドラインから予約IPアドレスをバインド、アンバインド、移動するには、以下の手順に従う:

  1. CLI 環境をセットアップします。

  2. CLI環境にログインする。 パスワードを入力すると、使用するアカウントとリージョンの入力を求めるプロンプトが表示されます。

    ibmcloud login --sso
    
  3. 次の機能フラグを有効にしてください:

    export IBMCLOUD_IS_FEATURE_PUBLIC_ADDRESS_RANGE=true
    

    IBM Cloud CLI およびそのプラグインの更新が利用可能になると、コマンドラインで通知が届きます。 最新のコマンドにアクセスするためには、CLIを最新の状態に保つことが重要だ。 インストールされているすべてのプラグインの現在のバージョンを確認するには、以下を実行します。 ibmcloud plugin list.

  4. 以下のコマンドを実行します。

    ibmcloud is public-address-range-update PUBLIC_ADDRESS_RANGE [--name NAME] ([--vpc VPC --zone ZONE] | [--reset-target]) [--output JSON] [-q, --quiet]
    

    ここで、

    PUBLIC_ADDRESS_RANGE
    更新する公開アドレス範囲のIDまたは名前。
    --name
    公開アドレス範囲の新しい識別子(名前を変更したい場合)。
    --vpc
    パブリックアドレス範囲をアタッチするVPC。 --vpc オプションを指定する場合は、 --zone
    --zone
    このパブリックアドレス範囲を割り当てるゾーン。 --zone オプションを指定する場合は、 --vpc
    --reset-target
    パブリックアドレス範囲の割り当てを解除します。
    -f, --force
    確認なしで操作を強制実行します。
    --output
    出力形式は、JSONのみがサポートされています。 次のいずれか: JSON。
    -q, --quiet
    詳細出力を抑制します。

コマンドの例

パブリック・アドレスがVPCにバインドされていない場合は、任意のアベイラビリティ・ゾーンのVPCにバインドできます:

ibmcloud is public-address-range-update r006-81222eee-b3e0-4dc3-b429-aee9e5c0abf2 --name public-address-range-1 --vpc cli-test-vpc --zone us-south-1

VPCからパブリックアドレスの範囲をバインド解除し、未バインドのままにします:

ibmcloud is public-address-range-update r006-81222eee-b3e0-4dc3-b429-aee9e5c0abf2 --name public-address-range-1 --reset-target

パブリックアドレスの範囲をあるVPCから別のVPCに移動する:

ibmcloud is public-address-range-update r006-81222eee-b3e0-4dc3-b429-aee9e5c0abf2 --vpc cli-test-vpc --zone us-south-2

APIによるパブリックアドレス範囲のバインド、アンバインド、移動

APIを使ってパブリックアドレスの範囲をバインド、アンバインド、移動するには、以下の手順に従う:

  1. API 環境をセットアップします。
  2. API コマンドで使用する以下の値を変数に格納します。

version (文字列):APIのバージョン。フォーマットは。 YYYY-MM-DD

  1. すべての変数の初期化が完了したら、以下のアクションのいずれかを選択してください:

    • パブリックアドレスの範囲を特定のVPCにバインドします:
         curl -X PATCH \
                "$vpc_api_endpoint/v1/public_address_ranges/$par_id?version=$api_version&generation=2" \
                -H "Authorization: Bearer $iam_token" \
                -H "Content-Type: application/json" \
                -d '{
                      "target": {
                         "vpc": {
                            "id": "r006-4727d842-f94f-4a2d-824a-9bc9b02c523b"
                         },
                         "zone": {
                            "name": "us-south-2"
                         }
                      }
                   }'
    
  • 特定のVPCからパブリックアドレスの範囲をバインド解除します:

      curl -X PATCH \
            "$vpc_api_endpoint/v1/public_address_ranges/$par_id?version=$api_version&generation=2" \
            -H "Authorization: Bearer $iam_token" \
            -H "Content-Type: application/json" \
            -d '{
                  "target": null
               }'
   ```
   パブリックアドレスのバインドが解除された後も、そのアドレスは予約されており、再びバインドすることができる。
   {: note}

* パブリックアドレスの範囲をあるVPCから別のVPCに移動する:

```sh {: pre}
      curl -X PATCH \
            "$vpc_api_endpoint/v1/public_address_ranges/$par_id?version=$api_version&generation=2" \
            -H "Authorization: Bearer $iam_token" \
            -H "Content-Type: application/json" \
            -d '{
                  "target": {
                     "vpc": {
                        "id": "r006-9999aaaa-bbbb-cccc-dddd-1234567890ab"
                     },
                     "zone": {
                        "name": "us-south-3"
                     }
                  }
               }'
   ```
## Terraformでパブリックアドレスの範囲をバインド、アンバインド、移動する {: #par-bind-unbind-terraform terraform}

Terraformでパブリックアドレスの範囲をバインド、アンバインド、移動するには、以下の例を使う:

```terraform {: codeblock}
resource "ibm_is_public_address_range" "public_address_range_instance" {
 ipv4_address_count = "16"
name = "example-public-address-range"
resource_group{
   id = "11caaa983d9c4beb82690daab08717e9"
}
target{
 vpc {
   id = ibm_is_vpc.testacc_vpc.id
 }
 zone {
   name = "us-south-3"
 }
}
}

関連リンク