本文記錄在 CentOS 7 環境下使用 BIND(named)部署 DNS 服務的完整流程,包含正向解析多域名、反向解析區域建立、區域檔案編寫與服務驗證,適合作為內部網路名稱解析的參考範本。
yum -y install bind bind-chroot bind-libs bind-utils caching-nameserver
cd /var/named/chroot/etc/
cp -p named.caching-nameserver.conf named.conf
在 options 區塊指定工作目錄,新增三個區域:兩個正向、一個反向。
options {
directory "/var/named/";
};
zone "test.com" IN {
type master;
file "test.com.zone";
};
zone "linux.com" IN {
type master;
file "linux.com.zone";
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "192.168.1.zone";
allow-update { none; };
};
cd /var/named/chroot/var/named/
cp -p localdomain.zone test.com.zone
cp -p localdomain.zone linux.com.zone
cp -p named.local 192.168.1.zone
$TTL 86400
@ IN SOA @ root (
42 ; serial
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS @
IN A 127.0.0.1
IN AAAA ::1
wwwtest IN A 192.168.1.122
dnstest IN A 192.168.1.133
mytest3 IN A 192.168.1.144
$TTL 86400
@ IN SOA @ root (
42
3H
15M
1W
1D )
IN NS @
IN A 127.0.0.1
IN AAAA ::1
wwwtest IN A 192.168.1.123
dnstest IN A 192.168.1.134
mytest3 IN A 192.168.1.145
$TTL 86400
@ IN SOA @ root (
42
3H
15M
1W
1D )
IN NS @
IN A 127.0.0.1
IN AAAA ::1
123 IN PTR wwwtest
134 IN PTR dnstest
145 IN PTR mytest3
說明:反向區域使用 PTR 記錄,最後一欄為主機名(需為 FQDN 或相對名稱),IP 最後一段 123 對應 192.168.1.123。
service named restart
# 或 systemctl restart named
nslookup wwwtest.test.com
nslookup 192.168.1.123
dig @localhost test.com ANY
dig -x 192.168.1.123 @localhost
/var/named/chroot/var/named/ 檔案標籤為 named_zone_t(restorecon -Rv /var/named)。firewall-cmd --add-service=dns --permanent)。/var/named/chroot,配置檔路徑皆相對於此。本範例展示了單台 DNS 伺服器同時掌管多個正向域名與一個反向區域的典型配置。實際生產環境建議部署主從架構、啟用 TSIG 加密區域傳送、限制遞迴查詢來源,並配合監控系統定期檢查解析正確性。