BIND设置root-delegation-only而不带exclude选项时,DNS服务器崩溃

BIND DNS servers crash when setting root-delegation-only without exclude option

本文关键字:DNS 服务器 崩溃 选项 exclude root-delegation-only 设置 BIND      更新时间:2023-10-16

我认为这是BIND的一个bug。它发生在BIND DNS 9.9上。

如果我将没有排除选项的root-delegation-only设置为named.conf,则命名不能启动。

Named.conf例子:

controls {
  inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; };
};
key "rndc-key" {
  algorithm "hmac-md5";
  secret "MTIzNDU2"; 
};
options {
  directory "C:named";
  root-delegation-only;
  #root-delegation-only exclude { "com"; "net"; };
};

运行名为

named.exe -c C:namednamed.conf -g

Named crash with errors:

23-Jul-2015 18:47:22.280 set up managed keys zone for view _default, file 'managed-keys.bind'
23-Jul-2015 18:47:22.280 ..parser.c:1167: REQUIRE(obj == ((void *)0) || obj->type->rep == &cfg_rep_list) failed
23-Jul-2015 18:47:22.280 exiting (due to assertion failure)

如果我添加排除选项,它会工作:

root-delegation-only exclude { "com"; "net"; };

是BIND中的一个bug。这是一个已知的错误,并且已经编写了修复程序,并将包含在BIND的下一个定期发布的版本中(即BIND 9.9.8和BIND 9.10.3)。

4112.   [bug]       Named failed to load when "root-delegation-only"
                    was used without a list of domains to exclude.
                    [RT #39380]

包含变更的开发(beta)版本应该在8月底或9月(2015年)可用,但由于您知道错误号(39380)和变更号(4112),如果您愿意,您可以从ISC的源存储库中检索差异。这里有一个到giweb界面的链接,如果你喜欢的话,也可以使用命令行git工具。