DNS 服務基礎概念
- Master DNS:主權威服務器,持有區域數據文件
- Slave DNS:從服務器,自動同步 Master 區域數據
- Cache-only:僅遞歸查詢並緩存結果,無區域權威
環境與軟體
- OS:RHEL 5
- BIND:bind-9.3.4(系統自帶)
- 所需套件:bind、bind-utils、bind-chroot、bind-libs、caching-nameserver、ypbind
安裝 BIND
# RPM 方式
rpm -ivh bind-*.rpm bind-utils-*.rpm bind-chroot-*.rpm caching-nameserver-*.rpm
# 或 YUM 自動解決依賴
yum install bind caching-nameserver
RHEL 5 chroot 環境目錄結構
- 主配置:
/var/named/chroot/etc/named.conf
- 區域文件:
/var/named/chroot/var/named/
- 運行目錄:
/var/named/chroot/var/run/named/
配置 named.conf
cd /var/named/chroot/etc
cp named.rfc1912.zones named.conf
chown root:named named.conf
vi named.conf
# 關鍵段落:
options {
directory "/var/named";
};
zone "ixdba.net" IN {
type master;
file "ixdba.net";
allow-update { none; };
};
zone "60.168.192.in-addr.arpa" IN {
type master;
file "60.168.192.zone";
allow-update { none; };
};
建立區域數據文件
cd /var/named/chroot/var/named
cp localhost.zone ixdba.net
cp named.local 60.168.192.zone
chown root:named ixdba.net 60.168.192.zone
正向區域文件範例 (ixdba.net)
$TTL 86400
@ IN SOA ns.ixdba.net. admin.ixdba.net. (
2012031501 ; serial
3600 ; refresh
1800 ; retry
604800 ; expire
86400 ) ; minimum
IN NS ns.ixdba.net.
ns IN A 192.168.60.1
www IN A 192.168.60.10
mail IN A 192.168.60.20
@ IN MX 10 mail.ixdba.net.
反向區域文件範例 (60.168.192.zone)
$TTL 86400
@ IN SOA ns.ixdba.net. admin.ixdba.net. ( ... )
IN NS ns.ixdba.net.
1 IN PTR ns.ixdba.net.
10 IN PTR www.ixdba.net.
20 IN PTR mail.ixdba.net.
啟動與驗證
service named start
chkconfig named on
# 測試
dig @127.0.0.1 www.ixdba.net
nslookup www.ixdba.net 127.0.0.1
常見問題排查
- 權限錯誤:確保
named.conf 與區域文件屬主 root:named
- SELinux:
setsebool -P named_write_master_zones on
- 防火牆開放 UDP/TCP 53 端口