🐧 Linux 総合学習プラットフォーム
サーバ構築 ・ 中級

DNSサーバを立てる(BIND)

名前からIPを「答える側」に回るのがDNSサーバだ。BIND(named)では named.conf に基本設定、ゾーンファイルに「名前→IP」の対応を書く。書いたら named-checkconf と named-checkzone で構文を検査してから起動する。1文字のミスが全体を止めるので、検査の一手間が効く。

これまでは名前を「問い合わせる側」だった。今度は「答える側」に回る。自分のドメインの名前とIPの対応を、世界に向けて答えるのがDNSサーバだ。

🗂 named.conf とゾーンファイル

代表的なDNSサーバ BIND は、named というデーモンで動く。全体の振る舞いは named.conf に、各ドメインの「名前→IP」の対応はゾーンファイルに分けて書く。この2つの役割分担を押さえるのが第一歩だ。

問い合わせwww.example.jp?namedゾーンファイルwww A 172.16.1.5
ゾーンにはレコードを書く。A(名前→IPv4)、AAAA(→IPv6)、MX(メール宛先)、CNAME(別名)、NS(担当DNS)など。

✅ 起動前に必ず検査

DNSは1文字の書き間違いで全体が応答しなくなる。だから起動前の検査が命綱だ。named-checkconf で設定を、named-checkzone でゾーンを確認し、問題がなければ systemctl start named で起動する。

💡
ポイントゾーンを変更したら、SOAレコードのシリアル番号を必ず増やす。これを忘れると、他のDNSが「更新なし」と判断して古い情報を配り続ける。
コツ自分のDNSに直接聞いて確認するには dig @localhost www.example.jp。期待通りのIPが返るかをその場で検証できる。

この項目に出てくる用語

ゾーンファイルぞーんふぁいる
あるドメインの「名前→IP」対応を書いた定義ファイル。DNSサーバが応答の元にする。
BIND / namedばいんど
最も普及しているDNSサーバソフト。デーモン名は named。

関連コマンド

named-checkconfnamed-checkzonesystemctl

▶ 学習アプリでこの続きを学ぶ・演習する