SBクラウド株式会社logo

Cloudflare(クラウドフレア)で既存のDNSを使う方法を紹介するよ❗️


こんにちは。
ソリューションアーキテクトの松田(@MatYoshr)です。

今回はSBクラウドでも取り扱っている Cloudflare(クラウドフレア)に関して、初期設定とDNS周りのお話をちょっとしたいと思います。

Cloudflare is a registered trademark of Cloudflare, Inc.

f:id:sbc_y_matsuda:20210310014026p:plain

Cloudflare を利用するには

Cloudflare を利用するにはドメインが Cloudflare に紐づいている必要があります。
そのため、よくある手順ではドメインレジストラのネームサーバー(権威DNS)をCloudflareのネームサーバーに切り替える手順が必須とされています。

利用開始手順やFAQに以下の様な記載がありますし、個人でCloudflareを使っていた事もあり、私も最初ネームサーバーの切り替えが必須だと思っていました・・・

f:id:sbc_y_matsuda:20210224163358p:plain:w850 出典:Cloudflareを使い始める:チュートリアル動画 – Cloudflareヘルプセンター

f:id:sbc_y_matsuda:20210224162818p:plain:w850 出典:Cloudflare DNSに関するFAQ – Cloudflareヘルプセンター

ですが、いろいろ調べてみるとCNAME Setupという方式で設定する事で、ネームサーバーの切り替えをせずにCloudflareを利用することが可能になりますので紹介していきたいと思います。

CNAME Setup ?

CNAME Setupは名前の通りCNAMEを使った導入・設定方法になります。
CloudflareとDNSそれぞれでCNAMEを使ってチェーンする様に設定する事で、既存のDNSを利用したままCloudflareを利用する事が可能になります。

詳細は以下のページをご確認頂ければと思います。

※Cloudflare 無料プラン、Proプランでは対応していない様です

f:id:sbc_y_matsuda:20210303020206p:plain:w850

出典:Understanding a CNAME Setup – Cloudflare Help Center

という事で、実際にCNAME Setupの手順を設定して試していきます。

Freenom で検証のドメインを取得します

検証するためにはドメインが必要なのですが、新規で買うのももったいないのでFreenomで検証用のドメインを調達してきます。
Freenom にアクセスして Register a New Domain からドメインを取得します。

f:id:sbc_y_matsuda:20210225101128p:plain:w850

任意のドメイン名を入力し適当なFreeのドメインを選択します。

f:id:sbc_y_matsuda:20210225101449p:plain:w850

f:id:sbc_y_matsuda:20210225101732p:plain:w850

購入を進めていき必要なパラメータなどを入力して、最後にPriceが $0.00USD であることを確認してComplete Order で購入します。

f:id:sbc_y_matsuda:20210225102238p:plain:w850

購入が完了すれば Freenom は一旦置いておきます。
あとでまた設定が必要なので開いたまま置いておきましょう。

Cloudflare

Cloudflare 側の設定に移ります。
こちら既にアカウントは作成済みの状態になります。

+サイトを追加する を選択して設定を開始します。

f:id:sbc_y_matsuda:20210225104605p:plain:w850

先程 Freenom で取得したドメインを入力します。

f:id:sbc_y_matsuda:20210225104752p:plain:w850

契約済みで Enterprise が選択可能な場合は以下のような画面が表示されます。

f:id:sbc_y_matsuda:20210225105806p:plain:w850

無料プランなどをご利用の場合や Enterprise の利用枠が残ってない場合、以下のような画面になるかと思います。
Business または Enterprise どちらかを選んで続行を選択します。

Enterprise Plan にご興味のある方は弊社までお問い合わせ頂くことも可能です。

f:id:sbc_y_matsuda:20210309231818p:plain:w850

最初に指定したドメインに対してレコードのチェックが行われます。
既存のレコードがある場合はここに内容が表示されます。
続行を選択します。

f:id:sbc_y_matsuda:20210225110755p:plain:w850

今回はドメインを取得しただけで何もレコードが存在しないので以下のようなメッセージが表示されます。
確認を選択します。

f:id:sbc_y_matsuda:20210225110920p:plain:w500

こんな感じでネームサーバの変更をする手順が表示されるのが通常です。

f:id:sbc_y_matsuda:20210225111810p:plain:w850

ここからが重要です。
対応しているプランであれば「概要」の右下の方にある「高度な操作」にCNAME DNS セットアップに変更 という項目があります。

f:id:sbc_y_matsuda:20210225112637p:plain:w850

「高度な操作 > CNAME DNS セットアップに変更」を選択します。
CNAMEでの設定が出来ない場合、Cloudflareサポートに連絡して特定のドメインのCNAMEセットアップの許可をリクエストします。

Enterprise customers can enable CNAME setups for any of their Business or Enterprise domains by requesting Cloudflare support enable the CNAME setup self-service feature. Once enabled for a Cloudflare account, Enable Partial Setup appears in the Overview app of the Cloudflare Dashboard for Business or Enterprise domains with the account.

f:id:sbc_y_matsuda:20210225105901p:plain:w850 出典:Understanding a CNAME Setup – Cloudflare Help Center

権威DNSじゃ無くなるぞ、良いのか?
と言った内容のメッセージが表示されますが 変更 を選択しましょう。

f:id:sbc_y_matsuda:20210225120859p:plain:w850

もう一回聞いてきます。変更 を選択しましょう。

f:id:sbc_y_matsuda:20210225121020p:plain:w500

CNAME でのセットアップモードに切り替わり検証用のTXTレコードが払い出されます。
これを既存のDNSに設定してドメインの所有が検証できれば利用可能になります。

f:id:sbc_y_matsuda:20210225121222p:plain:w850

レコードの検証が終わるまでは概要ページにこの様に記載されています。

f:id:sbc_y_matsuda:20210225123100p:plain:w850

TXT レコードを既存のDNSに設定します。

払い出された検証用のTXTレコードを既存のDNSに登録していきます。
今回は先ほどドメインを登録した Freenom に設定します。

f:id:sbc_y_matsuda:20210225162519p:plain:w850

Manage Domain で対象のドメインの設定を開きます。

f:id:sbc_y_matsuda:20210225164700p:plain:w850

Manage Freenom DNS で対象のDNS設定を開きます。

f:id:sbc_y_matsuda:20210225165908p:plain:w850

払い出された検証用のTXTレコードをDNSに登録します。

f:id:sbc_y_matsuda:20210226095658p:plain:w850

登録に成功すれば以下の様な成功のメッセージが表示されます。

f:id:sbc_y_matsuda:20210226095813p:plain:w850

しばらくするとTXTレコードの検証が完了し Cloudflare の概要ページが以下の様に変わります。

f:id:sbc_y_matsuda:20210226102325p:plain:w850

ここまで来れば CNAME でのセットアップの準備は完了です。

レコードの検証が終わらない場合

もし反映されない場合は Google Admin Toolbox や DNS Checker などでレコードが伝播されているか確認して見るといいです。

伝播されていない様であれば、TTLの見直しやレコードの再設定。
伝播はされていてレコードが取れている様であれば設定値の確認やブラウザのリロードなどをしてみると良いかと思います。

f:id:sbc_y_matsuda:20210226101530p:plain:w850

toolbox.googleapps.com

f:id:sbc_y_matsuda:20210302091816p:plain:w850

dnschecker.org

Cloudflare 経由で既存のサイトを公開する

手元に丁度良いものがないので以前 Alibaba Cloud OSS で作った静的ウェブサイトを使います。


OSS の Image Processing で簡単画像処理

OSSの管理コンソールでカスタムドメインにwww.cf-test.gaを設定します。
Cloudflareで設定する予定のサブドメイン部分まで含めて設定します。

f:id:sbc_y_matsuda:20210302134946p:plain:w850

OSS Domain Name をオリジンのCNAMEとして使います。

f:id:sbc_y_matsuda:20210302135056p:plain:w850

Cloudflare の管理コンソールに移動し、DNSの設定でレコードを追加します。
タイプをCNAME、名前にサブドメインのwww、ターゲットにOSS Domain Name の値を設定して保存します。

f:id:sbc_y_matsuda:20210302121340p:plain:w850

次にDNS側の設定を行います。ここが CNAME Setup のポイントの一つになります。
今回はFreenomの管理コンソールに移動して、こちらにもDNSのレコードを追加します。

Nameにサブドメインのwww、TypeをCNAME、TargetにFQDN.cdn.cloudflare.net を設定して保存します。

今回は cf-test.ga というドメインの www サブドメインに対して Cloudflare CDN の CNAME に向先を設定します。
イメージにするとこんな感じかな。

f:id:sbc_y_matsuda:20210311200720p:plain:w850

詳細はコチラを参照下さい support.cloudflare.com

f:id:sbc_y_matsuda:20210302121734p:plain:w850

DNSレコードが伝播すれば以下の様に正常にアクセスが出来る様になります。
無事にネームサーバーを変更しなくてもCloudflareをCDNとして利用する事が出来ました。

f:id:sbc_y_matsuda:20210302135734p:plain:w850

おわりに

今回は Cloudflare という Alibaba Cloud 以外の製品を紹介させて頂きました。
CNAME Setup の手順はあまり見当たらなかったので参考になる様であれば嬉しいです。

Cloudflare には CDN 以外にも Jamstack をデプロイできる Cloudflare Pages やゼロトラスト系の Cloudflare for Teams など面白いものがあるのでそれらにも順次ふれて行きたいと思います。

Cloudflare の取り扱いもしていますので、お問い合わせやご相談がございましたらお気軽にどうぞ!

Cloudflare関連記事

www.sbcloud.co.jp www.sbcloud.co.jp www.sbcloud.co.jp

Author Profile

https://secure.gravatar.com/avatar/b00b5531fbdbc674e9f7c685a1ed32c1?s=800&d=identicon

松田悦洋(@MatYoshr)
SBクラウド株式会社 Alibaba Cloud Solution Architect

Alibaba以外にもAWS、Azure、GCPなどクラウド全般が好きです
  GitHub   Qiita