First CH Appsサーバー処理を伴う小さなアプリ置き場

EN

First CH Apps / DNSレコードチェッカー

DNSレコードチェッカー

ドメイン名を入れると、サーバー側から Cloudflare のDNS(1.1.1.1)へ問い合わせて A・AAAA・CNAME・MX・TXT・NS・SOA・CAA を一覧します。あわせて「www はどこを向いているか」「SPF は1本だけか」「CAA はあるか」といった、つまずきやすい点を判定します。

dig や nslookup が使えなくても、ブラウザだけで確認できます。表示するのは公開されているDNSレコードだけで、ドメインの所有者情報(Whois)は扱いません。

例: example.com(https:// 付きのURLやメールアドレスを貼っても、ドメイン部分だけを見ます)

読み方のヒント

www の向き先(CNAME か A か)

www 付きでアクセスされるURLは www.example.com という別の名前です。ドメイン直下(example.com)に A を置いただけでは www は引けません。多くの構成では www を本体へ向ける CNAME を置き、どちらか一方へ301でそろえます。ここで「www は引けません」と出たら、www 付きのURLを配ったときに開けない状態です。

SPF は TXT レコードで、1ドメインに1本だけ

SPF は「このドメインのメールを送ってよいサーバー」の宣言で、v=spf1 で始まる TXT として置きます。よくある事故は、メール配信サービスを追加するたびに TXT を増やして2本になること。SPF は複数あると permerror になり、全部無効として扱われます。追加は include: で1本にまとめてください。末尾の ~all(ソフトフェイル)か -all(ハードフェイル)も確認します。

CAA は証明書の誤発行を防ぐ

CAA は「このドメインの証明書を発行してよい認証局」を指定するレコードです。無くても証明書は取れますが、置いておくと想定外の認証局からの発行を拒めます。Let's Encrypt を使うなら 0 issue "letsencrypt.org" のように書きます。証明書の自動更新が止まったときは、CAA が発行元と食い違っていないかを最初に疑ってください。

TTL と「反映されない」

TTL はキャッシュの保持時間です。TTL が 24 時間のレコードを変えると、最大でその時間だけ古い値が使われ続けます。サーバー移転の前日までに TTL を 300 秒程度へ下げておくと、切り替えが早く行き渡ります。ここに出る値は Cloudflare のリゾルバ視点での残り時間なので、問い合わせるたびに減ります。

SERVER PROCESSING — サーバーへ送るもの・保存するもの

送るもの: 入力されたドメイン名だけ。当社サーバー(Cloudflare Workers)が Cloudflare の公開DNS(DNS over HTTPS・cloudflare-dns.com)へ、そのドメインの8種別と www.<ドメイン> の2件、あわせて10件の問い合わせを行います。

保存するもの: ありません。問い合わせはリクエストの中だけで完結し、ドメイン名も結果もデータベース(KV/D1)へ書き込みません。処理が終わった時点でメモリから消えます。アクセスログはCloudflareの標準の範囲のみです。

返すもの: DNSから返ってきたレコードの値と、その判定だけです。ドメインの所有者情報(Whois)や、そのサイトのコンテンツは取得しません。

注意: 引けるのは公開されているDNSレコードだけです。localhost・社内ドメイン(.internal・.local 等)・IPアドレスは受け付けません。

APIとして使う

POST /dns/api/lookup に JSON({"domain": "example.com"})またはフォームを送ると、同じ結果を JSON で返します(認証不要・保存なし)。