Em uma rede em que um dos servidores de nomes oficiais fica na borda da rede interna, eu uso bind
views e a $INCLUDE
directive:
mydomain-global.zone
:
@ IN SOA ns1 hostmaster ( 12345; 1D; 2M; 1M; 3H )
IN NS ns1
IN NS ns2
IN MX 10 mail
www IN A 1.2.3.4
other-public-host IN A 1.2.3.5
mydomain-internal.zone
:
$INCLUDE mydomain-global.zone
an-internal-record IN A 10.20.30.40
_kerberos IN SRV 0 0 88 dir
As zonas são escolhidas com base nas definições de exibição:
view "internal" {
match-clients { 10.0.0.0/8; };
zone "mydomain" {
type master;
file "mydomain-internal.zone";
};
include "named.conf.internalzones";
}
view "global" {
match-clients { any; };
zone "mydomain" {
type master;
file "mydomain-global.zone";
};
Para poder atribuir um registro a destinos diferentes para consultas internas / externas, adicione mais dois fragmentos de zona e $INCLUDE
na parte inferior de mydomain-(internal|global).zone
.