У нас есть два DNS-сервера: один внешний сервер, управляемый нашим интернет-провайдером, и один внутренний сервер, управляемый нами. Я бы хотел, чтобы внутренние запросы для foo.example.com отображались на 192.168.100.5, а внешние запросы продолжали отображаться на 1.2.3.4, поэтому я пытаюсь настроить представление в привязке. К сожалению, связывание не удается, когда я пытаюсь перезагрузить конфигурацию. Я уверен, что мне не хватает чего-то простого, но я не могу понять, что это такое.
options {
directory "/var/cache/bind";
forwarders {
8.8.8.8;
8.8.4.4;
};
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
};
zone "." {
type hint;
file "/etc/bind/db.root";
};
zone "localhost" {
type master;
file "/etc/bind/db.local";
};
zone "127.in-addr.arpa" {
type master;
file "/etc/bind/db.127";
};
zone "0.in-addr.arpa" {
type master;
file "/etc/bind/db.0";
};
zone "255.in-addr.arpa" {
type master;
file "/etc/bind/db.255";
};
view "internal" {
zone "example.com" {
type master;
notify no;
file "/etc/bind/db.example.com";
};
};
zone "example.corp" {
type master;
file "/etc/bind/db.example.corp";
};
zone "100.168.192.in-addr.arpa" {
type master;
notify no;
file "/etc/bind/db.192";
};
Я исключил записи в представлении для разрешить рекурсию и рекурсия в попытке упростить конфигурацию. Если я удалю представление и просто загружу example.com зона напрямую, работает нормально.
Любой совет, что мне может не хватать?
Сначала проверьте свои журналы, но я думаю, вы забыли
acl "lan_hosts" {
192.168.0.0/24; # network address of your local LAN
127.0.0.1; # allow loop back
};
view "internal" {
match-clients { lan_hosts; };
[...]
};
Опубликуйте результаты named
.