17.2.2.2. 一般的なリソースレコード
以下のリソースレコードは一般的にゾーンファイル内で使用されます。
- A
- Address レコードは、名前に割り当てる IP アドレスを指定します。以下の形式を取ります。
hostname IN A IP-address
hostname の値ない場合、レコードは最後に指定された hostname を指します。例17.10 A リソースレコードの使用
server1 IN A 10.0.1.3 IN A 10.0.1.5
- CNAME
- Canonical Name (別名) レコードはある名前を別の名前にマッピングします。このため、このタイプのレコードは、エイリアスレコードと呼ばれることもあります。以下の形式を取ります。
alias-name IN CNAME real-name
CNAME レコードは Web サーバー用のwww
のように、共通の命名基準を使用するサービスを指すために最も一般的に使用されます。しかし、それらの使用については複数の制限があります。- CNAME レコードは他の CNAME レコードを指してはいけません。これは主に無限のループの可能性を避けるためです。
- CNAME レコードには、他のリソースレコードタイプ(A、NS、pid など)を含めないでください。ゾーンが署名されている場合、唯一の例外は DNSSEC 関連のレコード(RRSIG、NSEC など)です。
- ホストの完全修飾ドメイン名(FQDN)をポイントする他のリソースレコード(NS、pid、PTR)は CNAME レコードを参照できません。
例17.11「CNAME リソースレコードの使用」 では、A レコードはホスト名を IP アドレスにバインドしますが、CNAME レコードは一般的に使用されるwww
ホスト名をその IP アドレスに指定します。例17.11 CNAME リソースレコードの使用
server1 IN A 10.0.1.5 www IN CNAME server1
- MX
- Mail Exchange レコードは、このゾーンで制御されている特定のネームスペースに送信されるメールの行き先を指定します。以下の形式を取ります。
IN MX preference-value email-server-name
email-server-name は完全修飾型ドメイン名 (FQDN) です。preference-value によってネームスペースのメールサーバーの数値ランキングが可能になり、一部のメールシステムに他のシステムよりも優先度を与えます。最小の preference-value を持つ MX リソースレコードが他よりも優先されます。しかし複数メールサーバーが同じ値を持つ可能性があり、その場合はメールトラフィックをサーバー間で均等に分配することになります。例17.12「リソースレコードの使用」では、example.com
ドメイン宛のメール受信時には最初のmail.example.com
メールサーバーがmail2.example.com
メールサーバーよりも優先されます。例17.12 リソースレコードの使用
example.com. IN MX 10 mail.example.com. IN MX 20 mail2.example.com.
- NS
- Nameserver レコードはある特定のゾーン用に正当なネームサーバーを表明します。以下の形式を取ります。
IN NS nameserver-name
nameserver-name は完全修飾型ドメイン名 (FQDN) である必要があります。ドメインに対して 2 つのネームサーバーが正当だとして一覧表示されている時には、これらのネームサーバーがセカンダリーネームサーバーであるか、またはその 1 つがプライマリーサーバーであるかどうかは重要でありません。両方とも正当と考慮されます。例17.13 NS リソースレコードの使用
IN NS dns1.example.com. IN NS dns2.example.com.
- PTR
- Pointer レコードはネームスペースの別の部分を指します。以下の形式を取ります。
last-IP-digit IN PTR FQDN-of-system
last-IP-digit ディレクティブは、IP アドレスの最後の番号で、FQDN-of-system は完全修飾ドメイン名(FQDN)です。 - SOA
- Start of Authority レコードはネームスペースについての信頼できる重要な情報をネームサーバーに表明します。ディレクティブの後に配置されていて、ゾーンファイルでは最初のリソースレコードです。以下の形式を取ります。
@ IN SOA primary-name-server hostmaster-email ( serial-number time-to-refresh time-to-retry time-to-expire minimum-TTL )
ディレクティブは以下の通りです。@
シンボルは $ORIGIN ディレクティブ (または$ORIGIN ディレクティブがセットされていない場合は、ゾーン名) をこのSOA リソースレコードで定義されたネームスペースとして配置します。- primary-name-server ディレクティブは、このドメインの正式なプライマリーネームサーバーのホスト名です。
- hostmaster-email ディレクティブは、ネームスペースに関して連絡する相手のメールです。
- serial-number ディレクティブは、
named
サービスがゾーンを再ロードする時間であることを示すためにゾーンファイルが変更される度に増加する数値です。 - time-to-refresh ディレクティブは、ゾーンに対して変更がなされたかどうかをプライマリーネームサーバーに尋ねるまで待機する時間の長さを決定するためにセカンダリーネームサーバーが使用する数値です。
- time-to-retry ディレクティブは、プライマリーネームサーバーが応答しない事態にリフレッシュ要求を出すまで待機する時間の長さを決定するためにセカンダリーネームサーバーによって使用される数値です。time-to-expire ディレクティブ内で指定された時間が経過するまでに、プライマリーネームサーバーがリフレッシュ要求に応答しない場合は、セカンダリーサーバーはそのネームスペースに関する要求での権威としての応答を停止します。
- BIND 4 と 8 では、minimum-TTL ディレクティブは他のネームサーバーがゾーンの情報をキャッシュ化する時間の長さになります。BIND 9 では、これは否定的な回答がキャッシュ化される時間の長さを定義します。ネガティブな応答のキャッシュは最大 3 時間(つまり
3H
)に設定できます。
BIND の設定時には、すべての時間は秒で指定されます。しかし、秒以外の時間単位を指定するのに短縮形を使用することができます。たとえば、分 (M
)、時間 (H
)、日 (D
)、および週 (W
) です。表17.6「秒表示とその他の時間単位」は、秒単位で、同等の時間 (秒単位) を別の形式で示しています。表17.6 秒表示とその他の時間単位 秒 他の時間単位 60 1M
1800 30M
3600 1H
10800 3H
21600 6H
43200 12H
86400 1D
259200 3D
604800 1W
31536000 365D
例17.14 SOA リソースレコードの使用
@ IN SOA dns1.example.com. hostmaster.example.com. ( 2001062501 ; serial 21600 ; refresh after 6 hours 3600 ; retry after 1 hour 604800 ; expire after 1 week 86400 ) ; minimum TTL of 1 day