绑定,视图可能性的共同区域

绑定,视图可能性的共同区域

你好,我已经创建了 3 个绑定服务器用于公共解析(权威)。

我有 3 个观点:

  • 世界(具有 Any acl)
  • 东亚(具有 GeoIP acl)
  • 内部(用于内部 IP)

我想为我的所有视图共享一些公共区域,例如,我想在除域 c 之外的所有视图上解析域 a.com 和域 b.com。

到目前为止我尝试了以下两种方法:

第一种方法

我试图做一个包含所有视图的公共区域会议。但它似乎不起作用,我尝试了这个解决方案:全局区域在所有视图中可见

但得到了:

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

该问题仅发生在从属设备上,因此似乎已被弃用。

参见此网站:全局区域在所有视图中可见

第二种方法

我看到的另一个解决方案是使用 in-view 语句。我尝试过这个:

view "common" {
    match-clients { none; };
    include "/etc/bind/common-view.conf";
};

view "world" {
    match-clients { !key internal-key; !key east-asia-key; world-client; };
    allow-transfer { !key internal-key; !key east-asia-key; srv1; srv2; };

   in-view "common";
   include "/etc/bind/named.conf.default-zones";
   include "/etc/bind/master.conf";
};

不幸的是它似乎也不起作用:

Nov 8 17:48:50 bind1 named[19725]: /etc/bind/master.internal.conf:4: unknown option 'in-view' Nov 8 17:48:50 bind1 named[19725]: /etc/bind/master.asia.conf:4: unknown option 'in-view' Nov 8 17:48:50 bind1 named[19725]: /etc/bind/named.conf:16: unknown option 'in-view'

我知道我可以在所有区域上执行这样的视图内语句,但如果我需要添加/删除/更新区域,则必须对每个视图文件进行 3 次修改,这将非常麻烦。

view "mordor" {
    ...
    zone example.com {
       ...
    };
};


view "gondor" {
    ...
    zone example.com {
       in-view "mordor";
     };
};

view "khand" {
     ...
     zone example.com {
         in-view "mordor";
     };
};

这是我的命名 -V 输出:

root@bind1:~# named -V

BIND 9.11.4-P2-3~bpo9+1-Debian (Extended Support Version) <id:7107deb>

running on Linux x86_64 4.9.0-8-amd64 #1 SMP Debian 4.9.110-3+deb9u4 (2018-08-21)

built by make with '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=/usr/include' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-silent-rules' '--libdir=/usr/lib/x86_64-linux-gnu' '--libexecdir=/usr/lib/x86_64-linux-gnu' '--disable-maintainer-mode' '--disable-dependency-tracking' '--libdir=/usr/lib/x86_64-linux-gnu' '--sysconfdir=/etc/bind' '--with-python=python3' '--localstatedir=/' '--enable-threads' '--enable-largefile' '--with-libtool' '--enable-shared' '--enable-static' '--with-gost=no' '--with-openssl=/usr' '--with-gssapi=/usr' '--with-libidn2' '--with-libjson=/usr' '--with-lmdb=/usr' '--with-gnu-ld' '--with-geoip=/usr' '--with-atf=no' '--enable-ipv6' '--enable-rrl' '--enable-filter-aaaa' '--enable-native-pkcs11' '--with-pkcs11=/usr/lib/softhsm/libsofthsm2.so' '--with-randomdev=/dev/urandom' '--enable-dnstap' '--with-eddsa=no' 'build_alias=x86_64-linux-gnu' 'CFLAGS=-g -O2 -fdebug-prefix-map=/build/bind9-jvc86P/bind9-9.11.4.P2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -fno-strict-aliasing -fno-delete-null-pointer-checks -DNO_VERSION_DATE -DDIG_SIGCHASE' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2'

先感谢您。

答案1

我彻底改变了我的配置结构。有了这个 KB: https://kb.isc.org/docs/aa-00851 示例 4 - 现在具有共享区域

相关内容