~BINDによるDNS正引き・逆引きゾーンの設定・確認~
目次
🔰 はじめに
DNSサーバーを正しく機能させるには、ゾーンファイルの作成と管理が欠かせません。
この記事では、BINDを用いたゾーンファイルの基本構造から、正引き・逆引きゾーンの作成、ルートヒントファイルやゾーンの委任設定までを丁寧に解説します。
📘 1. ゾーンファイルとは?
ゾーンファイルとは、DNSで管理するドメイン(ゾーン)の名前解決情報を記述したテキストファイルです。
- 正引きゾーン:ホスト名 → IPアドレス
- 逆引きゾーン:IPアドレス → ホスト名
ゾーンファイルの主なディレクトリ
/etc/named.conf ← BIND設定ファイル
/var/named/ ← ゾーンファイルの格納先
📄 2. 正引きゾーンの構成例(example.com)
$TTL 86400
@ IN SOA ns1.example.com. admin.example.com. (
2025051301 ; シリアル
3600 ; リフレッシュ間隔
1800 ; リトライ間隔
604800 ; 有効期限
86400 ) ; TTL
IN NS ns1.example.com.
ns1 IN A 192.0.2.1
www IN A 192.0.2.100
mail IN A 192.0.2.101
@ IN MX 10 mail.example.com.
主なリソースレコードの種類
| タイプ | 意味 | 例 |
|---|---|---|
SOA | ゾーンの管理情報 | 必須 |
NS | ネームサーバー情報 | NS ns1.example.com. |
A | IPv4アドレス変換 | www IN A 192.0.2.100 |
MX | メールサーバー指定 | MX 10 mail.example.com. |
🔁 3. 逆引きゾーンの構成例(192.0.2.0/24)
$TTL 86400
@ IN SOA ns1.example.com. admin.example.com. (
2025051301 ; Serial
3600
1800
604800
86400 )
IN NS ns1.example.com.
1 IN PTR ns1.example.com.
100 IN PTR www.example.com.
101 IN PTR mail.example.com.
- ゾーン名:
2.0.192.in-addr.arpa - PTRレコードを使用してIPアドレスからドメイン名を解決します。
🔍 4. ゾーンファイルの確認と検証
| コマンド | 説明 |
|---|---|
named-checkzone | ゾーンファイルの文法チェック |
named-compilezone | ゾーンファイルをバイナリ形式に変換し、チェックを強化 |
使用例:
named-checkzone example.com /var/named/example.com.zone
named-compilezone -z -o /dev/null example.com /var/named/example.com.zone
🌐 5. ゾーン情報をDNSに追加する
named.confへの追記例
zone "example.com" IN {
type master;
file "example.com.zone";
};
zone "2.0.192.in-addr.arpa" IN {
type master;
file "example.com.rev";
};
設定を反映させる
rndc reload
📡 6. ルートヒントファイルの概要
ルートヒントファイル(例:named.ca)は、インターネットのルートネームサーバーの情報を保持するファイルです。主に再帰サーバーやキャッシュDNSで利用されます。
配置例:/var/named/named.ca
取得元:https://www.internic.net/domain/named.root
🔗 7. ゾーンの委任(サブドメインの委任)
例:sub.example.com を別のDNSへ委任
sub IN NS ns1.sub.example.com.
ns1.sub IN A 203.0.113.10
このように記述することで、sub.example.com に関する名前解決は、別のネームサーバーに委任されます。
✅ まとめ
| 機能 | ポイント |
|---|---|
| 正引き・逆引きゾーンの作成 | AレコードとPTRレコードの記述が基本 |
| ゾーンファイルの検証 | named-checkzoneは必須の手順 |
| 委任設定の追加 | NSレコードとAレコードで指定 |
コメント