有没有办法绑定回答一些查询,但将所有其他查询(同一域的)转发到另一台服务器,如:
example.com A 127.0.0.1
www.example.com A 127.0.0.1
不在此列表中的所有内容(example.com MX、ftp.example.com A 等) - 询问 192.168.0.1(另一个 DNS 服务器)
本质上,我想拦截一些(但不是全部)去往(在本例中)192.168.0.1 的查询并回答它。
example.com A- intercept
www.example.com - intercept
example.com MX - pass trough
ftp.example.com - pass trough
默认情况下,您的 BIND 服务器将使用其中的 DNS 服务器
/etc/resolv.conf
来解析它不具有权威性的记录,但仅适用于 localhost(即其自身)和 localnets(见下文)。您应该确保相应地设置这些。localnets 的定义:
您还可以像这样显式定义全局转发器,记住要保护您的环境:
如果要将特定域的查询定向到特定服务器,可以通过为各个域配置转发器来实现:
进一步阅读:
这对于 BIND 来说是相当棘手的。虽然这不是您所问的,但您是否考虑过使用另一个 DNS 服务器,如 DNSMasq,这类事情相对简单?
我认为您需要子域委派。. 但是,它通常设置为将区域中的特定子域指向另一台服务器。
在您的情况下,将区域提供给您的辅助服务器可能更容易,在其中设置通配符记录,并为指向您的主服务器的特定子域设置子域委派..