[ANS-C01]Route 53 まとめ
Route 53
概要
DNS周りのことが出来るサービス、多機能
ホストゾーン
- パブリックホストゾーン:インターネット向け
- プライベートホストゾーン:VPC内向け
DNSキーワードメモ
権威ネームサーバ
DNSの親玉。担当している箇所に登録されたすべてのネームサーバ情報を知っていて、DNSリゾルバーからのリクエストを受け取ると該当ドメインのネームサーバ情報を応答する
例:.comドメインの権威ネームサーバはexample.comのネームサーバ情報を応答する
DNSリゾルバー / 再帰ネームサーバ
ISP管理のDNSサーバ。やっていることはDNSプロキシ
基本的に名前解決が行われる場合、DNSリゾルバーにアクセスを行い、DNSリゾルバーが権威ネームサーバにアクセスして名前解決をする
パブリックホストゾーン
インターネット上での名前解決を提供
作成時にNS,SOAレコードを一つずつ作成する
→この際4つのネームサーバも同時に作成している
ELB/S3/CloudFront/API Gateway/VPC EndpointでホストされているWebサーバに使用する場合、ALIASレコードを使用しZone Apex名を各DNS名にマッピングすることで可能
例:Zone Apex (例: example.com) DNS 名をELB ロードバランサー用の DNS 名 (例: my-loadbalancer-1234567890.us-west-2.elb.amazonaws.com)にマッピングする
再利用可能な委任セット
DNSをRoute 53に移行する際に使用する
コンソールからの設定はできないためCLI/SDK/APIを使用する必要がある
プライベートホストゾーン
VPC内リソースへの名前解決を提供、複数のVPCへの関連付けも可能
以下を有効にする必要があり
- enableDnsHostnames
- enableDnsSupport
※名前空間が重複した場合は一致度合いに基づいてあて先は決定する
DNSサーバとなっているEC2インスタンスはVPCのDNSサーバに対してルーティングを行うように設定する必要アリ
→10.0.0.0/16の場合、10.0.0.2
※VPNの宛先からの名前解決はサポートしていない
VPNからの名前解決をする場合、インバウンドリゾルバーか、カスタムDNSサーバインスタンスに対して行う必要かある?
→DHCP Option Setを使用すればカスタムDNSサーバインスタンスに対しての名前解決は自動でできる
DHCP Option Set → カスタムDNSサーバ → Amazon DNS/プライベートホストゾーン
DHCP Option Set
インスタンスが参照するDNSサーバ情報やドメイン名情報を設定する
※NTPの制御も可能
デフォルトではAmazon DNS サーバが設定されている
作成後に変更が出来ないため、変更する場合は異なるDHCP Option Setを作成して付け替える必要がある
※その際インスタンスの再起動は必要なし
リゾルバー
- インバウンド
→オンプレミス環境からプライベートホストゾーンで名前解決をできるようにする
https://docs.aws.amazon.com/ja_jp/Route53/latest/DeveloperGuide/resolver-forwarding-inbound-queries.html - アウトバウンド
→VPCからオンプレミス環境のDNSサーバで名前解決をできるようにする
https://docs.aws.amazon.com/ja_jp/Route53/latest/DeveloperGuide/resolver-forwarding-outbound-queries.html
ルーティング
- シンプルルーティングポリシー
→単一のリソースにルーティング - フェイルオーバールーティングポリシー
→アクティブ/パッシブフェイルオーバーを構成する場合に使用 - 位置情報ルーティングポリシー
→ユーザーの場所に基づいてルーティングする場合に使用 - 地理的近接性ルーティングポリシー
→リソースの場所に基づいてトラフィックをルーティングし、必要に応じてトラフィックをある場所のリソースから別の場所のリソースに移動する場合に使用 - レイテンシールーティングポリシー
→複数の場所にリソースがあり、レイテンシーが最も小さいリソースにトラフィックをルーティングする場合に使用 - IP ベースのルーティングポリシー
→送信元のIPアドレス、ユーザーの位置に基づいてルーティングする際に使用 - 複数値回答ルーティングポリシー
→ランダムに選ばれた最大8つの正常なレコードを使用して応答する場合に使用 - 加重ルーティングポリシー
→指定した比率で複数のリソースにトラフィックをルーティングする場合に使用
メモ
Geoは必ずしも低レイテンシーの回答をするものではないため、レイテンシーベースのルーティングの方が早い
ヘルスチェックはAmazon CloudWatch メトリクスから取得する
DNS レコード
- A (アドレスレコード)
- AAAA (IPv6 アドレスレコード)
- CNAME (正規名レコード)
- CAA (認証機関認可)
- MX (メール交換レコード)
- NAPTR (名前付け権限ポインタレコード)
- NS (ネームサーバーレコード)
- PTR (ポインタレコード)
- SOA (管理情報の始点レコード)
- SPF (センダーポリシーフレームワーク)
- SRV (サービスロケーター)
- TXT (テキストレコード)
- ALIAS (エイリアス)
ALIAS (エイリアス)
Route 53 専用のレコード
ELB/S3/CloudFront/API Gateway/VPC Endpointなどにルーティングが出来る
CNAMEとの差分はZone Apexに対してエイリアスレコードを作成できる点
その他機能
- ドメイン登録
- トラフィックフロー
- Route 53 Resolver DNS Firewall
参考
Discussion