我知道关于 Bind 的答案总是很多。但不知为何我不明白我的设置存在什么问题。
这是我的配置
options {
listen-on port 53 { 192.168.159.130; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { any; };
recursion yes; }
zone "example.com" IN {
type master;
file "example.fz";
allow-update { none; }; };
zone "159.168.192.in-addr.arpa" IN {
type master;
file "example.rz";
allow-update { none; };
};
# /var/named/example.fz 文件
$TTL 1D
@ IN SOA @ example.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS ns1.example.com.
IN A 192.168.159.130
ns1 IN A 192.168.159.130
# /var/named/example.rz 文件
$TTL 1D @ IN SOA @ rname.invalid。(0;串行 1D;刷新 1H;重试 1W;过期 3H);最小
IN NS ns1.example.com.
IN A 192.168.159.130
130 IN PTR ns1.example.com.
#/etc/resolv.conf
search example.com
nameserver 192.168.159.130
# 检测结果
[root@localhost named]# named-checkconf /etc/named.conf
[root@localhost named]# named-checkzone example.com /var/named/example.fz
zone example.com/IN: loaded serial 0
OK
[root@localhost named]# named-checkzone example.com /var/named/example.rz
zone example.com/IN: NS 'ns1.example.com' has no address records (A or AAAA)
zone example.com/IN: not loaded due to errors.
nslookup example.com
Server: 192.168.159.130
Address: 192.168.159.130#53
** server can't find example.com.example.com: SERVFAIL
我之前使用过完全相同的设置,我记得效果很好。但现在不行了!希望有人能指出来。
注意:我已重新启动 bind 多次。
答案1
嗯.....您似乎没有配置“提示”区域(即 TLD 的连接粘合剂)。
答案2
解决方案
最后 /var/named/data/named.run 文件向我展示了灯光。这实际上很愚蠢。我的区域文件出现了权限问题
PS:如果你在真实域中执行此操作,则应输入适当的 TTL 和 SOA 值