Стоит задача после объединение сетей через vpn объединить DNS зоны этих сетей так чтобы компьютеры из сети .xxx были доступны по именам в сети .a и наоборот. Простое добавление NS серверов другой сети в настройки DHCP не поможет, так как сервера указанные первыми не знают про зоны .a и .xxx, поэтому необходимо создать на DNS серверах .a и .xxx slave зоны и разрешить доступ для внешних DNS серверов
Для начала расширяем ACL:
acl "a_net" { 127.0.0.1; 192.168.0.0/24; 192.168.80.76; };
acl "xxx_net" { 127.0.0.1; 192.168.80.0/24; 192.168.0.78; };
Здесь я добавил в список доступа помимо компьютеров сети .a NS сервер сети .xxx, в сети .xxx нужно сделать тоже самое. Это необходимо для ограничение доступа, пускай только NS сервера могут выполнять запросы друг к другу
Затем добавляем slave зоны (прямую и обратную), для этого в /etc/bind/named.conf.local в сети .a добавляем инструкции
zone "xxx" {
type slave;
masters {192.168.80.76;};
allow-query { any; };
};
zone "80.168.192.in-addr.arpa" {
type slave;
masters {192.168.80.76;};
allow-query { any; };
};
ну и в сети .xxx тоже самое только с учётом зоны и адреса. Перезапускаем bind (sudo rndc reload) и проверяем
$ hostname -d
a
$ nslookup aw.xxx
Server: 192.168.0.78
Address: 192.168.0.78#53
Name: aw.xxx
Address: 192.168.80.79
$ nslookup aw.xxx 192.168.80.76
Server: 192.168.80.76
Address: 192.168.80.76#53
** server can't find aw.xxx.a: REFUSED
nslookup 192.168.80.79
Server: 192.168.0.78
Address: 192.168.0.78#53
79.80.168.192.in-addr.arpa name = aw.
Всё, первая команда показывает собственную зону(домен), вторая проверяет dns имя через NS своей зоны, а третья через NS зоны .xxx. Третья команда, как и положено, возвращает ошибку