[РЕШЕНО]Bind для локальной зоны

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
strom
рядовой
Сообщения: 29
Зарегистрирован: 2010-01-22 17:52:22

[РЕШЕНО]Bind для локальной зоны

Непрочитанное сообщение strom » 2010-01-24 23:32:01

Имеется шлюз на котором установлена FreeBSD. Поднял кеширующий dns. Теперь пытаюсь настроить bind для локальной зоны, которую хочу расположить на этом же шлюзе, как nameservere. Цель - в последствии поднять апач для внутренней сети. Bind продолжает работать, как кеширующий сервер, но отказывается работать с зоной для внутрисети.
конфигурационные файлы привожу ниже

файл resolv.conf - прописывается автоматически, т.к на внешнем интерфейсе, ip получается по dhcp у провайдера

named.conf

Код: Выделить всё

key "rndc-key" {
        algorithm hmac-md5;
        secret "тут реальное число==";
};
controls {
        inet 127.0.0.1 port 953
                allow { 127.0.0.1; } keys { "rndc-key"; };
};

#Nastroyka logov
logging {
        channel syslog {
                syslog daemon;
                severity info;
                print-category yes;
                print-severity yes;
        };
        category xfer-in { syslog; };
        category xfer-out { syslog; };
        category config { syslog; };
        category default { null; };
};

# Cash for internal network
acl "corpnets" { 192.168.0.0/24; 127.0.0.1; };

options {
        directory       "/etc/namedb";
        pid-file        "/var/run/named/pid";
        dump-file       "/var/dump/named_dump.db";
        statistics-file "/var/stats/named.stats";

  forwarders {
                127.0.0.1; 85.12.19.30; 85.12.19.31;
        };

 allow-query { "corpnets"; };

#Zones

zone "." {
        type hint;
        file "named.root";
};

zone "localhost" {
        type master;
        file "master/localhost";
        allow-transfer { 127.0.0.1; 192.168.0.1; };
        
};
zone "0.0.127.IN-ADDR.ARPA" {
        type master;
        file "master/localhost.rev";
        allow-transfer { 127.0.0.1; 192.168.0.1; };
        
};

#Зона локальной сети
zone "host.loc" {
        // тип
        type master;
        // файл с зоной
        file "master/host.loc";
        // сервера на которые можно передавать зону
        allow-transfer { 127.0.0.1; 192.168.0.1; };
        
};
        // обратная зона для локалсети
zone "0.168.192.in-addr.arpa" {
        type master;
        file "master/host.loc.rev";
        allow-transfer { 127.0.0.1; 192.168.0.1; };
        
};
файлы зон

localhost

Код: Выделить всё

$TTL    3600

host.loc        IN      SOA     rout.host.loc. root.rout.host.loc.  (
                                20040603        ; Serial
                                3600    ; Refresh
                                900     ; Retry
                                3600000 ; Expire
                                3600 )  ; Minimum
@       IN      NS      rout.host.loc.
@       IN      A       127.0.0.1
localhost       IN      A       127.0.0.1
localhost.rev

Код: Выделить всё

$TTL    3600

host.loc        IN      SOA     rout.host.loc. root.rout.host.loc.  (
                                20040603        ; Serial
                                3600    ; Refresh
                                900     ; Retry
                                3600000 ; Expire
                                3600 )  ; Minimum
@       IN      NS      rout.host.loc.
1       IN      PTR     localhost.
host.loc

Код: Выделить всё

host.loc        IN      SOA     rout.host.loc. root.rout.host.loc.  (
                                20040603        ; Serial
                                3600    ; Refresh
                                900     ; Retry
                                3600000 ; Expire
                                3600 )  ; Minimum
@       IN      NS      rout.host.loc.
@      MX      10      mx.host.loc.
rout.host.loc   IN      A       192.168.0.1
www     IN      A       192.168.0.1
rout    IN      A       192.168.0.1
mx      IN      A       192.168.0.1
mail    IN      A       192.168.0.1
host.loc.rev

Код: Выделить всё

$TTL    3600

host.loc        IN      SOA     rout.host.loc. root.rout.host.loc.  (
                                20040603        ; Serial
                                3600    ; Refresh
                                900     ; Retry
                                3600000 ; Expire
                                3600 )  ; Minimum
@       IN      NS      rout.host.loc.
1       IN      PTR     rout.host.loc.
Последний раз редактировалось strom 2010-01-26 18:59:57, всего редактировалось 2 раза.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Bind для локальной зоны

Непрочитанное сообщение hizel » 2010-01-25 13:26:16

как отказывается то? :)
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

strom
рядовой
Сообщения: 29
Зарегистрирован: 2010-01-22 17:52:22

Re: Bind для локальной зоны

Непрочитанное сообщение strom » 2010-01-25 16:36:55

Перед тем как протестировать внутреннюю зону intranet -192.168.0.0/24 прописываю в resolv.conf следующее

Код: Выделить всё

search host.loc
nameserver 192.168.0.1
остальные сервера, получаемые при каждой перезагрузке по умолчанию от провайдера - закоментировал.
далее пробую

Код: Выделить всё

[u@h W]$ host -v host.loc
Trying "host.loc"
Host host.loc not found: 2(SERVFAIL)
Received 26 bytes from 192.168.0.1#53 in 0 ms
Вот так ругается. Подскажите чего не так.

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Bind для локальной зоны

Непрочитанное сообщение hizel » 2010-01-25 16:53:49

стрянно, почему не zone "loc" ?

у меня

в /etc/namedb/named.conf

Код: Выделить всё

  zone "local" {
    type master;
    file "internal/local.db";
  };
и в /etc/namedb/internal/local.db

Код: Выделить всё

$TTL 3h
@ SOA @ nobody.local. 2009100801 1d 12h 1w 3h
        ; Serial, Refresh, Retry, Expire, Neg. cache TTL

@       NS      @

; Silence a BIND warning
@       A       192.168.22.193
router  A       192.168.22.193
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

strom
рядовой
Сообщения: 29
Зарегистрирован: 2010-01-22 17:52:22

Re: Bind для локальной зоны

Непрочитанное сообщение strom » 2010-01-25 17:17:53

переписал файлы - получилось
файл named.conf

Код: Выделить всё

#Зона локальной сети
zone "loc" {
        // тип
        type master;
        // файл с зоной
        file "master/loc";
};

zone "0.168.192.in-addr.arpa" {
        type master;
        file "master/loc.rev";
};

файл loc

Код: Выделить всё

$TTL    3600

@ SOA @ nobody.loc.  (
                                20040603        ; Serial
                                3600    ; Refresh
                                900     ; Retry
                                3600000 ; Expire
                                3600 )  ; Minimum
@       NS      @

; Silence a BIND warning
@       A       192.168.0.1
rout  A       192.168.0.1
www    IN      A       192.168.0.1
mx     IN      A       192.168.0.1
mail   IN      A       192.168.0.1

файл loc.rev

Код: Выделить всё

$TTL    3600

@ SOA @ nobody.loc. (
                                20040603        ; Serial
                                3600    ; Refresh
                                900     ; Retry
                                3600000 ; Expire
                                3600 )  ; Minimum
@       IN      NS      rout.loc.
1       IN      PTR     rout.loc.

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Bind для локальной зоны

Непрочитанное сообщение hizel » 2010-01-25 17:19:02

то есть работает? проблема решена?
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

strom
рядовой
Сообщения: 29
Зарегистрирован: 2010-01-22 17:52:22

Re: Bind для локальной зоны

Непрочитанное сообщение strom » 2010-01-25 17:20:18

Выдает следующее... на обратную зону вроде не ругается... а вот на прямую

Код: Выделить всё

[u@h W]$ host -v rout.loc
Trying "rout.loc"
Host rout.loc not found: 2(SERVFAIL)
Received 26 bytes from 192.168.0.1#53 in 1 ms
[u@h W]$ host -v 192.168.0.1
Trying "1.0.168.192.in-addr.arpa"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7297
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;1.0.168.192.in-addr.arpa.      IN      PTR

;; ANSWER SECTION:
1.0.168.192.in-addr.arpa. 3600  IN      PTR     rout.loc.

;; AUTHORITY SECTION:
0.168.192.in-addr.arpa. 3600    IN      NS      rout.loc.

Received 78 bytes from 192.168.0.1#53 in 2 ms

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Bind для локальной зоны

Непрочитанное сообщение hizel » 2010-01-25 17:26:50

так named при внедрении настроек ошибок в лог не дает?
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

strom
рядовой
Сообщения: 29
Зарегистрирован: 2010-01-22 17:52:22

Re: Bind для локальной зоны

Непрочитанное сообщение strom » 2010-01-25 17:31:08

он и до внедрения в log ошибок не давал... сейчас еще раз проверил. Все по прежнему - на прямую зону ругается, в логе все нормально...

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Bind для локальной зоны

Непрочитанное сообщение hizel » 2010-01-25 17:40:42

не вижу где собак зарыт, видимо поможет только включение дебаг лога
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

strom
рядовой
Сообщения: 29
Зарегистрирован: 2010-01-22 17:52:22

Re: Bind для локальной зоны

Непрочитанное сообщение strom » 2010-01-25 18:10:10

с каким значением debug-log named запускать?

_Гагарин_ёпт
проходил мимо

Re: Bind для локальной зоны

Непрочитанное сообщение _Гагарин_ёпт » 2010-01-25 22:18:24

а че параметр listen-on не нужен что ли для авторитетных ДНС серверов?..

покажи:

Код: Выделить всё

sockstat -l | grep named

_Попов_ёпт
проходил мимо

Re: Bind для локальной зоны

Непрочитанное сообщение _Попов_ёпт » 2010-01-25 22:52:38

да, без listen-on пашет... туплю перед сном...

собственно твоя конфигурация, только применительно ко мне:

Код: Выделить всё

options {
          version "version.bind.";
          directory "/etc/namedb";
          pid-file        "/var/run/named/pid";
          dump-file       "/var/dump/named_dump.db";
          statistics-file "/var/stats/named.stats";
          allow-query { 127.0.0.1; 172.16.16/24; };
};

zone "." { type hint; file "named.root"; };

zone "loc" {
        type master;
        file "master/loc";
};

Код: Выделить всё

$TTL    3600

@ SOA @ nobody.loc.  (
                                20040603        ; Serial
                                3600    ; Refresh
                                900     ; Retry
                                3600000 ; Expire
                                3600 )  ; Minimum
@       NS      @

; Silence a BIND warning
@       A       172.16.16.1
rout  A       172.16.16.1
www    IN      A       172.16.16.1
mx     IN      A       172.16.16.1
mail   IN      A       172.16.16.1
дает результаты:

Код: Выделить всё

/home/dm>host -v rout.loc
Trying "rout.loc"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4837
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;rout.loc.                      IN      A

;; ANSWER SECTION:
rout.loc.               3600    IN      A       172.16.16.1

;; AUTHORITY SECTION:
loc.                    3600    IN      NS      loc.

;; ADDITIONAL SECTION:
loc.                    3600    IN      A       172.16.16.1

Received 72 bytes from 127.0.0.1#53 in 6 ms
Trying "rout.loc"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 34761
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;rout.loc.                      IN      AAAA

;; AUTHORITY SECTION:
loc.                    3600    IN      SOA     loc. nobody.loc. 20040603 3600 900 3600000 3600

Received 69 bytes from 127.0.0.1#53 in 3 ms
Trying "rout.loc"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 52600
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;rout.loc.                      IN      MX

;; AUTHORITY SECTION:
loc.                    3600    IN      SOA     loc. nobody.loc. 20040603 3600 900 3600000 3600

Received 69 bytes from 127.0.0.1#53 in 3 ms
в resolv.conf ничего нету абсолютно.

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Bind для локальной зоны

Непрочитанное сообщение hizel » 2010-01-25 23:07:12

а что вы все каку-то друацкую зону loc используете? пользователи линупса что ли? :-)
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

snorlov
подполковник
Сообщения: 3914
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Re: Bind для локальной зоны

Непрочитанное сообщение snorlov » 2010-01-25 23:22:32

Я бы сначало бы проверил права пользователя bind на каталог master и на файлы в нем, затем
добавил бы listen { 192.168.0.1;127.0.01}; пусть bind слушает только внутреннюю сеть ну и локалхост
убрал forwarders и начал бы использовать зону root, все равно значения будут хранится в кеше
в зонах убил бы allow-transfer - нафиг передавать зоны самому себе
В зонах убил бы вообще упоминание про адрес 127.0.0.1

_Менделеев
проходил мимо

Re: Bind для локальной зоны

Непрочитанное сообщение _Менделеев » 2010-01-25 23:23:32

провел чисты эксперимент из локалки. Правда у меня там тока виндовые машины и как там сделать host команду я не в понятиях, зато умею пользоваться nslookup:

Код: Выделить всё

Default Server:  UnKnown
Address:  172.16.16.1

> rout.loc
Server:  UnKnown
Address:  172.16.16.1

Name:    rout.loc
Address:  172.16.16.1

> set type=soa
> rout.loc
Server:  UnKnown
Address:  172.16.16.1

loc
        primary name server = loc
        responsible mail addr = nobody.loc
        serial  = 20040603
        refresh = 3600 (1 hour)
        retry   = 900 (15 mins)
        expire  = 3600000 (41 days 16 hours)
        default TTL = 3600 (1 hour)
> set type=a
> rout.loc
Server:  UnKnown
Address:  172.16.16.1

Name:    rout.loc
Address:  172.16.16.1 
вот, отдает ведь собака все что ни папросишь.

насчет линупса, так ведь эта... я тут причем-та... дядя hizel?
это все он... топикстартёр.

а если по делу, то че-та намучено в named.conf
надо срочно упрощать, ведь у меня-то работаит (описано выше как)

strom
рядовой
Сообщения: 29
Зарегистрирован: 2010-01-22 17:52:22

Re: Bind для локальной зоны

Непрочитанное сообщение strom » 2010-01-25 23:40:03

Похоже я нашел собаку, но пока не совсем понимаю в чем она порылась
на обратную зону все вроде нормально

Код: Выделить всё

[u@h W]$ named-checkzone loc /etc/namedb/master/loc.rev
zone loc/IN: loaded serial 20040603
OK
а вот это выдает на прямую, вот где она порылась, собака эта...

Код: Выделить всё

[u@h W]$ named-checkzone loc /etc/namedb/master/loc
/etc/namedb/master/loc:1: no current owner name
zone loc/IN: loading master file /etc/namedb/master/loc: no owner

google
проходил мимо

Re: Bind для локальной зоны

Непрочитанное сообщение google » 2010-01-25 23:51:43

no current owner name
In your named logs, "no current owner name" means that that zone doesn't have a valid SOA.
Q:
I get a error message like "zone wireless.ietf56.ietf.org/IN: loading master
file primaries/wireless.ietf56.ietf.org: no owner".

A:
This error is produced when a line in the master file contains leading white
space (tab/space) but the is no current record owner name to inherit the
name from. Usually this is the result of putting white space before a
comment. Forgetting the "@" for the SOA record or indenting the master file.