Cloudflare の DNS で設定したサブドメインをはてなブログの独自ドメインとして使うときは Status を DNS Only にする

More than 1 year has passed since last update.


結論

Cloudflare の DNS ではてなブログの独自ドメイン用に CNAME レコードを登録しているときは、そのレコードの Status を DNS and HTTP Proxy (CDN)(オレンジ雲アイコン)から DNS Only(グレー雲アイコン)に変更しましょう。雲をクリックすると変更できます。

スクリーンショット_2017-04-16_22_26_16.png


問題

Cloudflare の DNS で、自分で持っているドメイン example.com (例です)の A レコードを登録していました。このとき、はてなブログの独自ドメイン blog.example.com を設定するために、このドメインのサブドメイン blog.example.comhatenablog.com のエイリアスとする CNAME レコードを作りました。しかし、はてなブログの管理画面で「ドメイン設定をチェック」をクリックしても エラー レコードが見つかりませんでした と表示されて、独自ドメインが設定できませんでした。


解決方法と理由

最初に「結論」で述べたとおりの方法で解決します。

DNS and HTTP Proxy (CDN)(オレンジ雲アイコン)のときは通信が Cloudflare を経由しているのですが、このときに該当のドメインを解決すると、CNAME ではなく、Cloudflare のサーバに向いている A レコードになってしまっていたのでした(ドメイン名は例に置き換えています)。

$ dig blog.example.com

; <<>> DiG 9.8.3-P1 <<>> blog.example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15144
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;blog.example.com. IN A

;; ANSWER SECTION:
blog.example.com. 300 IN A 104.28.16.93
blog.example.com. 300 IN A 104.28.17.93

;; Query time: 92 msec
;; SERVER: 192.168.10.1#53(192.168.10.1)
;; WHEN: Sat Apr 15 14:33:51 2017
;; MSG SIZE rcvd: 64

DNS Only(グレー雲アイコン)に変更すると、Cloudflare をバイパスし DNS だけ使うようになるので、ドメイン解決の結果、該当の DNS レコードが期待どおり CNAME になっていることがわかります。

$ dig blog.example.com

; <<>> DiG 9.8.3-P1 <<>> blog.example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 49533
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;blog.example.com. IN A

;; ANSWER SECTION:
blog.example.com. 300 IN CNAME hatenablog.com.
hatenablog.com. 6 IN A 52.197.171.58

;; Query time: 92 msec
;; SERVER: 192.168.10.1#53(192.168.10.1)
;; WHEN: Sat Apr 15 14:45:37 2017
;; MSG SIZE rcvd: 73

これで、はてなブログがこのサブドメインを認識できるようになります。


参考資料