У меня есть установка BIND 9 с двумя серверами. Сервер A («главный» сервер) правильно настроен с двумя представлениями: одно для локальных DNS-клиентов (позволяющее рекурсивный поиск для неавторизованных доменов) и одно представление для остального мира, разрешающее только запросы для локальных авторитетных доменов.
Я хочу настроить второй сервер (назовем этот сервер B или «подчиненный» сервер) аналогичным образом. К сожалению, это не работает должным образом. После включения любое уведомление от сервера A будет правильно обновлять / передавать соответствующую зону, но только «защищенное» представление будет обслуживать обновленную информацию. «Внешний» вид на сервере B по-прежнему возвращает «старую» информацию, пока сервер не будет перезапущен.
начиная с привязки 9.3, вы можете связывать представления с помощью TSIG.
Взгляните сюда: Как разделить динамическую зону между несколькими представлениями?
Один из приемов здесь - убедиться, что две зоны переходят из правильных представлений. Если у вас есть зона «example.com» как во внутреннем, так и во внешнем представлении, сообщите серверам о необходимости передачи с внутреннего и внешнего IP-адресов в качестве главных (на подчиненных устройствах), выбирая правильный внутренний / внешний для каждого.
Вам также может потребоваться явное указание BIND «также уведомлять» представления подчиненного устройства для каждой зоны.
Bind 9.10 имеет новый in-view
zone, чтобы сказать, что «эта зона, которую я определяю в этом представлении, на самом деле является той же зоной, что и та, которую я ранее определил в этом другом представлении». Это будет держать Bind в курсе, что зоны не являются отдельными зонами, а в действительности являются одной и той же зоной.
У меня была похожая проблема. В соответствии с эта страница из базы знаний ISC вам нужно различать представления, используя общий ключ. По крайней мере, это был единственный способ заставить его работать, и теперь он работает безупречно после того, как я сначала потратил несколько часов на другие методы.
BIND 9.9.5.