手持ちの○○○.earthドメインは今、
レジストラ:Porkbun / 権威DNS:Cloudflare
という構成になったんですが、
レジストラと権威DNSを別にすると、遠い将来子ゾーンと親ゾーンの連携まわりで何か不都合があるかもしれない気もしたので、
レジストラ:Porkbun / 権威DNS:Porkbun
という構成をためしてみました。
(Cloudflareはレジストラとしては".earth"ドメインを収容できないので、Cloudflare側に寄せることはできません。)
このあたりの話はネット上に情報が見あたらなかったので、やや詳しめにメモしておきます。
CloudflareではできてPorkbunではできないこと
Cloudflareは機能満載すぎるので、Porkbunではできないことっていっぱいあると思うんですが、ここでは自分の使い方で気づいたところを。
★Email Routing
Cloudflareでは、無料でもメール転送はCatch-Allとかスクリプトで柔軟に振り分けたりとかいろいろできたんですが、Porkbunの無料のメール転送はアドレス数20まででCatch-Allなしと縛りがきついです。
じゃあ「レジストラ:Porkbun / 権威DNS:Porkbun」のままMXレコードだけCloudflareに振り向ければいいんじゃない?
と思ってやってみたんですが、Cloudflareは今自分が権威DNSじゃないことを検知してメール転送を止めてしまいました。残念(>_<)
ちなみに送信元には
host route1.mx.cloudflare.net[162.159.205.11] said: 550 5.1.1
Domain does not exist.
というエラーメールが返りました。
あと、Porkbunのメール転送機能は、Cloudflareとちがって転送先の登録にベリファイが不要です。他人のアドレスでも好き勝手登録できてしまいます。
★DNSのProxyモード
利用者から自分のサーバへのアクセスを、Cloudflareのサーバが中継してくれる機能なんですが、これはPorkbunには見あたりませんでした。
悪いコンピュータから攻撃を受けているときに盾になってくれるしくみでもあります。
★DNSSECの安定運用
レジストラと権威DNSがいっしょになっていた方が長期的に見てDNSSECの安定運用ができるんじゃない?と思っていたんですが、実際Porkbunに寄せてみるとなんかDNSSECが不安定でした。
Porkbunのダッシュボード上は特に問題なく見えるんですが、
DNSSECの状態を可視化するサイトでちょくちょくチェックしてみると、最初はStatus: SECUREになっていたものがいつの間にかStatus: INSECUREに戻ったりと揺れ動きます。
DNSSECをPorkbunに寄せる操作としては、Registry DNSSECの設定を削除してCloudflare DNSSECをONにするだけで、ほかの設定項目は何もないので、設定ミスではないと思います。
この症状は「レジストラ:Porkbun / 権威DNS:Cloudflare」でも「レジストラ:Cloudflare / 権威DNS:Cloudflare」のnikki-san.comでも起こりません。
意外とPorkbunでもできたこと
★CNAME flattening
http://○○○.earth
から
https://www.○○○.earth
にリダイレクトさせるのに、
CNAME flatteningというCloudflareの特殊(?)技術を利用していましたが、Porkbunは内部的にCloudflareのDNSを使っているだけあって、これはできました。
CNAMEとは別に、CNAME flattening専用のALIASというレコードが用意されているので、それを使います。
(AWSのRoute 53でもCNAME flatteningさせたい場合はALIASレコードとして登録していたと思います。)
CloudflareでできなくてPorkbunでできること
★Whois情報の代理公開
これは権威DNSでなく、レジストラとしての話です。レジストラとしてCloudflareを使っているnikki-san.comとの比較です。
CloudflareにはWhois情報の代理公開機能がないので、
シンドメインでWhois代理公開OFFにしたときとだいたい同じく、nikki-san.comは「日本の千葉」の人のものという部分だけ見えてしまっていますが、Porkbunではそれすら隠蔽されていて「アメリカのノースカロライナ州」の誰かのものとして見えるようになっています。
★URL Forwarding
https://○○○.earth
(http"s"の方)
から
https://www.○○○.earth
にリダイレクトさせるのにCloudflareではDNSのProxyモードを利用していましたが、これがない代わりにURL Forwarding機能が使えました。これ、CNAMEでリダイレクトさせるのより柔軟で便利。
たとえば
https://bsky.○○○.earth
を
https://bsky.app/profile/
○○○.earth
にCNAMEでリダイレクトできるのって、Bluesky側で受け入れのしくみがあるからできることなんですが、そういうしくみのないInstagramとかでも
https://insta.○○○.earth
を無理やり
https://instagram.com/
△△△
にリダイレクトさせることができました。短縮URLの代わりにも使えそう。
構成としては、Porkbunに転送用のWebサーバがいて、HTTPリダイレクトをかけてくれてるっぽいので、「レジストラ:Porkbun / 権威DNS:Cloudflare」の構成に戻しても、CNAMEレコードだけPorkbunに振り向けておけばこのURL Forwarding使えるんじゃない?
と思ってやってみたら、これはできました。
Cloudflare側に追加するCNAMEレコードは、Porkbun上では宛先uixie.porkbun.comのALIASレコードとして自動登録されているものですが、同じく自動登録されている
_acme-challenge.○○○.earth
というTXTレコードもついでにCloudflare側にコピーしておきます。
たぶんPorkbunの転送用Webサーバが○○○.earth宛のHTTPSアクセスを受けるのに、内部的にLet’s Encryptを使っていて、
そのドメイン所有者認証の「DNS-01チャレンジ」のためのレコードじゃないかな?
このレコードは60日に1回はチェックがあるみたいなので、このTXTレコードがないと転送用Webサーバのサーバ証明書の更新ができなくなってしまいそうです。
このPorkbunのURL Forwarding機能は、「レジストラ:Cloudflare / 権威DNS:Cloudflare」という環境からでも利用可能でした。
そのおかげで
https://nikki-san.com/
から
https://nikki-san.fc2.net/
にリダイレクトできるようになりました。
CloudflareでもRedirect Rulesを利用すればURL Forwarding相当のことができました。
コメント