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

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

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

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

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

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

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

rbenv環境でRuby on Railsのアプリケーションを一瞬で自動生成

アプリケーション構築時に最初に行う手順 概要 アプリケーションを作成するまでの手順を記載しています。 rbenvなどの環境が設定済と仮定して話を進めま...

Rails devise・authority・rolifyで権限付きの認証機能

devise・authority・rolify 概要 3つのGemを使用して、権限付き認証機能を実装します。 gem インストール Gemfile ...

Rails devise で複数モデルの認証機能を実装

Rails devise で複数モデルを管理 概要 rails のログイン認証 Gem「devise」のインストール・設定方法を紹介します。 よく「d...
トップへ戻る