Всем привет.
Столкнулся с такой ситуацией, что клиенты в локальной сети не могут получить обратную зону от DNS сервера.
Схема такая, у нас 4 DNS сервера, на первых двух хранятся внешние зоны + зона dmz. masterNetDNS+slaveNetDNS
На вторых двух хранятся зоны локальной сети. masterLanDNS+slaveLanDNS
У последних двух серверов в опции forwards стоят первые два сервера (внешние DNS) для резолва внешних зон и интернета, конечно же.
В чем кроется проблема, в том, что для внутренней сети нужно резолвить сервера с dmz.
При обращении клиента к серверам из dmz по DNS имени, запрос проходит хорошо, а вот если они пытаются обратиться по обратной зоне, то показывает большой и толстый.
Вывод nslookup c клиента (моего ПК) по DNS имени:
nslookup www
Server: UnKnown
Address: <masterLanDNSip>
Name: www.dmz
Address: <wwwip>
Aliases: <alias>
Вывод nslookup с клиента (моего ПК) по IP:
nslookup <wwwip>
Server: UnKnown
Address: <masterLanDNSip>
*** UnKnown can't find <wwwip>: Non-existent domain
То есть, master DNS локальной сети отлично отвечает на запрос по прямой зоне, но по обратной зоне отвечать не хочет.
Проблема исчезает если слэйвом слить зону с master DNS внешних сетей на master DNS локальной сети.
Но я не понимаю, почему он на прямую зону отвечает, а на обратную нет.
Конфиг на Master DNS внешних зон:
options {
directory<->"/etc/namedb";
pid-file<-->"/var/run/namedb/pid";
dump-file<->"/var/dump/named_dump";
statistics-file<--->"/var/stats/named.stats";
check-names master ignore;
listen-on<->{ 127.0.0.1; outip; masterNetDNSip; };
version<--->"saddns1";
forwarders<>{ outDNSip; 8.8.8.8; };
also-notify>{ slaveNetDNSip; masterLanDNSip; };
allow-transfer { slaveNetDNSip; masterLanDNSip; };
allow-query { any; };
};
view "internal"
{
match-clients { slaveNetDNSip; masterLanDNSip; corpnets };
allow-recursion { slaveNetDNSip; masterLanDNSip; corpnets; };
disable-empty-zone yes;
....
zone "."
{
<------>type hint;
<------>file "named.root";
};
....
zone "0.0.127.in-addr.arpa"
{
<------>type master;
<------>file "master/localhost.rev";
};
....
<------>zone "dmz"
{
<------>type master;
<------>file "master/dmz.fwd";
<------>notify yes;
<------>also-notify { slaveNetDNSip; masterLanDNSip; };
<------>allow-transfer { slaveNetDNSip; masterLanDNSip; corpnets; };
<------>allow-query { any; };
};
<------>zone "xxx.xxx.xxx.in-addr.arpa"
{
<------>type master;
<------>file "master/dmz.rev";
<------>notify yes;
<------>also-notify { slaveNetDNSip; masterLanDNSip; };
<------>allow-transfer { slaveNetDNSip; masterLanDNSip; corpnets; };
<------>allow-query { any; };
};
Конфиг на Master DNS локальной сети:
options {
directory<->"/etc/namedb";
pid-file<-->"/var/run/named/pid";
dump-file<->"/var/dump/named_dump.db";
statistics-file<--->"/var/stats/named.stats";
listen-on<->{ 127.0.0.1; masterLanDNSip; };
version<--->"Windows 3.11 :) ";
forwarders >{ masterNetDNSip; slaveNetDNSip; };
allow-recursion<--->{ corpnets; };
recursion yes;
allow-query><------>{ any; };
query-source address * port 53;
};
Вывод nslookup c masterLanDNS сервера:
root@masterLanDNS:/etc/namedb# nslookup <wwwip> <masterLanDNSip>
Server: <masterLanDNSip>
Address: <masterLanDNSip>#53
** server can't find xxx.xxx.xxx.xxx.in-addr.arpa.: NXDOMAIN
Кто что подскажет?