在 CentOS 上管理域名的 DNS 记录
一、方案总览与选择
二、自建权威 DNS 服务器 BIND 实操
$TTL 604800
@ IN SOA ns1.example.com. admin.example.com. (
2025040101 ; Serial,每次修改递增
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
@ IN NS ns1.example.com.
ns1 IN A 192.168.1.10
www IN A 192.168.1.10
mail IN A 192.168.1.11
@ IN MX 10 mail.example.com.
_acme-challenge IN TXT "challenge-token"
$TTL 604800
@ IN SOA ns1.example.com. admin.example.com. (
2025040101 3600 1800 604800 86400 )
@ IN NS ns1.example.com.
10 IN PTR ns1.example.com.
10 IN PTR www.example.com.
11 IN PTR mail.example.com.
三、常见记录类型与添加方法
; A 记录
app IN A 192.168.1.12
; AAAA 记录
app IN AAAA 2001:db8::10
; CNAME 记录(别名)
www IN CNAME app.example.com.
; MX 记录(优先级数值越小优先级越高)
@ IN MX 10 mail.example.com.
; TXT 记录(常用于 SPF、DKIM、验证等)
@ IN TXT "v=spf1 mx ~all"
; SRV 记录(服务发现)
_sip._tcp IN SRV 10 5 5060 sipserver.example.com.
四、主从架构与高可用
zone "example.com" IN {
type slave;
masters { 192.168.1.10; };
file "slaves/example.com.zone";
};
zone "1.168.192.in-addr.arpa" IN {
type slave;
masters { 192.168.1.10; };
file "slaves/192.168.1.zone";
};
五、进阶与安全建议
options {
...
forwarders { 8.8.8.8; 1.1.1.1; };
forward only;
};