Single slave zone definition for two view (cache file name problem)

Constantin Stefanov cstef at
Tue Mar 17 14:36:57 UTC 2015


After upgrading from BIND 4.6 to 4.10.2, named requires that different
slave zone have separate file for cache.

With 4.6 I had the following config:


view "internal" {
	match /* match condition */;
	include "common.zones";

view "external" {
	match /* match condition */;
	include "common.zones";


zone "" {
	type slave;
	file "slave/";
	masters {MASTERIP;};

It worked fine with 4.6 (although it was considered incorrect).

After upgrade to 4.10 named started complaining:

common.zones:3: writeable file 'slave/': already in use:

As I understand, now I need to have separate files for different views.

But is there a way to have them automatically assigned and to write
something like:

file "slave/${view_name}"

or any other way to have only one defininition for common zones?

I found 'in-view' option, but again it requires two definitions for
every zone: one with "file" and "masters" directives, and another with
"in-view" option. Moreover, these two definitions must be in different
files, as I have to include one in first view, and another (with
'in-view') in all other views, so I have to keep two separate files
synced with one another.

So is it possible to have only one definition for slave zones that are
shared between different views?

Konstantin Stefanov,

Research Computing Center
M.V Lomonosov Moscow State University

More information about the bind-users mailing list