新規投稿のお知らせを受信されたい方は、サブスクリプションをご登録ください:

セカンダリDNSとオレンジ色の雲

2020-08-20

4分で読了
この投稿はEnglishおよび简体中文でも表示されます。

セカンダリDNSとは?

セカンダリDNSサーバーとは、もともとプライマリ権威DNSサーバーのバックアップとして機能するものを意味していました。プライマリサーバーのレコードに変更が加わると、ゾーン転送が行われ、セカンダリDNSサーバーがプライマリサーバーと同期されます。セカンダリサーバーはその時、プライマリサーバーであるかのようにレコードを処理できますが、変更ができるのはプライマリサーバーだけで、セカンダリサーバーではありません。これが、必要に応じて分散される異なるサーバー間で冗長性が作り出されます。

セカンダリDNSを活用する共通の方法がいくつもありますが、その中に次のような方法があります。

  1. 受動的なバックアップとしてのセカンダリDNS - セカンダリDNSサーバーがプライマリサーバーがダウンするまで、アイドリング状態でいます。フェイルオーバーが発生した時点で、セカンダリがレコードの処理を始められます。

  2. 能動的なバックアップとしてのセカンダリDNS - セカンダリDNSサーバーはプライマリサーバーと連携してレコードを処理します。

  3. 隠れプライマリを持つセカンダリDNS - セカンダリサーバーにのみ対象とするregistrarポイントでネームサーバーが記録し、基本的にセカンダリをプライマリネームサーバーとして扱います。

セカンダリDNSのオーバーライドとは?

セカンダリDNSオーバーライドは、隠れプライマリモデルを持つセカンダリDNS上で構築されます。これは、お客様の指示通りにレコードを処理するだけでなく、お客様がCloudflareのネットワークを介して、あらゆるA/AAAA/CNAMEレコードをプロキシできるように許可することで実現します。これは、現在CloudflareがプライマリDNSプロバイダーとして機能する方法と似ています。

次の例を考えてみてください。

example.com Cloudflare IP - 192.0.2.0

example.com origin IP - 203.0.113.0

Cloudflareのセキュリティとパフォーマンスサービスをうまく活用するために、配信元IPがインターネットから隠れた状態のままであることを確認する必要があります。

図1:隠れプライマリネームサーバーがないセカンダリDNS

図1は、隠れプライマリネームサーバーがなく、リゾルバーがクエリをどちらか選択できることを示しています。これで、2つの問題が起こります。

  1. RFC 1034RFC 2182に違反します。これは、Cloudflareサーバーがプライマリネームサーバーとは異なる応答をするためです。

  2. 配信元IPが、インターネットに公開されてしまいます。

図2:隠れプライマリネームサーバーがあるセカンダリDNS

図2は、リゾルバーが常にCloudflareセカンダリDNSサーバーにクエリを出していることを示しています。

セカンダリDNSオーバーライドの仕組み

セカンダリDNSオーバーライドUIは、プライマリUIと類似していますが、レコードの編集ができないという違いが1つだけあります。

図3:セカンダリDNSオーバーライドダッシュボード

図3では、レコードがすべてプライマリDNSサーバーから転送されています。test-grey(テスト-グレー)とtest-mx(テスト-mx)が、通常のDNSレコードとして扱われる一方で、test-orang(テスト-オレンジ)とtest-aaaa-orange(テスト-aaaa-オレンジ)がオーバーライドされてCloudflareネットワークを経由してプロキシされます。

水面下では、ネームに基づいて転送されたレコードとペアになるオーバーライドレコードを保管します。セカンダリオーバーライドについては、レコードをオーバーライドする時の種類についてそれほど気にしていません。その理由は2つあります。

  1. RFC1912によると、他のレコードと同じネームのCNAMEレコードを持つことはできません。(これは適用できないDNSSECレコードがあります。RFC2181を参照してください)

  2. AレコードもAAAAレコードもアドレスタイプのレコードで、同じネームですべてプロキシされるか、すべてプロキシされないかのどちらかである必要があります。

つまり、「example.com」というネームがついたAレコードとAAAAレコードがいくつかある場合、そのうち1つがプロキシされる場合、すべてのレコードがプロキシされるということです。UIは、「オレンジ色の雲」ボタンを使って追加のオーバーライドレコードを保管するという考えを抽象化するのに役立ちます。これは、クリックされた時、そのネームが持つすべてのA/AAAAレコードまたはCNAMEレコードに適用されるオーバーライドレコードを作成します。

ApexのCNAME

通常、Zone ApexにCNAMEを置くことは許可されません。例:

example.com CNAME other-domain.com

前述の通り、RFC1912に従わず、少なくとも1つ、別のSOAレコードとNSレコードが同じネームを持っているということを意味するため、これは許可されません。CloudflareはCNAME Flatteningを使用することで解決できます。CNAME FlatteningはプライマリDNSプロダクト内で一般的に用いられるテクニックです。権威サーバーにクエリが来たときに、CNAMEレコードの代わりにアドレスレコードを返すことができます。

セカンダリDNSオーバーライドUIを介したレコードの編集防止に関する前述の説明とは反対に、ApexのCNAMEはこの規則の例外です。ユーザーは、通常のセカンダリ DNSレコードに加えて、ApexでCNAMEを作成することができますが、RFC1912で定義された同じ規則も適用されます。つまり、ユーザーの決定内容に応じて、ApexレコードのCNAMEは通常のDNSレコードまたはプロキシされたレコードとして扱うことができるということです。ApexレコードのCNAMEのプロキシステータスに関わらず、プライマリDNSサーバーから転送されたその他のA/AAAレコードにオーバーライドします。

Apexレコードでセカンダリ、オーバーライド、CNAMEのマージ

レコード編集時間に、Apexレコードでセカンダリ、オーバーライド、CNAMEのマージをすべて行います。つまり、DNSリクエストがエッジの権威サーバーに送信された時、超高速時間でレコードを戻すことができます。このワークフローは、図4で示されています。

図4:レコードのマージ処理

ゾーンビルダー内でのステップは以下の通りです。

  1. ApexにCNAMEがあるかどうかを確認し、ある場合はApexにある他のA/AAAセカンダリレコードをすべてオーバーライドします。

  2. 各セカンダリレコードについて、一致するオーバーライドレコードがあるかどうかを確認し、ある場合はオーバーライドレコードのプロキシステータスをそのネームを持つセカンダリレコードすべてに適用します。

  3. 他のセカンダリレコードをそのままに

利用開始

セカンダリDNSオーバーライドは、ゾーンのすべてをプライマリプロバイダーとしてのCloudflareDNSに転送せずに、Cloudflareネットワークを活用したいユーザーにとって最適なオプションです。Cloudflare側における情報の不正な編集を心配することなく、プライマリ側でセキュリティとアクセス制御を管理できます。

セカンダリDNSオーバーライドは、現在Enterprise Planで利用できます。ご利用をお考えの場合は、アカウントチームにお知らせください。セカンダリDNSオーバーライドに関する追加の資料は、当社のサポート記事をご参照ください。

Cloudflareは企業ネットワーク全体を保護し、お客様がインターネット規模のアプリケーションを効率的に構築し、あらゆるWebサイトやインターネットアプリケーションを高速化し、DDoS攻撃を退けハッカーの侵入を防ぎゼロトラスト導入を推進できるようお手伝いしています。

ご使用のデバイスから1.1.1.1 にアクセスし、インターネットを高速化し安全性を高めるCloudflareの無料アプリをご利用ください。

より良いインターネットの構築支援という当社の使命について、詳しくはこちらをご覧ください。新たなキャリアの方向性を模索中の方は、当社の求人情報をご覧ください。
DNS製品ニュースProxying

Xでフォロー

Cloudflare|@cloudflare

関連ブログ投稿

2026年4月20日

Building the agentic cloud: everything we launched during Agents Week 2026

Agents Week 2026 is a wrap. Let’s take a look at everything we announced, from compute and security to the agent toolbox, platform tools, and the emerging agentic web. Everything we shipped for the agentic cloud. ...

2026年4月20日

The AI engineering stack we built internally — on the platform we ship

We built our internal AI engineering stack on the same products we ship. That means 20 million requests routed through AI Gateway, 241 billion tokens processed, and inference running on Workers AI, serving more than 3,683 internal users. Here's how we did it. ...

2026年4月14日

人間以外のアイデンティティの保護:自動無効化、OAuth、およびスコープ付き権限

Cloudflareは、スキャン可能なAPIトークン、OAuthの可視性の強化、リソーススコープ付きの権限の一般提供を導入します。これらのツールは、開発者が資格情報の漏洩を防ぎながら、真の最小特権アーキテクチャを実装するのに役立ちます。 ...

2026年4月13日

CloudflareのすべてのCLIを構築する

Cloudflareプラットフォーム全体の一貫性を確保するために設計された新しい統合CLIであるcfを導入し、ローカルデータをデバッグするためのLocal Explorerを導入します。これらのツールは、開発者やAIエージェントが当社の3000近くのAPI操作とやり取りする方法を簡素化します。 ...