Я использую 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, но мне нужно сохранить второе представление. Не могу найти как его настроить.
Сервер PowerDNS не поддерживает «представления» DNS в стиле BIND9. Хотя геобэкэнд может использоваться для обеспечения некоторых своих функций, обычно рекомендуется вместо этого разделить внутренние и внешние записи ресурсов DNS на уровне домена.
Сценарии Lua можно использовать как на рекурсоре, так и на сервере, чтобы обойти эти ограничения, потому что исходный IP-адрес запроса открыт для кода Lua, но вам придется писать и поддерживать свой собственный код там.