Secondary DNS が利用可能なプラン
Enterprise Plan で利用できます。
Configuring Secondary DNS – Cloudflare Help Center
Secondary DNS is available for domains on Enterprise plans.
Secondary DNS 用語整理
- Authoritative Zone Transfer (AXFR)
- AXFRはTCP接続(ポート53)で行われます。これは、転送中にパケットが失われないようにするために、信頼性の高いプロトコルが必要なためです。このプロトコルを使用すると、プライマリDNSサーバーは、シリアル番号に関係なく、1回の接続で、すべてのゾーンコンテンツをセカンダリDNSサーバーに転送します。AXFRは、レコードが1つも伝搬しない最初のゾーン転送に使用することが推奨され、 それ以降はIXFRが推奨されます。
- Incremental Zone Transfer (IXFR)
- AXFRプロトコルとは異なり、IXFRの間、プライマリサーバーは、(シリアル番号に 基づいて)そのゾーンの現在のバージョンから変更されたレコードのみをセカンダリサー バーに送信する。つまり、セカンダリDNSサーバーがIXFRを開始しようとする場合、セカンダリDNS サーバーは現在のシリアル番号をプライマリDNSサーバーに送信する。その後、プライマリDNSサーバは、ゾーンに加えられた変更の 過去のバージョンに基づいて応答をフォーマットする。IXFRはUDPまたはTCP(ポート53)で行うことができますが、やはりパケットロスを避けるために一般的にはTCPが推奨されます。
Cloudflare を Secondary DNS とする構成パターン
以下の「Primary-Secondary(Multi-Vendor)」「Hidden Primary」の構成を取れます。
Announcing Foundation DNS — Cloudflare’s new premium DNS offering
NS1 を Primary DNS として設定する
https://ns1.com/signup からフリーアカウントを作成できます。
クレジットカードの入力が必要ですが、DNS クエリが 100万回 / 月を越えない限り無料です。
NS1 will only bill you in the event that your account sees DNS query overages. Overages are billed at $8/million queries on a monthly basis.
以下のガイドに従って、今回は Freenom で取得したドメインを登録します。
その後、以下の NS レコードが確認できます。
Freenom でカスタムネームサーバーとして、NS1のネームサーバーを登録します。
続いて、以下のガイドに従って NS1 からの Zone Transfer を設定します。
Configuring NS1 as the primary DNS provider – NS1 Help Center
転送先としての ACL に Cloudflare の IPv4 を追加します。
Cloudflare を Secondary DNS として設定する(「Primary-Secondary(Multi-Vendor)」構成)
以下のガイドに従って設定します。
https://dash.cloudflare.com/?to=/:account/add-site から「Secondary DNS」を選択します。
続けて NS1 の Primary ネームサーバーの IP アドレス 192.135.223.10
と
Configuring NS1 as the primary DNS provider – NS1 Help Center
After configuring the zone transfers in the NS1 platform, you must configure the secondary servers to use
xfr01.nsone.net (192.135.223.10)
as the zone's primary server.
TSIG を設定します。(以下のコマンド結果を入力する。)
% tsig-keygen -a hmac-sha512 tsig-key
key "tsig-key" {
algorithm hmac-sha512;
secret "XXXXX";
};
auto_refresh_seconds
の値を確認し、「Linked」となるようにチェックします。
転送されたレコードを確認し、「Continue」します。
(必要に応じて Primary DNS レコードをアップデートの上、再度「Initiate zone transfer」を行い、確認しますが、後からも行えます。)
最後に Cloudflare から Secondary ネームサーバーが割り当てられます。
「Primary-Secondary(Multi-Vendor)」構成とするために、NS1 と Freenom で以下のように設定します。(Freenom で設定できるネームサーバーが最大5個のため、NS1 Primary ネームサーバー3つ、Cloudflare Secondary ネームサーバー2つとします。)
設定完了後は、https://dash.cloudflare.com/?to=/:account/:zone/dns から以下のような画面になります。
% dig xxx.cf NS @1.1.1.1 +short
nsXXXX.secondary.cloudflare.com.
nsXXXX.secondary.cloudflare.com.
dns1.p01.nsone.net.
dns2.p01.nsone.net.
dns3.p01.nsone.net.
Secondary DNS に関する通知設定
以下の通知を設定することができます。
↓「Secondary DNS Successfully Updated」の通知例です。
「Hidden Primary」設定
NS1 と Freenom で、NS1 の Primary ネームサーバーを削除し、Cloudflare の Secondary ネームサーバーのみの設定とすることで、「Hidden Primary」の構成にできます。
% dig xxx.cf NS @1.1.1.1 +short
nsXXXX.secondary.cloudflare.com.
nsXXXX.secondary.cloudflare.com.
Secondary DNS Override
Override を使えば、Secondary DNS でも A/AAAA/CNAME レコードをプロキシし Cloudflare の IP を応答させることができます。(アカウントチームに有効化の依頼を上げる必要があります。)
Orange Clouding with Secondary DNS
Secondary DNS Override builds on the Secondary DNS with a hidden primary model by allowing our customers to not only serve records as they tell us to, but also enable them to proxy any A/AAAA/CNAME records through Cloudflare's network. This is similar to how Cloudflare as a primary DNS provider currently works.
その際には、一貫した応答結果とするために「Hidden Primary」の構成で利用することが推奨です。
Understanding Secondary DNS Override – Cloudflare Help Center
Prerequisites
- Add a Secondary DNS zone to Cloudflare and verify that DNS records are transferred.
- Request your Account Team to enable Secondary Override.
- (Highly recommended) Only list Cloudflare’s nameservers at your domain’s registrar to ensure that DNS queries to different nameservers don't yield varying responses.
Secondary DNS Override を有効にすると、DNS 設定画面で「Proxy」状態をクリックで変更できます。
「Proxied」のレコードについては、Cloudflare の IP が応答されます。
% dig orange.xxx.cf @1.1.1.1 +short
104.18.16.38
104.18.17.38
CNAME at the Apex
Secondary DNS Override では唯一 Zone Apex に CNAME レコードを作成できます。
「CNAME at the Apex」設定時は、既存の「A/AAAA at the Apex」レコードが無効になります。