[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

ゾーンファイル (zone file)

pointこの用語のポイント

pointファイルだよ

point権威DNSサーバのお仕事用マニュアルだよ

pointIPアドレスとドメイン名の対応が書いてあるよ

スポンサーリンク

簡単に書くよ

ゾーンファイル (zone file)とは

権威DNSサーバさんのお仕事用マニュアル。
もう少しきちんと書くと

権威DNSサーバさんがお仕事で使う、IPアドレスとドメイン名の対応表
であり

自分の管理している情報を教えてあげるのがお仕事のDNSサーバさんが使うネタ元で、自分の管理する範囲内におけるIPアドレスとドメイン名の対応が書いてあるファイルのこと
です。

image piyo

詳しく書くよ

説明が長くなってしまうので、このページの説明は「DNS」「DNSサーバ」「権威DNSサーバ」「フルサービスリゾルバ」の意味と関係性を理解している前提で記載します。
簡単に補足はしますが、可能であれば、上記の用語の意味を理解してから続きをご覧ください。

それでは順番に見ていきましょう。

DNSサーバにはフルサービスリゾルバ(DNSキャッシュサーバ)と権威DNSサーバ(DNSコンテンツサーバ)の2種類があります。

一般的には、パソコンさんからの問い合わせはフルサービスリゾルバさんが受け付けます。

ゾーンファイル

フルサービスリゾルバさんが問い合わせに対する答えを知っている場合は、そのまま回答します。

ゾーンファイル2

答えを知らない場合は、他のDNSサーバさん(権威DNSサーバさん)にフルサービスリゾルバさんの方から問い合わせを行います。

ゾーンファイル3

フルサービスリゾルバさんから問い合わせを受けた権威DNSサーバさんは、「とあるファイル」を元に問い合わせに回答します。

ゾーンファイル4

対応するIPアドレスドメイン名が「とあるファイル」に書いてあれば「そのドメイン名(IPアドレス)に対応するIPアドレス(ドメイン名)はこれだよ~」とお返事してあげます。

ゾーンファイル5

「とあるファイル」に「その情報の管理は○○DNSサーバさんに委託しているよ」と書いてあれば「そこら辺は○○DNSサーバに任せてるからそっちに訊いてよ」と委託先を紹介してあげます。

ゾーンファイル6

問い合わせに応えられそうな内容が書いていなければ「う~ん、そこら辺の情報は無いなぁ。ごめんね」とお返事をします。

ゾーンファイル7

これが問い合わせと回答の流れです。

この流れにおいて、権威DNSサーバさんがお仕事のときに使った「とあるファイル」が「ゾーンファイル」です。
ゾーンファイルには、権威DNSサーバさんの管理する範囲(ゾーン)内のIPアドレスとドメイン名の対応、管理を他のDNSサーバさんに委託していれば委託先、その他あーだこーだの情報が記載されています。

ゾーンファイル8

言ってしまえば、権威DNSサーバさんのお仕事用マニュアルですね。それが無いと権威DNSサーバさんはお仕事ができません。権威も何もありゃしないのです。

実際のゾーンファイルの中身は、例えば以下のような内容になっています。

$TTL    86400
@     IN SOA ns1.example.com. postmaster.example.com. (
        2014033101
        10800
        3600
        604800
        86400 )

; name server
        IN NS         ns1.example.com.
        IN NS         ns2.example.com.

; mail server
        IN MX 10     mail.example.com.

; IP Address
        IN A            198.51.100.2
ns1     IN A            198.51.100.2
www     IN A            198.51.100.2
mail    IN A            198.51.100.2
hoge    IN A            198.51.100.2

sub    IN CNAME        hoge


ゾーンファイルのそれぞれの行は「DNSレコード」と呼ばれます。
基本的には1つの設定で1行使います。

@     IN SOA ns1.example.com. postmaster.example.com. (
        2014033101
        10800
        3600
        604800
        86400 )


の部分は複数行になっていますが、1行にすると見難いので改行しているだけです。

@ IN SOA ns1.example.com. postmaster.example.com. (2014033101 10800 3600 604800 86400)

のように1行で書くこともできます。

各行「IN」の後に「SOA」「NS」「MX」「A」「CNAME」等と書かれていますが、これは行の種類を表しています。

@     IN SOA ns1.example.com. postmaster.example.com. (
        2014033101
        10800
        3600
        604800
        86400 )


のように「SOA」と書かれている行は「SOAレコード」と呼ばれ、このゾーン(管理する範囲)に関する情報あれこれが記載されます。
詳細は「SOAレコード」の説明をご覧ください。

        IN NS         ns1.example.com.

のように「NS」と書かれている行は「NSレコード」と呼ばれ、このゾーン(管理する範囲)を管理しているDNSサーバさんの名前が書かれています。
他のDNSサーバさんに管理を委託していれば委託先のDNSサーバさんの名前を書きますし、委託していなければ自分の名前を書きますよ。
この例では「このゾーンのDNSサーバは『n1.example.com』だよ」が表現されています。

        IN MX 10     mail.example.com.

のように「MX」と書かれている行は「MXレコード」と呼ばれ、メールサーバの指定で使います。
該当するドメイン名を使ったメールアドレスがどのメールサーバを使用するかの指定です。
この例では「ドメイン名が『example.com』のメールアドレス(piyo@example.comとか)はメールサーバとして『mail.example.com』を使いますよ」が表現されています。

ns1     IN A            198.51.100.2

のように「A」と書かれている行は「Aレコード」と呼ばれ「このドメイン名に対応するIPアドレスはこれですよ」が書かれています。
左がドメイン名で右がIPアドレスです。
この例では「ドメイン名『ns1.sxample.com』のIPアドレスは『198.51.100.2』ですよ」が表現されています。

sub    IN CNAME        hoge

のように「CNAME」と書かれている行は「CNAMEレコード」と呼ばれ、ドメイン名に別名を付ける際に使います。
「左と右は同じ物として扱いますよ」ということです。
この例では「ドメイン名『sub.example.com』とドメイン名『hoge.example.com』は同じ物として扱いますね」が表現されています。

DNSレコードには他にも「AAAAレコード」「PTRレコード」「HINFOレコード」「WKSレコード」「TXTレコード」等があります。
興味がある方は、それぞれの用語の解説をご覧ください。

image piyo2

一言でまとめるよ

まぁ「ゾーンファイル」って単語が出てきたら「権威DNSサーバさんがお仕事で使うネタ帳なんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク