CentOS 7 で BIND を使い、内部ネットワーク向け DNS サーバーを構築する手順です。ここでは内部ゾーンを持ちつつ、外部名前解決は上位 DNS へ forward する構成として整理します。
内部 DNS では、権威 DNS とキャッシュ / フォワーダの役割が混ざりやすくなります。どの名前を自分で管理し、どの名前を外へ問い合わせるのかを分けて考えることが重要です。
コマンドはコピペしやすい形を優先しています。ただし、BIND、OpenLDAP、Samba は既存値との重複や環境差が出やすいため、長大な設定ファイルはバックアップを取り、設定断片として確認して反映します。
この手順は CentOS 7 設定マニュアル の一部として整理しています。
参考書籍
参考書籍
DNS がよくわかる教科書 第 2 版
DNS の基本、名前解決、権威 DNS、キャッシュ DNS、DNSSEC などを体系的に確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。
インストール
yum -y install bind-chrootゾーンファイルディレクトリ
mkdir -p /var/named/myzone
chmod 770 /var/named/myzone
chgrp named /var/named/myzonenamed.conf の設定
内部向けでは、listen、allow-query、forwarders、管理する zone を確認します。named.conf は既存値が多いため、設定断片として整理します。
cp -a /etc/named.conf /etc/named.conf.bak
cat <<'EOF'
# /etc/named.conf の該当項目を以下のように整理する
options {
listen-on port 53 { any; };
allow-query { any; };
version "";
forward only;
forwarders { 10.0.0.1; };
allow-update { none; };
allow-transfer { none; };
notify no;
};
zone "si1230.com" {
type master;
file "myzone/si1230.com.zone";
};
zone "0.0.10.in-addr.arpa" {
type master;
file "myzone/0.0.10.in-addr.arpa";
};
EOFIPv4 のみで起動する設定
cp -a /etc/sysconfig/named /etc/sysconfig/named.bak
cat <<'EOF' >> /etc/sysconfig/named
OPTIONS="-4"
EOF正引きゾーン
cat <<'EOF' > /var/named/myzone/si1230.com.zone
$TTL 172800
@ IN SOA dns.si1230.com. root.si1230.com. (
2019062801
3600
300
360000
86400
)
@ IN NS dns.si1230.com.
@ IN MX 10 mail.si1230.com.
mail IN A 10.0.0.25
dns IN A 10.0.0.53
www IN A 10.0.0.80
EOF逆引きゾーン
cat <<'EOF' > /var/named/myzone/0.0.10.in-addr.arpa
$TTL 172800
@ IN SOA dns.si1230.com. root.si1230.com. (
2019062801
3600
300
360000
86400
)
@ IN NS dns.si1230.com.
25 IN PTR mail.si1230.com.
53 IN PTR dns.si1230.com.
80 IN PTR www.si1230.com.
EOF権限と起動
chmod 640 /var/named/myzone/*
chgrp named /var/named/myzone/*
systemctl enable --now named-chroot.service
systemctl status named-chroot.service確認
named-checkconf /etc/named.conf
named-checkzone si1230.com /var/named/myzone/si1230.com.zone
dig @127.0.0.1 dns.si1230.com A
dig @127.0.0.1 -x 10.0.0.53内部 DNS は便利ですが、問い合わせを受ける範囲、forward 先、内部ゾーンの責務を曖昧にすると障害時の切り分けが難しくなります。内部向けでも、権威として答える名前と転送する名前を分けて確認します。
この手順は CentOS 7 設定マニュアル の一部として整理しています。
CentOS 7 BIND 内部 DNS サーバー構築 – forwarder と内部ゾーンの基本





CentOS8版はこちらです。
https://www.si1230.com/?p=40517