ゾーンファイル
ファイルだよ
権威DNSサーバのお仕事用マニュアルだよ
IPアドレスとドメイン名の対応が書いてあるよ
簡単に書くよ
ゾーンファイル(英:zone file)とは
自分の管理している情報を教えてあげるのがお仕事のDNSサーバさん
(IPアドレスとドメイン名の対応を管理するのが仕事のコンピュータ)(権威DNSサーバ)のお仕事用マニュアル。
もう少し具体的に書くと
権威DNSサーバさんがお仕事で使う、IPアドレス
(インターネットをするときにコンピュータに割り当てられる住所)とドメイン名
(IPアドレスに付けた人間様向けの名前)の対応表
であり
自分の管理する範囲内におけるIPアドレスとドメイン名の対応が書いてあるファイルのこと
です。
詳しく書くよ
説明が長くなってしまうので、このページの説明は
・DNS
・DNSサーバ
・権威DNSサーバ
・フルサービスリゾルバ
の意味と関係性を理解している前提で書きます。
簡単に補足はしますけどね。
できれば上記の用語の意味を理解してから続きを ご覧ください。
それでは順番に見ていきましょう。
DNSサーバには
1.フルサービスリゾルバ(DNSキャッシュサーバ)
2.権威DNSサーバ(DNSコンテンツサーバ)
の2種類あります。
一般的には、パソコンさんからの問い合わせはフルサービスリゾルバさんが受け付けて対応します。
フルサービスリゾルバさんが対応しきれない場合には、権威DNSサーバさんに「こんな問い合わせが来たんだけど、知ってたら教えて~」と助けを求めます。
パソコンさんからの問い合わせを最初に受けるのはフルサービスリゾルバさんです。
フルサービスリゾルバさんが問い合わせに対する答えを知っている場合は、そのまま回答します。
答えを知らない場合は、他のDNSサーバさん(権威DNSサーバさん)にフルサービスリゾルバさんの方から問い合わせます。
フルサービスリゾルバさんから問い合わせを受けた権威DNSサーバさんは「とあるファイル」を見て問い合わせに回答します。
対応するIPアドレスやドメイン名が「とあるファイル」に書いてあれば「それに対応するやつは、これだよ~」とお返事してあげます。
「とあるファイル」に「その情報の管理は○○DNSサーバさんに委託しているよ」と書いてあれば「そこら辺は○○DNSサーバに任せてるから、そっちに聞いてよ」と委託先を紹介してあげます。
問い合わせに応えられそうな内容が書いていなければ「う~ん、そこら辺の情報は持ってないなぁ。ごめんね」とお返事をします。
これが問い合わせと回答の流れです。
この流れにおいて、権威DNSサーバさんがお仕事のときに使った「とあるファイル」が「ゾーンファイル」です。
ゾーンファイルには、権威DNSサーバさんが管理する範囲(ゾーン)内のIPアドレスとドメイン名の対応、管理を他のDNSサーバさんに委託していれば委託先、その他あーだこーだの情報が記載されています。
言ってしまえば
権威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.example.com』のIPアドレスは『198.51.100.2』ですよ」が表現されています。
sub IN CNAME hoge
のように「CNAME」と書かれている行は「CNAMEレコード」と呼ばれ、ドメイン名に別名を付けるときに使います。
「左と右は同じ物として扱いますよ」ということです。
この例では「ドメイン名『sub.example.com』とドメイン名『hoge.example.com』は同じ物として扱いますね」が表現されています。
DNSレコードには他にも「AAAAレコード」「PTRレコード」「HINFOレコード」「WKSレコード」「TXTレコード」などがあります。
興味がある方は、それぞれの用語の説明を ご覧ください。
一言でまとめるよ
まぁ「ゾーンファイル」って単語が出てきたら「権威DNSサーバさん
(自分の管理している情報を教えてあげるのが仕事のDNSサーバ)がお仕事で使うネタ帳なんだな~」と お考えください。
おまけ
■訳してみるよ
「zone(ゾーン)」の意味は「地帯」とか「区域」とか「地域」とかです。
「file(ファイル)」はカタカナで「ファイル」で分かりますかね。
何となく くっつけると
区域のファイル
となります。
■検索してみる?






