我正在尝试在 Ubuntu 11.04 上设置 DNS 服务器。我想要拥有此 DNS 服务器的主要原因是,这样我就可以在代码生效之前创建一个专门用于测试的服务器。创建此 DNS 服务器将允许代码在我们实验室中已更改其 resolv.conf 文件的计算机上的此测试服务器上运行。我的代码中有很多直接链接,因此这会使事情变得更容易。我已经阅读了文档,我相信我已经正确设置了区域,但我认为我没有正确设置 db.example.com 文件。(我在这里使用自己的网站,而不是 example.com)这是我所拥有的:此外,存在 roots.example.com(再次插入一个网站代替 example.com),但我不确定是否存在像文档中那样的 root.roots.example.com。
@ IN SOA roots.example.com.root.root.example.com.(
@ IN NS roots.example.com. roots.example.com IN A 0.0.0.0(IP 地址)
提前致谢!
答案1
root.roots.example.com 只是表达电子邮件地址的 DNS 方式[电子邮件保护],它不是机器名。
您可以使用 dig 实用程序来检查您的 DNS 服务器向世界告诉了什么,例如“dig -ta roots.example.com @0.0.0.0”(插入您的 DNS 服务器的 IP 地址而不是 0.0.0.0)应该会返回您服务器的 IP 地址。
如果你正在做的是屏蔽现有域(我猜是这样),你必须确保你正在测试的机器具有仅有的resolv.conf 中的测试 DNS 服务器。还要确保在测试之前清除它们的 DNS 缓存,否则您可能拥有在更改 resolv.conf 之前机器查找的(真实)信息,从而掩盖了您的测试地址。
大多数查找错误都与配置文件中的语法错误、时间(TTL 和负 TTL)或缺少尾随点(为您提供有趣的内容,如 roots.example.com.example.com :) 有关。检查并仔细检查您的日志文件。