AWS Tech インフラ・クラウド

Route53とは?学んだことをまとめてみた【初心者エンジニアのAWS備忘録③】

投稿日:2020年4月25日 更新日:

こんにちは、yassanです。
今回は「Route53とは?学んだことをまとめてみた【初心者エンジニアのAWS備忘録】」を紹介いたします。

今回ご説明するRoute53は、VPCや EC2に比べて前提とする知識が重要になります。
なので、いきなりRoute53の説明をする前に、それに関連する、ドメインとDNSについて説明をします。
(分かりやすさ重視のため、厳密な説明はしてません。ご了承ください。)

ドメイン

ドメインというのは、〜.comや〜.jpみたいな感じのやつです。
この文字列が何を表しているのかというと、実はIPアドレスなんです。

例えば、あるブログのIPアドレスが、192.12.34.56だとしましょう。
では、あなたがこのブログにアクセスしようとした時に、ブラウザに「192.12.34.56」と入力するかと言われると、そうじゃないですよね。
IPアドレスをベタがきするのではなく、「https://〜〜〜〜.com」って入力すると思います。
この「https://〜〜〜.com」というのがドメインです。

というわけで、ドメインというのはIPアドレスの名前を変えたものとなっております。
つまり、ドメインとIPアドレスは、見た目は違えど実態は同じ場所を指しているのです。
では、ドメインとIPアドレスはどのように紐付けを行っているのでしょうか。
そこで、DNSが登場します。

DNSはDomain Network Systemの略です。
ドメインとIPアドレスの紐付けを行い、管理する仕組みです。
例えば、「このIPアドレスに接続したい」という入力が来た時、「このIPアドレスはこのドメインです」というのを返します。
簡単に説明するとこんな感じです。

(ちなみに、ターミナル上で「$ dig 〜.com NS +short」と入力すると、そのドメインのネームサーバーを確認することができます)

DNS(Domain Network Server)

さて、そんなドメインとDNSですが、実際にどのようにやり取りされるのか、もう少し詳しく説明します。

DNSは、ネームサーバーとフルリゾルバで構成されています。
ネームサーバーはその名の通り、ドメインとIPアドレスの紐付け情報が格納されたサーバーです。
全てのドメインとIPアドレスの紐付け情報は、一つのサーバーに集められているわけではなく、世の中あるたくさんのネームサーバーで管理されています。
フルリゾルバは、ネームサーバーに、ドメインのIPアドレスを問い合わせると、様々なネームサーバーからどのネームサーバーにIPがあるか探し出し、IPアドレスを返すサーバーです。

「https://〜.com」というドメインにつなぎたいとしましょう。
まずは、たくさんのネームサーバーを束ねるフルリゾルバに問い合わせます。
フルリゾルバは要求を受け取ると、まずはルートDNSサーバに問い合わせます。
ルートDNSサーバは「.com」のDNSサーバに問い合わせるように返答します。
フルリゾルバはこの要求を受け取り、次に「.com」のDNSサーバに問い合わせます。
「.com」のDNSサーバは「〜.com」のDNSサーバに問い合わせるように返答します。
フルリゾルバはこの要求を受け取り、次に「〜.com」のDNSサーバに問い合わせます。
「〜.com」のDNSサーバはIPアドレスを返します。
フルリゾルバが、IPアドレスを要求元に返します。
要求元は指定のIPアドレスのWebサーバに接続しました。
と、こんな感じの流れになります。
こちらのページがとても分かりやすかったです!

フルリゾルバは、このように様々なDNSサーバをたらい回しにされて、やっとIPアドレスを見つけて来ます。

Route53とは?

さて、やっとRoute53の紹介です。
Route53とはAWSが提供するDNSサービスです。
中にでも、Route53は、ネームサーバーの役割を持ちます。
(したがって、フルリゾルバの役割は持ちませんし、ドメインの取得などは行っていません)
また、ネームサーバーではありますが、ルートDNSサーバには設定することはできません。

Route53は、公式ページで9つの利点が紹介されています。

  • 高い可用性と信頼性
  • 柔軟性
  • 他のAWSと併用しやすい設計
  • シンプル
  • 高速
  • 高い費用対高価
  • セキュア
  • スケーラブル
  • ハイブリッドクラウドを簡素化

こんな感じです。
詳しい内容は、公式ページをご覧ください。
ルーティングポリシーの設定によっては、かなり自由度が高いサービスです。

使用するイメージとしては、
ルートDNSサーバの返答をRoute53に設定することで、フルリゾルバがRoute53を参照するようにします。

まとめ

いかがでしたでしょうか。
Route53とは、DNSネームサーバーのことと覚えておけば、最低限は大丈夫だと思います。

Webページを見るためには、様々なDNSサーバーをまたぐ必要があるんですね。
勉強になりました。

ここまで読んでいただき、ありがとうございました。

-AWS, Tech, インフラ・クラウド
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

【SSO】OIDCとSAMLの違い【認証認可】

こんにちは、yassanです。OpenIDConnectとSAMLの違いをまとめてみました。 各認証フローについては理解している前提での話になります。ご了承ください。また、もし間違ってるところがあった …

AWSとは?初心者向けに超絶簡潔に説明

こんにちは、yassanです。今回は「AWSとは?初心者向けに超絶簡潔に説明」を紹介します。 AWSについて全く知らないのに、上司にいきなり「AWSってのが流行ってるからなんかやれや」って言われた方、 …

【MySQL】Error Code: 1175. You are using…の対処方法

Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE tha …

AWS東京リージョン障害で学ぶ可用性

こんにちは、yassanです。今回は「AWS東京リージョン障害で学ぶ可用性」を紹介します。 昨日の深夜に東京リージョンにあるAZの一つで、障害が発生しました。このニュースに対して、ベストプラクティスに …

【Python】loggingの正しい使い方

開発効率やメンテナンス性の観点から、ログを残すことは非常に重要です。 Pythonにはログ出力用に「logging」モジュールが用意されています。loggingを使うことで、簡単にログ管理をすることが …

yassanさんのプロフィール写真

yassan
インフラエンジニア。
独学でインフラ・クラウドについて学んでいます。
大阪 / 20代後半 / 決闘者 / FE / AWS-SAA

twitter: @yassan10787859