DNSレコード種別の使い分け【完全版】
DNS は普段意識しないものの、サイト・メール・SSL のすべての基盤です。本記事では主要な DNS レコードの 役割・記法・実例・ハマりどころ を1ページにまとめます。
目次
1. 主要レコード早見表
| 種別 | 用途 | 例 |
|---|---|---|
| A | IPv4 アドレス | example.com → 93.184.216.34 |
| AAAA | IPv6 アドレス | example.com → 2606:2800:220:1:248:1893:25c8:1946 |
| CNAME | 別名(エイリアス) | www → example.com |
| ALIAS | ルートCNAME相当(プロバイダ依存) | example.com → app.example.net |
| MX | メール配送先 | 10 mail.example.com |
| TXT | 任意テキスト(SPF/DKIM/検証) | v=spf1 ... |
| NS | 権威ネームサーバ | ns1.example.com |
| SOA | ゾーンの基本情報 | シリアル/TTL等 |
| CAA | SSL証明書発行可能CA | 0 issue "letsencrypt.org" |
| SRV | サービス位置 | _sip._tcp ... |
| PTR | 逆引き(IP→ホスト名) | 34.216.184.93.in-addr.arpa → example.com |
| DNSKEY/DS | DNSSEC 署名 | (自動生成) |
2. アドレス系: A / AAAA
最も基本となるレコード。A は IPv4、AAAA は IPv6 用。デュアルスタック対応するなら両方を設定します。
example.com. 300 IN A 93.184.216.34 example.com. 300 IN AAAA 2606:2800:220:1:248:1893:25c8:1946
ロードバランシングを兼ねて複数 IP を返すことも可能(ラウンドロビン DNS)。
3. エイリアス系: CNAME / ALIAS
CNAME のルール
- 同一名で 他のレコードと共存できない(MX等とも共存不可)
- ルートドメイン(apex)に設定不可(規格違反)
ALIAS / ANAME / Flattened CNAME
ルートドメインを CDN にエイリアスしたいケースで、Cloudflare/Route 53 等が独自実装する CNAME 相当。背後で A/AAAA に解決して返してくれる仕組み。
example.com. IN ALIAS cdn.cloudfront.net ; (プロバイダ独自) www IN CNAME example.com.
4. メール系: MX / TXT (SPF/DKIM/DMARC)
MX
example.com. IN MX 10 mail.example.com. example.com. IN MX 20 backup-mail.example.com.
数字は 優先度 (小さいほど優先)。MX は CNAME を指してはいけない(規格違反)。
TXT (SPF/DKIM/DMARC)
example.com. IN TXT "v=spf1 include:_spf.google.com ~all" selector1._domainkey IN TXT "v=DKIM1; k=rsa; p=MIGf..." _dmarc IN TXT "v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com"
詳しくは SPF/DKIM/DMARC 完全入門 を参照。
5. ゾーン系: NS / SOA
NS
ドメインの権威ネームサーバを指定。委任にも使う(shop.example.com. を別ネームサーバに委任など)。
SOA (Start Of Authority)
example.com. IN SOA ns1.example.com. admin.example.com. ( 2026050101 ; serial 3600 ; refresh 600 ; retry 1209600 ; expire 300 ; minimum (negative TTL) )
serialはゾーンの版数。レコード変更時に必ず増やす(YYYYMMDDnn 形式が定番)refresh— セカンダリが同期チェックする間隔minimum— 「存在しないレコード(NXDOMAIN)」のキャッシュ時間
6. セキュリティ系: CAA / DNSKEY / DS
CAA (Certificate Authority Authorization)
「このドメインの証明書を発行できる CA」を限定。意図しないCAからの不正発行を防止。
example.com. IN CAA 0 issue "letsencrypt.org" example.com. IN CAA 0 issuewild "letsencrypt.org" example.com. IN CAA 0 iodef "mailto:security@example.com"
DNSSEC (DNSKEY/DS/RRSIG)
DNS 応答に署名を付け、改ざんを検出する仕組み。親ゾーンに DS を登録することで信頼の連鎖が成立します。設定ミスで ドメインがインターネットから消える 事故が多いため、十分な検証を。
7. サービス位置: SRV / PTR
SRV
_sip._tcp.example.com. IN SRV 10 5 5060 sipserver.example.com. ; 優先度 重み ポート ホスト
SIP / Matrix / Minecraft / XMPP などサービス位置を DNS で公開する用途。
PTR (逆引き)
IP → ホスト名の逆引き。メールサーバの逆引き設定漏れは spam 判定の主因。送信用IPには必ず PTR を設定し、HELO 名と一致させること。
8. TTL の設計
- 通常運用: 3600〜86400 秒(1時間〜1日)。キャッシュ効率重視。
- 変更前: 切替の48時間前から 300 秒に下げておく
- 切替後: 安定したら元に戻す
- NXDOMAIN はSOAの
minimumでキャッシュされる点に注意
9. よくある間違い 8選
- ルートに CNAME を設定 → 規格違反。ALIAS/ANAME を使う
- 同一名に CNAME と他レコードを共存 → 解決失敗
- MX に CNAME を指定 → RFC 違反、配送失敗
- TXT 1レコードに 255 文字超過の文字列 → 複数文字列に分割が必要
- SPF レコードを複数定義 → SPF 全体が無効化
- SOA serial を更新し忘れ → セカンダリに伝播せず
- TTL が長いまま大規模変更 → 旧値が48時間以上残る
- 逆引き(PTR)未設定でメール送信 → ほぼ確実に spam 判定
10. よくある質問
変更がいつ反映されるか分からない
変更前TTL分のキャッシュが残ります。世界中のリゾルバから順次反映されるので、48時間程度の余裕を見るのが安全。DNSルックアップ で世界の DNS から見える状態を確認できます。
権威DNSサービスはどこを選ぶべき?
個人〜小規模: Cloudflare(無料・最速)。中規模: Route 53(API充実) / Google Cloud DNS。エンタープライズ: NS1 / Akamai Edge DNS。日本語サポート重視: お名前.com・さくらのDNS。
DNSSEC を入れるべき?
銀行・公的機関は推奨。一般サイトは「導入の運用負荷 vs 改ざんリスク」を天秤に。Cloudflare 等のマネージドDNSなら数クリックで有効化でき、リスクが大幅に下がっています。
マルチDNS構成のメリットは?
2016年の Dyn 障害のように、単一DNSプロバイダの障害でサイト全停止を防げます。プライマリ + セカンダリで別プロバイダを使う構成は、可用性要件の高いサービスでは標準的。