コンテンツにスキップ

Amazon Route 53@AWSリソース

はじめに

本サイトにつきまして、以下をご認識のほど宜しくお願いいたします。


01. Amazon Route 53とは

クラウド DNS サーバーとして働く。

リクエストされたドメイン名と EC2 のグローバル IP アドレスをマッピングしている。

名前の由来は、名前解決時に 53 番ポートを使用するためである。


02. セットアップ

コンソール画面の場合

設定項目 説明
ホストゾーン DNSゾーン情報として、ドメイン名を設定する。
DNSレコードセット 名前解決時のルーティング方法を設定する。DNSゾーンとしてのホストゾーン配下に、サブドメイン名を設定することもできる。


DNSレコード

▼ DNSレコードとは

各ホストゾーンにドメインの名前解決方法を定義した DNS レコードを設定する。

▼ DNSレコードタイプの種類

DNSレコードタイプ 説明 名前解決の仕組み 補足
A リクエストをフォワーディングしたいAWSリソースの、IPv4アドレスまたはDNS名を設定する。 IPv4アドレスが返却される。
AAAA リクエストをフォワーディングしたいAWSリソースの、IPv6アドレスまたはDNS名を設定する。 IPv6アドレスが返却される。
CNAME リクエストをフォワーディングしたい任意のサーバーのドメイン名を設定する。 ドメイン名にリダイレクトする。 設定するドメイン名はAWSリソースでなくともよい。
NS IPアドレスの問い合わせに応えられるDNSサーバーの名前が定義されている。 DNSサーバーの名前が返却される。
MX リクエストをフォワーディングしたいメールサーバーのドメイン名を設定する。 メールサーバーのドメイン名が返却される。
TXT リクエストをフォワーディングしたいサーバーのドメイン名に紐付けられた文字列を設定する。 ドメイン名に紐付けられた文字列が返却される。

▼ AWSリソースのDNS名、ドメイン名、エンドポイント名

URLと電子メールの構造

種別 AWSリソース
DNS名 AWS ALB <ALB名>-<ランダムな文字列>.ap-northeast-1.elb.amazonaws.com
Amazon EC2 ec2-<パブリックIPをハイフン区切りにしたもの>.ap-northeast-1.compute.amazonaws.com
ドメイン名 Amazon CloudFront <発行されたランダム文字列>.cloudfront.net
エンドポイント名 Amazon Aurora <DBクラスター名><ランダムな文字列>.ap-northeast-1.rds.amazonaws.com.
Amazon RDS <DBインスタンス名><ランダムな文字列>.ap-northeast-1.rds.amazonaws.com.
Amazon S3 <バケット名>.ap-northeast-1.amazonaws.com

▼ AWS以外でドメインを購入した場合

ドメイン名の名前解決は、ドメインを購入したドメインレジストラで行われる。

そのため、AWS 以外 (例:お名前ドットコム) でドメインを購入した場合、Amazon Route 53 の NS レコード値を、ドメインを実際に購入したサービスのドメインレジストラに登録する必要がある。

これにより、ドメインレジストラに対して IP アドレスの問い合わせがあった場合、Amazon Route 53 の NS レコード値が DNS サーバーへレスポンスされるようになる。

DNS サーバーが Amazon Route 53 に問い合わせると、Amazon Route 53 は DNS サーバーとして動作し、アプリケーションの IP アドレスをレスポンスする。

一方で逆も同様で、AWS 以外のシステムのドメインを Amazon Route 53 で購入した場合、そのシステムの NS レコードを Amazon Route 53 へ登録することになる。

▼ DNSキャッシュ

ルートサーバーは世界に 13 機しか存在しておらず、現実的には、世界中の名前解決のすべてのリクエストを処理できない。

そこで、IP アドレスとドメイン名の関係をキャッシュするプロキシサーバー (キャッシュ DNS サーバー) が使用されている。

基本的には、プロキシサーバーと DNS サーバーは区別されるが、Amazon Route 53 はプロキシサーバーと DNS サーバーの能力を両立している。


リゾルバー

▼ リゾルバーとは

記入中...


ルーティングポリシー

▼ ルーティングポリシーとは

ドメイン名の名前解決ルールを設定する。

▼ シンプル

ドメイン名に単一の IP アドレスを紐付けられる。

ドメインの名前解決では、単一の IP アドレスが返却される。

▼ 複数値回答

ドメイン名に複数の IP アドレスを紐付けられる。

ドメインの名前解決では、正常な IP アドレスを均等に返却する。

ヘルスチェック機能を持つラウンドロビン方式と言い換えてもよい。

▼ 加重

ドメイン名に複数の IP アドレスを紐付けられる。

ドメインの名前解決では、IP アドレスを指定した割合で返却する。

同じ名前で複数のレコードを作成し、各レコードのルーティングポリシーを加重とする。

これらの重み付けの合計を 100 にする。

現環境から新環境にできるだけ素早く切り替えられるように、DNS キャッシュである TTL (秒) はあらかじめ短く設定しておく。

レコード名 ルーティングポリシー TTL (秒) 重み付け ルーティング先
example.com 加重 60 30 ブルー環境のALB (現環境)
example.com 加重 60 70 グリーン環境のALB (新環境)

aws_route53_routing-policy_weighted-routing


03 Amazon Route 53 + DNSサーバーによる名前解決の仕組み

Amazon Route 53を含む名前解決の仕組み

(1)

クライアント PC は、www.example.com にマッピングされる IP アドレスのキャッシュを検索する。キャッシュが無ければ、クライアント PC はドメイン名をキャッシュ DNS サーバーに問い合わせる。

(2)

キャッシュ DNS サーバーは、IP アドレスのキャッシュを検索する。キャッシュが無ければ、キャッシュ DNS サーバーはドメイン名を DNS サーバーに問い合わせる。

(3)

Amazon Route 53 は、IP アドレスのキャッシュを検索する。キャッシュが無ければ、Amazon Route 53 は IP アドレスを検索する。また、キャッシュ DNS サーバーにこれを返却する。

ドメイン名 Amazon Route 53による変換 IPアドレス
http://www.example.com 203.142.205.139
(4)

キャッシュ DNS サーバーは、IP アドレスを NAT に返却する。このとき、IP アドレスのネットワーク間変換が起こる。

(5)

NAT は、IP アドレスをクライアント PC に返却する。

(6)

クライアント PC は、返却された IP アドレスに基づいて Web ページにリクエストを送信する。