我将如何使用绑定中的BIND“视图”function ? 我似乎无法在网上find任何关于此的东西。
解除绑定不支持水平分割DNS。 它主要是一个recursion和caching域名服务器,并且对服务权威性答案的支持有限。
在某些情况下,你可以通过它的存根区域function和/或其本地数据选项来伪造它,但是对于正常场景,你可以使用split-horizon DNS(具有RFC1918地址的networking),Unbound没有任何内容。
如果你真的想坚持Unbound,可以通过在不同的ip地址上运行Unbound的多个实例,然后使用iptables根据源地址转发来伪造它。
以192.0.2.1作为您的服务器的IP,198.51.100.0/24作为您想要呈现不同视图的范围,您可以执行如下操作:
在iptables中把下面的规则(未经testing,但应该工作):
iptables -A PREROUTING -s 198.51.100.0/24 -p udp -m udp --dport 53 -j DNAT --to 127.0.0.1:53 iptables -A PREROUTING -s 198.51.100.0/24 -p tcp -m tcp --dport 53 -j DNAT --to 127.0.0.1:53
不过,我不build议这样做,因为绑定是这个工作的更好的工具,像上面这样的黑客成为一个痛苦,进一步pipe理下行。
不,Unbound是“只”parsing器。 尝试使用权威的名称服务器软件。
维基百科有一个明确提到“分裂视界”的特征matrix:
http://en.wikipedia.org/wiki/Comparison_of_DNS_server_software#Feature_matrix