1_DNSとは何か(第1回の振り返り)
DNS(Domain Name System)とは、インターネット上の住所であるIPアドレスと、人間が覚えやすいドメイン名を結び付けてくれるシステムになります。私たちのPCは、Webサイトにアクセスする前にURL(ドメイン名)をDNSサーバに問い合わせることで、WebサイトのIPアドレスを取得し通信を行っております。

2_DNSレコードとは?
DNSレコードとは、「ドメインにどんな情報を紐づけるか」を記載した設定情報のことです。本サイトであれば「simple-viz.com」というドメインに関する様々な情報をまとめた表のようなものです。
これまで説明してきた、ドメイン名とIPアドレスを紐づける基本的なレコード(=Aレコード)以外にも、該当のドメインに対してメールを送信したい場合に参照するレコード(=MXレコード)など様々な種類があります。

では、実際に各レコードの概要をみていきましょう
2-1_A/AAAAレコード(ドメイン名 → IPアドレス)
使用する場面:Webサイトにアクセスする時

DNSレコードで代表的なものが、このAレコード及びAAAAレコードになります。こちらは、これまで説明したURL(ドメイン名)をIPアドレスに変換するレコードになります。 AレコードはIPv4に対応しており、AAAAレコードはIPv6に対応しております。
2-2_PTRレコード(IPアドレス → ドメイン名)
使用する場面:ログ解析でIPアドレスからドメイン名(ホスト名)を知りたいとき

Aレコードとは逆にIPアドレスからドメイン名(ホスト名)を知ることが出来ます。

どんな場面で利用されるのかがいまいちイメージが付きません・・・

例として社内システムを提供しているシステムサーバを取り上げますが、通常システムサーバは、アクセスログが残っておりアクセスしてきたPC等の情報が記録されています。ただし、このログは通常IPアドレスで取得しているため、社内PCに何かしらの識別子(機器番号等)が振られていたとしても、アクセス元を特定することが出来ません。そのようなケースで、このPTRレコードを活用し、IPアドレスからホスト名を取得することで、アクセス元の機器を特定できます。

2-3_CNAMEレコード(別名の仕組み)
使用場面 : 外部サービスを自分のドメインで使いたいとき
CNAMEレコードは、別名(あだ名)を本名に結びつけるレコードになります。
イメージとしては、「simple-viz.com」に「alias.simple-viz.com」という別名をつけ、レコードとしては、「alias.simple-viz.com → simple-viz.com」の行が存在します。

友達ならあだ名で呼ぶ理由も分かりますが、ドメイン名(ホスト名)に別名をつける意味はあるのですか?

例えば、「simple-viz.com」という本サイトのドメインを利用して別のブログサービスを使用するとなった時も、「alias.simple-viz.com」のようにサブドメイン(aliasを追加)を利用することで、「simple-viz.com」のブランドを利用できます。この辺は、イメージが難しいので下記図を見ていきましょう。

2-4_MXレコード(メール配送の流れ)
使用場面 : 該当ドメインのメールアドレスにメールを送る時
「simple-viz.com」というドメインに対してメールを送信したい場合にどこに送ったらよいか(どのメールサーバに送信したらよいか)を返してくれるレコードになります。


CNAMEもMXレコードも、 最終的にAレコードを要求しているのですね

CNAMEもMAレコードも、それぞれ本名のホスト名及びメールサーバのホスト名を返すだけなので、それだけでは通信に必要なIPアドレスが分かりません。
そのため最終的には返ってきたホスト名に対してAレコードを要求してIPアドレスを取得する必要があります
3_まとめ

DNSって、IPアドレスを返しているだけだと思っていたのですが、色々な情報を返しているのですね・・・

今回、紹介したA/AAAAレコード、PTRレコード、CNAMEレコード、MXレコード以外にも、TXTレコード、SRVレコードなど種類がありますので、気になった人は調べてみてくださいね
(参考)よくある質問
- Q1AレコードとCNAMEレコードはどう使い分ければいいの?
- A1
Aレコードは「本体の住所(IPアドレス)」を直接書くときに使います。 一方、CNAMEレコードは「別名(あだ名)を本名に結びつける」ためのレコードです。
- 本体のサーバを指したい → Aレコード
- 別名で呼びたい/外部サービスに向けたい → CNAMEレコード
という使い分けになります。
- Q2PTRレコードは普段のWebアクセスでは使われないの?
- A2
はい、普段のWeb閲覧では使われません。 PTRレコードは IPアドレス → ホスト名 を調べるための“逆引きDNS”で、 主に以下のような場面で使われます。
- アクセスログから「どのPCがアクセスしたか」を特定したいとき
- メールサーバが送信元の正当性を確認するとき
一般ユーザーがWebサイトを見るときには使われません。
- Q3CNAMEを使うとURLが変わらないのはなぜ?
- A3
CNAMEは「別名 → 本名」の仕組みなので、 ユーザーが入力するURL(別名)はそのまま使われます。
裏側では本名のサーバに案内されますが、 ユーザーが見るURLは変わりません。
そのため、
- 外部サービスを自分のドメインで使いたい
- URLを統一してブランドを保ちたい
- CDNの裏側の変更に自動で追従したい
といった場面で非常に便利です。


コメント