【新感覚Study】DNSサーバのレコードをマスターしよう!【応用情報/わかりやすく】

DNS&レコード

アバンタイトル

IT分野は範囲がとても広いです。そのため、過去問を解いていると1ページに何個も理解できない単語が出てきます。それを一気に理解しようとするのはとても骨が折れるし、やる気も続きません。

しかし、そんな時は1周まわって1つのことに徹底集中してみるのはどうでしょうか?覚えなきゃいけないことが沢山あると、終わりが見えずモチベーションが続きません。

でも、「今日はこの1つをマスターしよう!」と1つにフォーカスすればゴールが見えて、集中力も続くようになります。また、一点集中型なので理解力も深まり応用も効くようになります。

ということで、当サイトでは1点集中をコンセプトに解説を展開しています。勉強法が定まっていなかったり悩んでいる方は是非、続きをご覧になってみてはいかかでしょうか?

はじめに

今回は、応用情報のDNSサーバーのレコードをスルッと一点集中でマスターしていきましょう!

【ここで取り扱う・解決するSMTPへの疑問点】

  1. ドメイン名ってなに?
  2. なんでDNSサーバーが必要なの?
  3. Aレコードってなに?
  4. CNAMEレコード
  5. エイリアスを作ってなんのメリットがあるの?
  6. NSレコードってなに?
  7. 権威サーバーってなに?
  8. 権威サーバを知ったら何に役立つの?
  9. MXレコードってなに?
  10. MXレコードの優先度ってなに?

DNSサーバー

DNSサーバー

DNSサーバーは、インターネット上でドメイン名IPアドレスを相互に変換する役割を果たすコンピューターサーバーです。

具体的には、ウェブサイトや電子メールサーバーなどのインターネット上のリソースにアクセスする際に、人が覚えやすいドメイン名(例:example.com)を対応するIPアドレス(例:192.0.2.1)に変換して提供します。

これにより、ユーザーは覚えやすいドメイン名を使ってリソースにアクセスできます。

p.s. DNSはDomain Name Systemの略

ドメイン名ってなに?

ドメイン名は、インターネット上でネットワークやサーバーを識別するための人間が覚えやすい名前です。

たとえば、”google.com”や”yahoo.co.jp”などがドメイン名の例です。これらのドメイン名は、IPアドレスに対応しており、ユーザーがブラウザーに入力すると、対応するウェブサイトやサービスにアクセスできます。

ドメイン名は階層的な構造を持ち、トップレベルドメイン(TLD)やサブドメインなどで区別されます。

p.s.ドメイン名は要するに、サーバーのIPアドレスを人間が覚えやすいように文字化したもの

なんでDNSサーバーが必要なの?

  1. 人間が覚えやすい名前を利用できるようにするため: IPアドレスは数字の羅列であり、覚えにくいため、ユーザーがウェブサイトやサービスにアクセスする際には、覚えやすいドメイン名を使用します。DNSサーバーは、これらのドメイン名をIPアドレスに変換して提供する役割を果たします。
  2. ネットワークの変更や管理を簡素化するため: IPアドレスは変更される可能性があり、特に大規模なネットワークでは頻繁に変更されることがあります。しかし、ドメイン名は変更されることが比較的少ないため、ネットワークの変更や管理を簡素化することができます。
  3. 負荷分散や冗長性の提供: DNSサーバーは、複数のIPアドレスに対して同じドメイン名を割り当てることができます。これにより、負荷分散や冗長性を実現し、ユーザーのアクセス体験を向上させることができます。

応用情報技術者試験に出題されるのは3つ目の特徴です。

p.s.DNSはIPアドレスとドメインを対応付けてくれる。で、対応付ける際に複数のIPアドレスを1つのドメイン名に対応付けてもくれる。そうすると、負荷分散や冗長性が生まれる

じゃあ、Aレコード、CNAMEレコード、NSレコード、MXレコードってなに?

レコード

DNSサーバーを勉強していると、Aレコード、CNAMEレコード、NSレコード、MXレコードという単語も同時に扱われています。これらはいったい何なのか?ここでは、それを考えていきましょう。

p.s. これらのレコードはDNSサーバー内のデータベースに格納されている『参照テーブル』の様なものをイメージしてもらえればOKです
Aレコード(Adress Record)
Aレコード

Aレコードとは、ドメイン名とIPv4アドレスを対応付けたデータです。

例えば、”example.com”がIPv4アドレス”192.0.2.1″に対応する場合、Aレコードは”example.com”を”192.0.2.1″にマッピングします。

すなわち、AレコードとはDNSサーバーの中核を担う重要な情報であると言えます。

p.s. AレコードのAはAdress(住所)の略です。
CNAMEレコード
CNAME

CNAMEとは別のドメイン名(エイリアス)を、元のホスト名(正規名)に関連付けます。主な用途は、ドメイン名のエイリアス(別名)を作成することです。つまり、異なるドメイン名で同じコンテンツにアクセスできるようにするためのものです。

たとえば、例えば、”www.example.com”が”CNAME example.com”に対応する場合、”www.example.com”という名前を使っても、実際には”example.com”にアクセスすることができます。

p.s. CNAMEはCanonical Name Record(標準的な 名前 記録)の略です。また、CNAMEは冗長性や負荷分散を行うレコードではありません。それを担当するのは、主にAレコードやMXレコードです。
エイリアスを作ってなんのメリットがあるの?
  1. シンプルな管理ドメインの移行:
    ウェブサイトやアプリケーションのリソースが変更された場合、そのリソースに関連付けられたドメイン名が変更されることがあります。このような場合、CNAMEレコードを使用すると、新しいドメイン名に簡単にリダイレクトすることができます。これにより、管理が簡素化されます。
    また、ウェブサイトやサービスを別のホストに移行する場合、CNAMEレコードを使用して古いドメイン名から新しいドメイン名に簡単にリダイレクトできます。これにより、ユーザーが新しい場所に自然に移行されます。

    【具体例】
    たとえば、あなたが「example.com」というウェブサイトを持っていて、そのウェブサイトに「www.example.com」というドメイン名を使ってアクセスしています。しかし、ある日、ウェブホスティングプロバイダーを変更したいと思ったとします。新しいウェブホスティングプロバイダーには「newprovider.com」というドメイン名があります。

    この場合、CNAMEを使用すると、簡単に「www.example.com」を「newprovider.com」にリダイレクトできます。CNAMEレコードは、新しいウェブホスティングプロバイダーのドメイン名を指すように設定され、ウェブブラウザはその指示に従って新しい場所に自動的に移動します。

    つまり、CNAMEは、ドメイン名の変更や移行を簡単に行うための方法です。ユーザーは、新しいドメイン名に自然に移行され、サービスの中断を最小限に抑えることができます。
  2. 外部サービスとの連携が容易
    外部サービスやクラウドプロバイダーのリソースを使用する場合、CNAMEレコードを使用して外部サービスに簡単に接続できます。これにより、サービスの変更や更新が容易になります。

    【具体例】
    外部サービスを利用する場合、そのサービスの提供元が特定のドメイン名を提供しています。例えば、クラウドストレージサービスの提供元が「storageprovider.com」というドメイン名を持っているとします。

    ここで、あなたが自分のウェブサイトにクラウドストレージサービスを統合したいと考えています。その場合、CNAMEを使って、自分のウェブサイトのサブドメイン(例えば、「files.example.com」)をクラウドストレージサービスの提供元のドメイン名に関連付けることができます。

    具体的には、CNAMEレコードを設定して、「files.example.com」を「storageprovider.com」にリダイレクトします。これにより、ウェブサイトの訪問者は「files.example.com」にアクセスすると、自動的にクラウドストレージサービスに接続されます。

このように、CNAMEを使うと、外部サービスに関連付けられたドメイン名を自分のドメイン名に簡単にリダイレクトすることができます。これにより、外部サービスの導入や変更が容易になり、ウェブサイトやアプリケーションの機能を拡張することができます。

NSレコード
NSレコード

NSレコードはドメイン名の権威サーバー(名前サーバー)を示します。

p.s.NSレコードはName Serverの略です。
権威サーバーってなに?

権威サーバーは、特定のドメイン名(例えば、example.comなど)に関連付けられたDNS情報を管理するサーバーのことです。つまり、特定のドメイン名のIPアドレスやその他のDNSレコード(AレコードCNAMEレコードなど)を保持し、必要に応じてそれらの情報を提供します。

権威サーバーは、そのドメイン名に関する正確な情報を提供する権限を持っています。例えば、”example.com”ドメイン名の権威サーバーは、”example.com”に関連付けられたIPアドレスやサブドメインなどの情報を提供します。他のサーバーが”example.com”に関する情報を取得する際には、権威サーバーに問い合わせます。

権威サーバーは、ドメイン名の管理者が設定し、更新することができます。また、1つのドメイン名には複数の権威サーバーが存在する場合がありますが、通常、それぞれの権威サーバーは特定の役割を担当し、全体としてドメイン名のDNS情報を提供する役割を分担しています。

p.s.要するに権威サーバーっていうのは、問い合わせがあった時に、問い合わせ情報を保持しているサーバーを指します。
権威サーバを知ったら何に役立つの?

インターネット上の通信において、ドメイン名をIPアドレスに変換するためには、DNSサーバーに問い合わせる必要があります。その際、最初にユーザーのコンピューターが訪問するのは、そのドメイン名の権威サーバーです。

NSレコードは、特定のドメイン名の権威サーバーを示すために使用されます。つまり、ドメイン名のDNS情報を提供する権限を持つサーバーを特定することができます。これにより、DNSクエリが行われる際、クライアント(例えば、ウェブブラウザー)はまずNSレコードを使用して、対象ドメイン名の権威サーバーを特定します。そして、その権威サーバーに対して追加のクエリを行い、必要な情報を取得します。

要するに、NSレコードは、特定のドメイン名に関するDNS情報を提供する権限を持つサーバーを指定する役割を果たします。これにより、ドメイン名の正確なDNS情報を取得し、インターネット上の通信を正確かつ迅速に行うことが可能となります。

p.s.権威サーバーをすぐに見つけることで、わざわざ、どこだーどこだーっと探す必要がなく一発で分かる。また、権威サーバーにはAレコードやCNAMEレコードがあるためIPアドレスやエイリアスなどを把握できる。
MXレコード
MXレコード

MXレコードはメールの配信に関する情報を提供します。

具体的には、MXレコードは特定のドメイン名に対してメールを受信するためのメールサーバーの情報を指定します。これにより、送信元のメールサーバーが特定のドメインにメールを送信する際に、どのメールサーバーにメールを配信すれば良いかを知ることができます。

p.s.MXレコードはMail Exchange(メール交換)の略。
MXレコードの優先度ってなに?

MXレコードは、優先度とメールサーバーのドメイン名から構成されます。優先度は、複数のMXレコードが存在する場合に使用され、メールの配信優先順位を示します。優先度の数値が小さいほど、メールサーバーへの配信優先度が高くなります。

例えば、次のようなMXレコードがあるとします:

example.com.    IN MX 10 mail1.example.com.
example.com.    IN MX 20 mail2.example.com.

この場合、”example.com”ドメインに対するメールの配信先は、”mail1.example.com”と”mail2.example.com”の2つのメールサーバーです。優先度が10の”mail1.example.com”が最優先で、優先度が20の”mail2.example.com”が次に優先度が低いバックアップのメールサーバーとなります。

つまり、MXレコードはメールの配信に関する情報を提供し、メールの送信元が特定のドメインにメールを送信する際に、適切なメールサーバーにメールを配信するのに役立ちます。

おわりに

Finish

お疲れさまでした!今回は、DNSサーバーの概要をマスターしました!今回の知識を使うことで、見たことのない問題でも、応用がきくようになります!ぜひ、過去問などを解いて実感してみてください!

では、今日はここで終わります!ありがとうございました!

タイトルとURLをコピーしました