📇 DNSレコード完全ガイド

住所録で理解する!AWS Route 53のレコード設定

📮 DNSは「インターネットの住所録」!

DNSレコードって何?

人間が覚えやすい「example.com」というドメイン名を、
コンピューターが理解できる「192.0.2.1」というIPアドレスに変換する
「インターネットの住所録」 のようなものです!

まるで、「田中太郎さん」という名前から「東京都〇〇区...」という住所を
調べるのと同じイメージ✨

各レコードタイプは 「住所録の項目」 に相当します!

🏢 会社の連絡先リストで理解しよう!

DNSレコード = 会社の連絡先データベース
📝 シチュエーション:

あなたの会社「example.com」には、様々な部署や連絡先があります。
お客様や取引先が適切な連絡先にアクセスできるように、
連絡先リスト(DNSレコード) を整備する必要があります。
🏠 Aレコード(本社の住所)

「example.comの本社はどこ?」
→ 「東京都〇〇ビル(192.0.2.1)です」
🔄 CNAMEレコード(別名)

「www付きで検索されたら?」
→ 「本社と同じです!」
📧 MXレコード(郵便物)

「メール送りたいんだけど?」
→ 「郵便室(mail.example.com)へ!」
📄 TXTレコード(メモ)

「会社の認証情報は?」
→ 「このメモをご確認ください」

📚 主要DNSレコード完全解説

🏠
Aレコード
Address Record - IPv4アドレス
🎯 役割
ドメイン名をIPv4アドレスに変換
最も基本的で重要なレコード。「このドメインはこのIPアドレスです」と指定する。
🏢 たとえ話
「田中商店」という店名から、実際の住所「東京都〇〇1-2-3」を調べる住所録。
💡 使用例
• Webサイトのドメイン設定
• APIエンドポイントの指定
• サーバーへの直接アクセス
📝 設定例
example.com → 192.0.2.1
blog.example.com → 192.0.2.2
🌐
AAAAレコード
IPv6 Address Record
🎯 役割
ドメイン名をIPv6アドレスに変換
Aレコードの次世代版。より多くのアドレスを扱える。
🏢 たとえ話
従来の住所(IPv4)に加えて、より詳細な新住所表記(IPv6)を記載。
💡 使用例
• IPv6対応のWebサイト
• モダンなクラウドインフラ
• 将来を見据えた設定
📝 設定例
example.com → 2001:0db8:85a3::8a2e:0370:7334
🔄
CNAMEレコード
Canonical Name - 別名
🎯 役割
あるドメインを別のドメインの別名として設定
「このドメインは、あのドメインと同じです」と指定する。
🏢 たとえ話
「鈴木太郎」さんの別名「スズキ・タロー」で検索されても、同じ人物の情報が出てくる。
💡 使用例
• www付きドメインの設定
• CDN(CloudFront)の設定
• サブドメインの統合管理
📝 設定例
www.example.com → example.com
blog.example.com → hosting.example.com
⚠️ 重要な制約:
CNAMEは他のレコードと共存できない!
ルートドメイン(example.com)には使えない
📧
MXレコード
Mail Exchange - メール配送先
🎯 役割
メールをどのサーバーに配送するか指定
@example.com 宛のメールの配送先を設定。
🏢 たとえ話
会社宛の郵便物を「どの部署の郵便受けに入れるか」を記載した配送指示書。
💡 使用例
• Gmail/Outlook等の設定
• 独自ドメインメール
• 複数メールサーバーの優先順位設定
📝 設定例
example.com MX 10 mail1.example.com
example.com MX 20 mail2.example.com
※数字が小さいほど優先度が高い
📄
TXTレコード
Text Record - テキスト情報
🎯 役割
任意のテキスト情報を記録
ドメイン所有権の証明や、SPF/DKIMなどのメール認証に使用。
🏢 たとえ話
会社の掲示板に貼られた「お知らせ」や「認証情報」のメモ。
💡 使用例
• SPF(送信元認証)
• DKIM(電子署名)
• ドメイン所有権の検証
• サイト認証(Google等)
📝 設定例
example.com TXT "v=spf1 include:_spf.google.com ~all"
example.com TXT "google-site-verification=abc123..."
🗂️
NSレコード
Name Server - ネームサーバー
🎯 役割
どのDNSサーバーが権威を持つか指定
「このドメインの情報は、このサーバーに聞いてね」と指定。
🏢 たとえ話
「この住所録の管理者は誰?」という問いに対する回答。
💡 使用例
• サブドメインの委譲
• Route 53のホストゾーン設定
• DNSサーバーの変更
📝 設定例
example.com NS ns-123.awsdns-12.com
example.com NS ns-456.awsdns-34.net
👑
SOAレコード
Start of Authority - 管理情報
🎯 役割
ゾーンの管理情報を記録
DNSゾーンの基本設定(更新頻度、有効期限など)を定義。
🏢 たとえ話
住所録の表紙に書かれた「最終更新日」「管理責任者」「更新頻度」の情報。
💡 使用例
• ゾーン転送の設定
• TTL(キャッシュ時間)の定義
• 管理者連絡先の記録
ℹ️ Note:
Route 53では自動で作成・管理される。
通常は手動設定不要
ALIASレコード
Route 53専用 - AWS拡張機能
🎯 役割
AWSリソースへの特別な参照
CNAMEの制約なしでルートドメインにも使える!
🏢 たとえ話
「本社」と「支社」を自動的に同期させる特別なリンク。どちらの住所が変わっても自動追従。
💡 使用例
• CloudFrontディストリビューション
• ELB(Elastic Load Balancer)
• S3ウェブサイトホスティング
• API Gateway
📝 設定例
example.com ALIAS → d123.cloudfront.net
example.com ALIAS → myapp-lb-123.us-east-1.elb.amazonaws.com
✨ 特長:
• ルートドメインに使える!
• Route 53のクエリ料金が無料!
• ヘルスチェック対応

📊 レコードタイプ比較表

レコード 用途 設定値 ルートドメイン
A IPv4アドレスへの変換 192.0.2.1 ✅ 可能
AAAA IPv6アドレスへの変換 2001:0db8::1 ✅ 可能
CNAME 別名設定 example.com ❌ 不可
ALIAS AWSリソース参照 xxx.cloudfront.net ✅ 可能
MX メール配送先 10 mail.example.com ✅ 可能
TXT テキスト情報 "v=spf1..." ✅ 可能
NS ネームサーバー指定 ns1.example.com ✅ 可能
SOA ゾーン管理情報 自動生成 ✅ 自動

💼 実際のシナリオ別設定方法

🌐

基本的なWebサイト

📝 やりたいこと:
example.com と www.example.com の両方でアクセス可能にしたい
⚙️ 設定方法:

1️⃣ Aレコード:
example.com → 192.0.2.1

2️⃣ CNAMEレコード:
www.example.com → example.com
✅ 結果:
どちらのURLでも同じサイトが表示される!
📧

独自ドメインメール

📝 やりたいこと:
@example.com のメールアドレスを使いたい(Gmail利用)
⚙️ 設定方法:

1️⃣ MXレコード:
example.com MX 1 aspmx.l.google.com
example.com MX 5 alt1.aspmx.l.google.com

2️⃣ TXTレコード(SPF):
example.com TXT "v=spf1 include:_spf.google.com ~all"
✅ 結果:
独自ドメインでメール送受信が可能に!
☁️

CloudFrontでCDN配信

📝 やりたいこと:
CloudFrontを使って高速配信したい
⚙️ 設定方法:

1️⃣ ALIASレコード(推奨):
example.com ALIAS → d111111abcdef8.cloudfront.net

※ CNAMEは使えない(ルートドメインのため)
※ ALIASならRoute 53の料金も無料!
✅ 結果:
世界中から高速アクセス可能に!
🔧

サブドメイン活用

📝 やりたいこと:
blog、api、adminなど複数のサブドメインを使いたい
⚙️ 設定方法:

1️⃣ Aレコード:
blog.example.com → 192.0.2.10
api.example.com → 192.0.2.20

2️⃣ CNAMEレコード:
admin.example.com → blog.example.com

3️⃣ ALIASレコード:
api.example.com ALIAS → myapi-lb.us-east-1.elb.amazonaws.com
✅ 結果:
用途別にURLを使い分け可能!

🎯 Route 53での実際の設定手順

1 ホストゾーンの作成
📍 作業内容:
• Route 53コンソールを開く
• 「ホストゾーンの作成」をクリック
• ドメイン名を入力(例:example.com)
• タイプは「パブリックホストゾーン」を選択

💡 ポイント:
ホストゾーン作成時に、NSレコードとSOAレコードが自動で作成される!
2 ドメインレジストラでNSを設定
📍 作業内容:
• Route 53で作成されたNSレコードの値をコピー
• ドメイン購入元(お名前.com等)の管理画面へ
• ネームサーバー設定をRoute 53のNSに変更

⚠️ 注意:
反映まで24〜48時間かかる場合がある。焦らず待つ!
3 レコードの追加
📍 作業内容:
• ホストゾーンを選択
• 「レコードを作成」をクリック
• レコードタイプを選択(A、CNAME等)
• 値を入力
• TTL(Time To Live)を設定
• 「レコードを作成」で完了

# 例:Aレコードの設定 レコード名: example.com タイプ: A 値: 192.0.2.1 TTL: 300秒
4 動作確認
📍 確認方法:

# コマンドラインで確認 $ dig example.com $ nslookup example.com # ブラウザで確認 https://example.com にアクセス
✅ チェックポイント:
• DNSが正しく解決されているか
• Webサイトが表示されるか
• メールが送受信できるか
5 TTLの最適化
📍 作業内容:
• 初期設定:TTL 300秒(5分)で様子見
• 安定したら:TTL 3600秒(1時間)に延長
• 変更前:TTL 60秒(1分)に短縮して準備

💡 TTLとは:
DNS情報をキャッシュする時間。短いと変更が早く反映されるが、DNSクエリが増える。
💡 DNS設定のゴールデンルール
1. ルートドメインにCNAMEは使えない!
example.com には CNAME を設定できない。代わりに A レコードか ALIAS レコードを使う。
www.example.com には CNAME が使える。

2. AWSリソースにはALIASを使おう!
CloudFront、ELB、S3などのAWSサービスには、ALIAS レコードが最適。
• Route 53のクエリ料金が無料
• ルートドメインに使える
• ヘルスチェック対応

3. TTLは用途に応じて設定!
• テスト中:60〜300秒(短め)
• 本番安定:3600秒(1時間)
• 変更予定:事前に60秒に短縮

4. MXレコードには優先度を設定!
複数のメールサーバーを設定する場合、数字が小さいほど優先度が高い。
プライマリ:10、セカンダリ:20 のように設定。

5. 変更は慎重に、確認は念入りに!
• 変更前にバックアップ(記録)を取る
• TTLを短くしてから変更
• dig/nslookup で必ず確認
• メールサーバーは特に慎重に!

6. セキュリティも忘れずに!
• SPFレコード(送信元認証)を設定
• DKIMレコード(電子署名)を設定
• DMARCレコード(なりすまし対策)を検討

7. サブドメインは計画的に!
• www:メインサイト
• blog:ブログ
• api:API
• mail:メールサーバー
のように、わかりやすい命名規則で統一する。

⚠️ よくある間違いと解決策

❌ 間違い1
ルートドメインにCNAMEを設定
example.com CNAME → xxx.cloudfront.net
✅ 正しい設定:
example.com ALIAS → xxx.cloudfront.net
(ALIASレコードを使う!)
❌ 間違い2
TTLを変更後すぐに確認
変更が反映されない!
✅ 正しい対応:
古いTTLの時間だけ待つ必要がある。
事前にTTLを短くしておくのがベスト!
❌ 間違い3
MXレコードの優先度を全て同じに
10 mail1.example.com
10 mail2.example.com
✅ 正しい設定:
10 mail1.example.com
20 mail2.example.com
(優先順位を明確に!)
❌ 間違い4
CNAMEと他のレコードを共存
www.example.com CNAME + A レコード
✅ 正しい設定:
CNAMEか、他のレコードか、どちらか一方のみ!
CNAMEは単独で使用する

🎓 まとめ

📇 DNSレコード = インターネットの住所録

人間が覚えやすいドメイン名を、コンピューターが理解できるIPアドレスに変換する
それぞれのレコードタイプには明確な役割がある!

🏠
A/AAAA
基本の住所
(IPアドレス)
🔄
CNAME
別名
(エイリアス)
📧
MX
郵便物
(メール)
ALIAS
AWS専用
(特別)

🎯 重要ポイント:

1️⃣ ルートドメインにはCNAME不可 → AかALIASを使う
2️⃣ AWSリソースにはALIASが最適 → 料金無料&高機能
3️⃣ TTLは状況に応じて調整 → テストは短く、本番は長く
4️⃣ メール設定は慎重に → MX、SPF、DKIMをセットで
5️⃣ 変更は計画的に → バックアップ→TTL短縮→変更→確認

DNSレコードは一度理解すれば 「住所録の項目を埋める」 感覚で設定できる!
AWS Route 53なら、直感的な管理画面で簡単に設定可能です🎉

まずは基本のA、CNAME、ALIASから始めて、
徐々にMXやTXTも使いこなしていきましょう!

Created by SSuzuki1063

AWS SAP Learning Resources