出于某种原因,bind9 似乎会路由通配符 DNS,即使它们没有在任何地方定义?
anyrandomstring.domain.com
即使没有在任何地方明确定义,也可以访问域的路由?在以下文件中的任何地方都没有定义通配符:/var/cache/bind/
我sudo service bind9 reload
已经打了好几次字了。
有任何想法吗?
更新:也尝试使用 rndc 更新 2:运行sudo service bind9 stop
,然后访问一个随机子域,它被路由了
答案1
如果没有明确告知 bind 生成通配符回复,则它不太可能生成通配符回复。我最好的猜测是,你配置了一个服务器(或一个 bind 实例)并查询另一个。
首先确保您确实停止了绑定 - sudo pgrep named
- 应该不会返回任何内容。然后尝试本地查找 -dig @localhost anyrandomstring.example.com
如果它生成通配符回复,则区域文件中肯定有通配符 - 重新检查实际使用了哪个 named.conf 并检查实际使用了哪个区域文件。
如果在本地主机上没有通配符,但在其他查询中仍然有通配符 - 请查看哪些名称服务器可以回答您的域名 -dig example.com NS
然后查询每个名称服务器dig @nsN.example.com anyrandomstring.example.com
这应该能让你找到问题的根源。
答案2
如果你的测试客户端是 Linux,请检查/etc/resolv.conf指向正确的 DNS 服务器。如果您从 DNS 框进行测试,则该文件中唯一的 DNS 服务器应该是127.0.0.1。