TCP/IP - DNS 2



 ※ DNSについてはじめから学習したい方は「TCP/IPをはじめから - DNSとは その1」をご参照下さい。


 ◆ DNS - ゾーンファイルとリソースレコード

 DNSサーバは
リソースレコードと呼ばれるドメイン名とIPアドレスの対応するデータを多数持っています。
 そして、リソースレコードの集合体であるデータベースは、一般的に
ゾーンファイルと呼ばれています。
 DNSサーバのソフトウェアとして最も使用されている
BINDによるゾーンファイルの書き方を解説します。


       

 ※ ゾーンファイルは省略ルールに従って省略表記可能ですが、省略しすぎると理解しにくいので上記の書き方が一般的です。

項番 項目 説明
@ $TTL  DNSサーバがゾーンファイルのデータをキャッシュする時間を指定(デフォルト:86400秒)
A $ORIGIN

 対象ドメイン名を補う。例えば「 IN NS ns1.infraeye.com. 」を IN NS ns1 のように省略可。

B @

 ドメイン名を表す。このゾーンファイルでは @ は「 infraeye.com 」と同じ意味をあらわす。

C ns1.infraeye.com.  このゾーンファイルのデータを持つプライマリーDNSサーバ
D postmaster.infraeye.com.

 このドメインの管理者のメールアドレス。管理者との連絡用に使用。
 「 postmaster.infraeye.com. 」 = 「 postmaster@infraeye.com 」

E Serial ( 2012062501 )

 ゾーンファイルのバージョンを表す数字。管理者が自由に記載する。ゾーンファイル
 更新日+管理番号を表す ( YYYYMMDDNN ) の10桁使用が多い。DNS情報を更新
 する場合、このシリアル番号を現在よりも大きな値として更新される必要がある。
 DNS情報を更新した場合、自動で更新される場合はこの更新値を意識する必要はない。

F Refresh ( 10800秒 )

 セカンダリDNSサーバが、プライマリDNSサーバにゾーン転送後に
 再度ゾーン情報を取得しようと試みるまでの時間

G Retry ( 3600秒 )

 セカンダリDNSサーバが、Refreshでゾーン情報の更新が失敗した場合に
 再度Refreshを試みるまでの時間。

H EXPIRE ( 604800秒 )

 セカンダリDNSサーバが、ゾーン情報のリフレッシュができない状態が続いた場合、
 セカンダリDNSサーバが持っているゾーン情報をどれだけの時間利用するかの時間。

I Minumum TTL (86400秒)

 存在しないドメイン名のキャッシュを維持する時間。存在しないドメイン名を問い合わせると
 キャッシュサーバは他の正規な情報と同様、この存在しないドメイン情報も指定時間保持する。



 ◆ DNS - リソースレコードの省略表記

 リソースレコードは省略した表記が可能です。そのリソースレコードの省略ルールは以下の通りです。

 @ デフォルトのTTLと同じTTLの場合、TTLの値を省略可能。デフォルトのTTLは「 $TTL 」で指定。
 A 前行と同じラベルで始まる行は、ラベルを省略可能。
 B ORIGINと同じドメインは省略可能。ORIGINの値は「 $ORIGIN 」で指定。

 ※  明示的にORIGINを指定しない場合、そのゾーンファイルのドメイン名が暗黙に指定される。
 ※  ORIGINと同じドメイン名は @ で記載される。 例 - infraeye.com. ⇒ @
 ※  ORIGINの前にホスト名を付加する場合はそのホスト名を記載して最後に「. 」をつけない。例 - www.infraeye.com. ⇒ www
 ⇒  ドメイン名の最後に「. 」をつけるとFQDNと解釈される。「 . 」をつけないと ORIGIN の内容が末尾に付加されることになる。


       


 ◆ DNS - リソースレコードの種類

 リソースレコードは以下のフォーマットであり1行に1つずつ書く必要があります。以下のリソース
 レコードは「Aレコード」と呼ばれるリソースレコードで「ホスト名に対応するIPアドレスの情報」を
 示しています。例えば「 www.infraeye.com. のIPアドレスは 192.168.0.1です。」という情報です。
 「クラス」の項目にはいくつかの種類がありますが IN (= Internet) 以外は基本的に使用されません。

ラベル TTL クラス タイプ リソースデータ
www.infraeye.com. 86400 IN A 192.168.0.1


 主なリソースレコードは以下の通りです。 なお、その他のリソースレコード一覧はこちらで確認できます。


   


レコード種別 レコード種別
(詳細)
意味
SOA Start of Authority


 ゾーンファイルの最初のリソースレコード。以下のDNSサーバの各種管理情報の指定。
 ・ ドメインのDNSサーバ名 ・ ドメイン管理者のメールアドレス ・ シリアル番号
 ・ 更新間隔 ・ 転送再試行時間 ・ レコード有効時間 ・ 否定的キャッシュ有効時間

NS Name Server


 ドメイン名と、そのドメイン名を管理するDNSサーバを対応付けたレコード。
 (例)
infraeye.com. IN NS ns1.infraeye.com.
 → infraeye.com というドメインのDNSサーバは、ns1.infraeye.com であるという意味。

A Address


 ホストのIPアドレスを指定。
 (例)
intra1.infraye.com. IN A 192.168.0.1
 → intra1.infraeye.com のIPアドレスは 192.168.0.1 であるという意味。

PTR Pointer


 IPアドレスに対応するホスト名を指定。(逆引きで使用)
 (例)
192.168.0.1 IN PTR intra1.infraeye.com.
 → 192.168.0.1 のホスト名は intra1.infraeye.com であるという意味。

CNAME Canonical NAME


 ホストの別名を指定。構文は、「 エイリアス名 IN CNAME 本当のホスト名 」 となる。
 (例)
www.infraye.com. IN CNAME intra1.infraeye.com.
 → intra1.infraye.com の別名(エイリアス名)はwww.infraeye.comであるという意味。

MX Mail exchange


 ドメインのメールサーバを指定。
 (例)
infraye.com. IN MX 10 mail1.infraeye.com.
 → 例えば cool@infraeye.com のメールはmail.infraeye.comに転送すれば届くという意味。

TXT text strings


 ホストへのテキスト情報を指定。
 (例)
www.infraye.com. IN TXT "I'm cool"
 → www.infraeye.com ってサイトはクールなサイトという意味。



 ◆ CNAMEについて

 最後にCNAMEについて詳細に解説します。例えばホスト名「 intra1 」ドメイン名「 infraeye.com 」という
 Webサーバがあるとします。イントラネットまたはインターネット接続時にユーザから intra1.infraeye.com
 ではなく www.infraeye.com を指定してそのWebサーバにアクセスしてもらいたい場合、CNAMEレコードで
 別名(エイリアス)を指定することで実現可能 ⇒ 「www.infraeye.com. IN CNAME intra1.infraeye.com.」



DNSとは

ネットワークエンジニアとして

Copyright (C) 2002-2019 ネットワークエンジニアとして All Rights Reserved.