我在 BIND 中遇到了区域文件问题。
这是区域文件,私人信息被屏蔽了。
$ORIGIN xx.com.
$TTL 60
@ IN SOA ns01.xx.com. hostmaster.xx.com. (
2019040702 ; serial number DATE PLUS SEQUENCENR
3600 ; refresh (15 minutes)
3600 ; retry (10 minutes)
86400 ; expire (1 day)
3600 ; minimum (1 hour)
)
NS ns01.xx.com.
NS ns02.xx.com.
; Mail-servers
@ MX 10 ASPMX.L.GOOGLE.COM.
@ MX 20 ALT1.ASPMX.L.GOOGLE.COM.
@ MX 20 ALT2.ASPMX.L.GOOGLE.COM.
@ MX 30 ASPMX2.GOOGLEMAIL.COM.
@ MX 30 ASPMX3.GOOGLEMAIL.COM.
@ A 1.2.3.4
www A 1.2.3.4
每当我运行 named-checkconf xx.com 时都会出现此错误:
xx.com:1: unknown option '$ORIGIN'
xx.com:5: unknown option 'serial'
xx.com:6: unknown option 'refresh'
xx.com:7: unknown option 'retry'
xx.com:8: unknown option 'expire'
xx.com:9: unknown option 'minimum'
xx.com:15: unknown option 'Mail-servers'
xx.com:24: unexpected token near end of file
然后 BIND 无法启动。
有人发现这个文件有问题吗?
答案1
顾名思义named-checkconf
就是检查绑定配置文件,而不是区域文件!
要检查区域文件,您需要使用named-checkzone
它会让你知道你的区域有问题,因为你的辖区内名称服务器没有A
norAAAA
记录。
PS:不要把事情搞得那么混乱,1.2.3.4
它们xx.com
是目前存在的有效的全球公共标识符,不属于你。混淆有指导原则,请查看 RFC2606 和 RFC5737