Tenant カスタムネームサーバー(TCNS)では、tenant レベルのカスタムネームサーバーを定義し、Cloudflare の tenant 内の異なる accounts で使えます。
TCNS は複数のセット(ns_set)に整理され、TCNS 名は任意のドメインから提供できます。そのドメインが Cloudflare 上のゾーンとして存在する必要はありません。
たとえば TCNS が ns1.example.com と ns2.vanity.test の場合、example.com と vanity.test は Cloudflare 上のゾーンである必要はありません。
Tenant カスタムネームサーバーは、Tenant 所有者が作成した場合、その Tenant に属する任意のアカウントのすべてのゾーンで使えます。API のみです。
この構成を行うには、次の条件があります。
- Tenant owners は、tenant カスタムネームサーバーセットを最大 5 つ作成できます。各ネームサーバーセットには、2〜5 個の異なるネームサーバー名(
ns_name)が必要です。同じ名前を複数のセットに含めることはできません。たとえば、ns1.example.comがns_set 1に属している場合、ns_set 2には含められません(逆も同様です)。 - サブドメインセットアップ または 逆引きゾーン では、親ゾーン、子ゾーン、または直接の階層ツリー内のほかのゾーンとは異なるネームサーバーセット(
ns_set)を使う限り、tenant カスタムネームサーバーを利用できます。
アカウント所有者であり、アカウントがカスタムネームサーバーを持つ Tenant に属している場合は、次の手順を行います。
-
Update DNS Settings for a Zone エンドポイントを使い、
nameserversオブジェクトを次のように設定します。"nameservers": { "type": "custom.tenant" } -
Cloudflare Registrar を使っていない場合は、レジストラのネームサーバーを TCNS 名に更新します。Cloudflare Registrar を使っている場合は、追加の操作は不要です。
今後アカウントに追加するすべての新規ゾーンで、これらの TCNS をデフォルトのネームサーバーにするには、Update DNS Settings for an Account エンドポイントを使います。zone_defaults オブジェクト内で、次のように設定します。
"zone_defaults": {
"nameservers": {
"type": "custom.tenant"
}
}-
Cloudflare Registrar を使っている場合は、Update DNS settings エンドポイント で
nameserversオブジェクトのtypeパラメーターを別の値に設定します。その後、Cloudflare サポートに連絡 し、使うネームサーバーへ戻してもらいます。 -
Cloudflare Registrar を使っていない場合は、Update DNS settings エンドポイント で別のネームサーバータイプを選び、ドメインのレジストラからも TCNS を削除します。
Tenant 所有者であり、Tenant 内のアカウントで TCNS を使えるようにしたい場合は、次の手順を行います。
ns_nameとns_setの 構成条件 を確認し、次の POST コマンドで Tenant に TCNS を作成します。
curl https://api.cloudflare.com/client/v4/tenants/{tenant_id}/custom_ns \
--header "X-Auth-Email: <EMAIL>" \
--header "X-Auth-Key: <API_KEY>" \
--header "Content-Type: application/json" \
--data '{
"ns_name": "<NS_NAME>",
"ns_set": <SET>
}'-
アカウントのカスタムネームサーバーと IP アドレスを、ドメインのレジストラにグルー(A および AAAA)レコードとして追加します(RFC 1912 ↗)。
-
Tenant カスタムネームサーバーに使うドメインが同じアカウントに存在しない場合は、設定したネームサーバー名(例:
ns1.example.com)のA/AAAAレコードを、権威 DNS プロバイダー側で作成する必要があります。
| タイプ | 名前 | コンテンツ |
|---|---|---|
A |
ns1.example.com |
<IPv4> |
Tenant アカウント内のすべての TCNS 名を取得するには、次の API リクエストを使います。
curl https://api.cloudflare.com/client/v4/tenants/{tenant_id}/custom_ns \
--header "X-Auth-Email: <EMAIL>" \
--header "X-Auth-Key: <API_KEY>"