AWS勉強⑤Route 53でDNSを設定する
本日は、Route53でドメインを設定したいと思います!
まずは、予備知識。
なぜRoute53でドメインを登録するのか?
現在はIPアドレスを指定しないとWebサーバーへアクセス出来ない状態。
IPアドレスは覚えづらいので、ドメイン名を設定しIPアドレスと紐付けることで、
アクセスすることが可能となる。
「インターネット上に存在するコンピュータやネットワークを識別する為の名前」
DNS(Domain Name System)
電話帳の役割をもつ「ネームサーバー」と、リクエストに応じたIPアドレスを調べてくれる「フルリゾルバ」で構成される。
Route 53
「AWSのDNSサービスであり、ネームサーバーの役割を果たす」
SLA100%というのが最大の特徴。稼働率が100%を示し、Route53が落ちることがないということをAWSが保証している。また、フルマネージドサービスであり、DNSサーバーの設計や維持管理が不要となる。
Route 53を使用するにあたり重要となる概念は以下4つ。
・ルーティングポリシー
Route 53がRecord Setに対してどのようにルーティングを行うかを決めるもの。
フルリゾルバからIPアドレスを聞かれた時に、どのIPアドレスを返すかを決める。
・ホストゾーン
DNSのリソースレコードの集合
・レコードセット
リソースレコードを示す
・ヘルスチェック
サーバーの稼働状況をチェック
予備知識は以上。
では、今回使用するドメインを購入します。
ドメインを設定するにはレジストラやリセラで購入する必要あり。
今回は国内最大のレジストラである「お名前.com」で購入します。
1番安い「.work」で作成、購入できたら自動更新をOFFに設定し、作成完了。
それでは、
作成したドメインからWebサーバーが起動するように設定していきます!
その前に・・・この時フルリゾルバで行われている処理を確認。
2,フルリゾルバからルートネームサーバーへ問い合わせる
3,設定したドメインに基づく(今回はwork)ネームサーバーへ問い合わせ
4,ネームサーバーRoute 53から設定したIPアドレスをフルリゾルバへ返す
6,ブラウザからWebサーバーへ抽出したIPアドレスで接続する
この時の3,4間の処理を可能にするための設定を行います。
(※現状では、お名前.comのネームサーバーが設定されているから)
具体的な作業内容は、以下の2点。
①ドメインのネームサーバーをRoute 53に変更
・Route 53でホストゾーンを作成
・ネームサーバーをお名前.comからRoute 53に変更
・Route 53でAタイプレコードセットを作成
では実装していきましょう!
まずはRoute 53でホストゾーンを作成。
この中に、レコードセットを登録することでドメイン名とIPアドレスを関連付けることが出来る。
タイプはインターネットへ接続したいので「パブリックホストゾーン」を選択。
「プライベートホストゾーン」はAWSのVPC内でルーティングする時にIPアドレスではなくドメイン名を使用する時に選択する。
作成すると、NSレコードとSOAレコードが生成されていることを確認。
NSレコードとはそのドメインを管理するネームサーバーとの紐付け。
NSタイプを確認すると、4つのネームサーバーを確認。
これでネームサーバーができましたが、接続することは出来ません。
その理由をターミナルで確認します。
sshコマンドでサーバーへログインし、以下のコマンドを入力。
「dig ○○○.work NS +short」
digはドメインに紐づくIPアドレス、IPアドレスに紐づくドメインを調べるコマンド。
NSは作成したレコードのタイプ。
+shortはdigコマンドは色々な情報が出力される為、NSだけを出力するようにする。
すると、以下の表記が出現。
dns2.onamae.com.
dns1.onamae.com.
これは現在、デフォルトでお名前.comのネームサーバーが適用されていることを示す。
これをゾーンはRoute 53にあると変更するために、お名前.comの管理画面から変更。
ネームサーバー情報はRoute 53のNSサーバーに設定された4つの値を入力し設定完了。
設定の反映には1〜3日かかる。
次に、Route 53でAタイプのレコードセットを作成。
A(Address)レコードは、IPv4でホスト名とIPアドレスの関連づけを定義するレコード。
これにより、ドメインのネームサーバーの変更が反映された後、ドメインをWebブラウザに入力するとAレコードで登録されたIPアドレスが返されWebサーバーに接続できるようになる。
これでドメイン名からWebページが表示できれば実装OK!
次は、DBサーバーを構築していきます!