DNSレコードの種類をまとめました

2013/11/14

DNSについて

概要

DNS(Domain Name Systemの略)とは、インターネット上で使用するドメインを管理・運用するシステムです。
ドメイン名(ホスト名)とIPアドレスを対応させることで、ブラウザのアドレスバーに入力されたURLからどのサーバーにアクセスするか判断しています。

インターネット上のコンピュータ同士が通信を行うにはIPアドレス(xxx.xxx.xxx.xxxのような数値をカンマで4つに区切ったもの)で相手を判断しています。
しかしこの数値の羅列は、人間からすると見にくく覚えにくいものです。
そのため、人間でも分かりやすいようホスト名(例 : pb-times.jp)を使うようになりました。
このIPアドレスとホスト名の紐づけを行っているのがDNSという訳です。

リソースレコード

これら対応させるための情報は、当然ですがデータベースに保存しています。
このデータベースは、リソースレコードと呼ばれるデータで構成されています。

よく設定を行うレコードは以下のようなものです。

A : アドレス
CNAME : キャノニカルネーム
MX : メールエクスチェンジ
NS : ネームサーバ
SOA : スタートオブオーソリティ

これらについて詳しく見ていきましょう。

レコードの種類

Aレコード

ホスト名からIPアドレス(IPv4)を取得するための情報を定義します。
これを正引きと言います。

反対に、IPアドレスからホスト名を取得することを逆引きと呼び、これらはPTRレコードに定義します。

Aレコードは、DNSで一番基本となるレコードです。

これらの対応は1対1とは限らず、1つのドメインに複数のIPアドレスを対応させることもできます。
この場合は、1つのAレコードに複数のIPアドレスを定義します。

CNAME

正規のドメイン名に対して追加したホストやエイリアスをリンクするのに用いられます。
これにより、Aレコードで使用されているIPアドレスに複数の名前を付けることができるのです。

たとえば、http://pb-times.jp と http://www.pb-times.jp で同一の箇所にアクセスしたい場合は、www.pb-times.jp を pb-times.jp のエイリアスとして、CNAMEで指定します。

MXレコード

ドメイン名からメールサーバのホスト名を結び付けるために使用します。

メールを送信するサーバーは、まず、送信先メールアドレスのドメイン名のMXレコードを調べます。
そしてMXレコードから取得した、送信先メールサーバーのドメイン名のAレコードを調べます。
AレコードからメールサーバのIPアドレスを入手し、メールが送信されるという仕組みです。

MXレコードが定義されていない場合は、AレコードのIPアドレス宛に送信を行います。

NSレコード

ドメインのDNSサーバーを定義したり、サブドメインのDNSサーバーを定義します。
DNSの階層構造を表現する手段です。
いわゆる、案内人というイメージです。

SOA

DNSサーバーの動作を決めたりなどの管理情報を定義するためのものです。
例えば、管理者メールアドレスや一時的なデータを残す時間、またリクエスト間隔などの情報です。

Related

Vagrant+Docker+PHP環境で「session.save_path」指定時に、セッションファイルが空になるエラー

ファイル共有でのフォルダの所有者を設定 結論 PHP5.4.28 からセッションファイルのownerはrootもしくはWebサーバのユーザに限るという制限が...

LINEと連携したテイクアウト事前注文システム徹底比較!

目次 テイクアウト予約・注文受付システムのトレンド LINEと連携したテイクアウト事前注文システムの価格表 L.B.B.Cloud テイクイーツ ...

PHPで動画の撮影日を取得

PHPで動画の撮影日を取得 概要 PHPからffprobeコマンドを実行し、動画の撮影日時を取得します。 コード $posted_at = ...

FullCalendarでGoogleカレンダーのようなUIを実装

jQueryプラグインFullCalendarのサンプル 概要 FullCalendarを使用して、GoogleカレンダーのようなUIを実装する使用例を...

PHP Laravel5.2でmulti-auth(複数テーブルでの認証)を実装

Laravel5.2でマルチ認証 概要 LaravelとはPHPの中で今最も伸びているフレームワークです。 処理速度が遅いなどありますが、かなり使い安く拡...

PHP 正規表現でIPアドレス形式の文字列か判定

正規表現でIPアドレスの入力チェック 概要 フォームで入力されたIPアドレスが正当な文字列か判定するためのバリデーション処理を実装します。 基本的...
トップへ戻る