![PowerDNS 第二种观点](https://linux22.com/image/685465/PowerDNS%20%E7%AC%AC%E4%BA%8C%E7%A7%8D%E8%A7%82%E7%82%B9.png)
我使用 bind9,其中我配置了两个视图:对于我的本地网络,我有一组内部 ip 地址,对于所有其他网络,我有第二组外部 ip 地址。
来自我的named.conf的示例:
acl "internal" { 172.16.0.0/16; };
view "internal" {
match-clients {"internal";};
recursion yes;
allow-recursion {172.16.0.0/16; };
zone "example.ru" {
type master;
file "VIEW/example.ru.int";
};
zone "jira.example.ru" {
type master;
file "VIEW/jira.example.ru.int";
};
include "zones.conf";
};
view "external" {
match-clients {"any";};
recursion no;
zone "example.ru" {
type master;
file "VIEW/example.ru.ext";
};
zone "jira.example.ru" {
type master;
file "VIEW/jira.example.ru.ext";
};
include "zones.conf";
};
现在,我想将所有区域迁移到 PowerDNS,但我需要保留第二个视图。我找不到如何配置它。
答案1
PowerDNS 服务器不支持 BIND9 样式的 DNS“视图”。虽然可以使用 geobackend 来提供部分功能,但通常建议在域级别拆分内部和外部 DNS 资源记录。
Lua 脚本可以在递归器和/或服务器上使用来解决这些限制,因为查询的源 IP 暴露给 Lua 代码,但您必须在那里编写和维护自己的代码。