IBM Cloud Docs
DNS リゾルバー・タイプの設定

DNS リゾルバー・タイプの設定

DNS ハブ VPC への解決バインディングを作成して DNS 共有 VPC を作成した後、その VPC が DNS ハブ VPC 内のカスタム・リゾルバーを使用できるように、共有 VPC の DNS リゾルバー・タイプを「Delegated」または「Manual」に設定する必要があります。

リゾルバー・タイプについて

以下の 3 つの DNS リゾルバー・タイプがあります。

  • 「システム」 は、DNS サーバーの IBM のデフォルト設定です。 この設定では、DNS サーバー・アドレスは DNS Servicesによって提供され、DNS ハブ VPC はこのリゾルバー・タイプに設定されます。
  • これらの VPC がハブ VPC でカスタム・リゾルバーを使用できるように、DNS 共有 VPC には 「代行 (Delegated)」 を使用します。 DNS サーバー・アドレスは、指定された DNS 共有 VPC のリゾルバーによって提供されます。 このオプションは、DNS ハブが無効になっている VPC でのみ設定できます。
  • ハブ VPC のカスタム・リゾルバー以外の DNS リゾルバーを DNS 共有 VPC で使用する場合は、 「手動」 を使用します。 このオプションは、手動で指定された DNS サーバー・アドレス用であり、既存のサーバーを置き換えます。 このオプションを使用して、任意の DNS サーバー (パブリックまたはオンプレミス) を構成できます。

開始前に

DNS リゾルバー・タイプを設定する前に、 計画に関する考慮事項 および 既知の問題と制限事項 を確認してください。

DNSリゾルバのタイプは、コンソール、CLI、API、またはTerraformで設定できます。

コンソールでDNSリゾルバのタイプを設定する

DNS 共有 VPC に DNS リゾルバー・タイプを設定するには、以下の手順を実行します。

  1. ブラウザから、 IBM Cloud コンソールを開き、アカウントにログインします。
  2. Navigation Menu ナビゲーション・メニュー・アイコンを 選択し、 Infrastructure VPCアイコン > Network > VPCsをクリックします。
  3. DNS リゾルバー・タイプを設定する DNS 共有 VPC をクリックします。
  4. 「オプションの DNS 設定 (Optional DNS settings)」セクションまでスクロールして、DNS リゾルバー設定を展開し、 「編集」 をクリックします。
  5. 「DNS リゾルバー設定の編集 (Edit DNS resolver settings)」サイド・パネルで、DNS ハブを無効にします。
  6. DNS リゾルバー・タイプとして 「代行」 を選択し、 「保存」 をクリックします。

CLI からの DNS リゾルバー・タイプの設定

CLI を使用して DNS 共有 VPC の DNS リゾルバー・タイプを設定するには、以下の手順を実行します。

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

  2. CLIでアカウントにログインします。 パスワードを入力すると、使用するアカウントと地域を尋ねるプロンプトが表示されます:

    ibmcloud login --sso
    
  3. ハブ VPC を無効にし、DNS 共有 VPC の DNS リゾルバー・タイプを指定します。

    ibmcloud is vpc-create my-cli-vpc [--dns-enable-hub false] [--dns-resolver-type delegate] [--dns-resolver-manual-servers  MANUAL_SERVERS | @MANUAL_SERVERS]
    

    ここで、

    --dns-enable-hub
    VPC のハブを有効にするかどうかを指定します。 delegate オプションを使用する前に、DNS ハブを無効にする必要があります。
    --dns-resolver-type
    VPC のリゾルバー・タイプを指定します。 値は、 system (デフォルト)、 delegate、および manual です。
    --dns-resolver-manual-servers
    VPC の手動 DNS サーバー・アドレスを構成します。 リゾルバー・タイプが manual の場合に有効です。

CLI の例

manual サーバーを構成するには:

ibmcloud is vpcu my-vpc --dns-resolver-manual-servers '[
    {
        "address": "190.20.3.2"
    },
    {
        "address": "190.20.3.3"
    }
]'

delegated リゾルバー・タイプを構成するには、以下のようにします。

ibmcloud is vpcu r006-55007c36-fd61-48db-ae22-710b0277e78e --dns-resolver-type delegated --delegate-to-vpc r006-4691ccef-498c-4d8e-9064-bcf13972b1aa

system リゾルバー・タイプを構成するには、以下のようにします。

ibmcloud is vpcu my-vpc --dns-resolver-type system

API を使用した DNS リゾルバー・タイプの設定

API を使用して DNS リゾルバー・タイプを設定するには、以下の手順を実行します。

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

  2. delegated リゾルバー・タイプを使用してハブ VPC の DNS を使用するように DNS 共有 VPC を設定するには、以下のようにします。

    curl -X PATCH -sH "Authorization:${iam_token}" "${vpc_api_endpoint}/v1/vpcs/${vpc_id}?version=${api_version}&generation=2" -d '
    {
      "dns": {
        "resolver": {
          "type":"delegated",
          "vpc": {
            "id": "${hub_vpc_id}"
          }
        }
      }
    }'
    
  3. manual DNS サーバー・アドレスを使用するように VPC を設定するには、以下のようにします。

    curl -X PATCH -sH "Authorization:${iam_token}" "${vpc_api_endpoint}/v1/vpcs/${vpc_id}?version=${api_version}&generation=2" -d '
    {
      "dns": {
        "resolver": {
          "type": "manual",
          "manual_servers": [
            {
              "address": "10.240.0.10",
              "zone_affinity": {
                "name": "us-south-1"
              }
            },
             {
              "address": "10.240.64.10",
              "zone_affinity": {
                "name": "us-south-2"
              }
            },
            {
              "address": "10.240.128.10",
              "zone_affinity": {
                "name": "us-south-3"
              }
            }
          ]
        }
      }
    }'
    
  4. VPC をデフォルトの system 構成にリストアするには、以下のようにします。

    curl -X PATCH -sH "Authorization:${iam_token}" "${vpc_api_endpoint}/v1/vpcs/${vpc_id}?version=${api_version}&generation=2" -d '
    {
      "dns": {
        "resolver": {
          "type":"system",
          "vpc": null
        }
      }
    }'
    

Terraform を使用した DNS リゾルバー・タイプの設定

Terraform を使用して、DNS リゾルバー・タイプを設定できます。

Terraform を使用するには、Terraform CLI をダウンロードし、 IBM Cloud Provider プラグインを構成します。 詳しくは、 Terraform の概要 を参照してください。

VPC インフラストラクチャー・サービスは、デフォルトで us-south をターゲットとする地域固有のエンドポイントを使用します。 別のリージョンに VPC を作成する場合は、 provider.tf ファイルのプロバイダー・ブロックで適切なリージョンをターゲットにしてください。

デフォルトの us-south 以外の地域をターゲットにする例を以下に示します。

provider "ibm" {
  region = "eu-de"
}

manual リゾルバー・タイプを使用して DNS ハブを使用可能にするには、以下のようにします。

resource ibm_is_vpc my-vpc {
	name = "my-vpc"
	dns {
		enable_hub = true
		resolver {
			manual_servers     {
				address ="192.168.0.4"
				zone_affinity= "au-syd-1"
			}
			manual_servers{
				address =  "192.168.64.4"
				zone_affinity = "au-syd-2"
			}
			manual_servers{
				address= "192.168.128.4"
				zone_affinity ="au-syd-3"
			}
		}
	}
}

DNS ハブを delegate リゾルバー・タイプにパッチを適用するには、以下のようにします。

resource ibm_is_vpc my-vpc {
	name = "my-vpc"
	dns {
		enable_hub = false

	    resolver {
			type = "delegated"
			vpc_id = ibm_is_vpc.hub_true.id
		}
	}
}

VPC を system リゾルバー・タイプにパッチを適用するには、以下のようにします。

resource ibm_is_vpc my-vpc {
	name = "my-vpc"
	dns {
		enable_hub = false

		resolver {
			type = "system"
			vpc_id = "null"
	    }
	}
}

次のステップ

DNS 共有 VPC ユーザーは、DNS 共有 VPC 内のシングル・テナント・サービス用に VPE ゲートウェイを作成 します。