Страница 1 из 1

свой днс на bind

Добавлено: 2010-11-04 11:21:44
mediamag
Доброго времени суток. Первый раз настраиваю свою днс зону. Решил использовать штатный bind. Но у меня, как мне кажется, немного нестандартная ситуация: Инет у нас от одного провайдера, а доменное имя мы покупаем у другого. Но все же я настроил bind с прямой и обратной зонами, предварительно погуглив и немного подготовившись. Обратная зона не резолвится ни с локалхоста ни с мира ни с локалки. Прямая зона нового поддомена, например ns1.domen.ua с мира тоже не видна (фаервол открыт полностью). Я должен чтото согласовывать с провайдером? Или может я не правильно чтото настроил? В логах все вроде как стартонуло и косяков нет. Вот мои конфиги:

named.conf

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

options {
        // directory задает каталог конфигурации, в котором
        // демон named ищет и хранит файлы DNS.
        // /etc/namedb - это символическая ссылка.

        directory       "/etc/namedb";

        // pid-file - это имя файла, в котором
        // хранится числовой идентификатор
        // основного процесса named.

        pid-file        "/var/run/named/pid";

        // dump-file - это кэш ответов демона named.

        dump-file       "/var/dump/named_dump.db";

        // statistics-file сохраняет статистику и другие
        // сведения о запросах

        statistics-file "/var/stats/named.stats";

        // version of bind is mask ;)

        version         "this is my bind :)";

        // DNS-сервера нашего провайдера
        // если больше одного, то перечисляются так:
        // { 10.0.1.10; 10.10.11.1; }

        forwarders {
            212.109.32.5; 212.109.32.9;
        };

        // IP-адреса интерфейсов сервера, на котором будет запущена служба named

        listen-on {
            127.0.0.1;
            10.0.0.222;
        };

        // Диапазон адресов клиентов, для которых разрешено делать запросы

        allow-recursion {
            127.0.0.1;
            10.0.0.0/24;
        };

recursive-clients 30000;
        };

       // сервера на которые можно передавать зону -
       // например сервера регистратора

       acl "trusted-dns" {
           127.0.0.1;
        };


        logging {
                category lame-servers { null; };
        };

// Корневая зона

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

// Прямая зона localhost

zone "localhost" {
        type master;
        file "master/localhost-forward.db";
};

// Обратная зона localhost

zone "127.in-addr.arpa" {
        type master;
        file "master/localhost-reverse.db";
};

// Моя зона

zone "domen.ua" {
        type master;
        file "master/domen.ua";
        allow-transfer { trusted-dns;};
};

// обратная зона для domen.ua

zone "xx.xx.64.62.in-addr.arpa" {
        type master;
        file "master/xx.xx.64.62.in-addr.arpa";
};
Прямая зона

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

$TTL    3600

@               IN      SOA     domen.ua. admin.domen.ua.  (

                                2010110406      ; Serial
                                3600            ; Refresh
                                900             ; Retry
                                3600000         ; Expire
                                3600 )          ; Minimum

@               IN      NS      ns1.domen.ua.
@               MX      10      mail.domen.ua.
@               IN      A       64.62.xx.xx
ns1             IN      A       64.62.xx.xx
www             IN      A       64.62.xx.xx
mail            IN      A       64.62.xx.xx
Обратная зона

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

$TTL    3600

@  IN      SOA     domen.ua. admin.domen.ua (

                   2010110402        ; Serial
                   3600            ; Refresh
                   900             ; Retry
                   3600000         ; Expire
                   3600 )          ; Minimum

@  IN      NS      ns1.domen.ua.
18 IN      PTR     domen.ua.
19 IN      PTR     mail.domen.ua.

Re: свой днс на bind

Добавлено: 2010-11-04 13:55:10
lap
А локально нслукап обратной зоны и домена нормально отрабатывает?
И еще наверное в трастед днс надо добавить адреса вторичных серверов. Добавь логирование для запросов, и посмотри что там происходит.
И нормально-ли что он у тебя листен только на лупбеке и каком-то локальном адресе?
ЗЫ: нет никакой связи между тем кто регистрирует имя и кто предоставляет доступ в интернет.

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

named.conf
options {
        directory "/etc/namedb";
        pid-file "/var/run/named.pid";
        statistics-file "/var/stats/named.stats";
        query-source address 212.48.42.142;
        query-source-v6 address 2a02:28:5::2;
        allow-query { 0.0.0.0/0; ::/0; };
        listen-on { 212.48.42.142; 127.0.0.1; };
        listen-on-v6 { 2a02:28:5::2; ::1; };
};
logging {
        channel test {
                syslog daemon;
                severity debug 3;
                print-category yes;
                print-time yes;
        };
        category lame-servers { test; };
        category queries { test; };
        category network { test; };
};
=========================================
rc.conf
named_enable="YES"
named_program="/usr/sbin/named"
named_pidfile="/var/run/named.pid"
named_flags="-c /etc/namedb/named.conf"


Re: свой днс на bind

Добавлено: 2010-11-04 14:24:16
terminus

Re: свой днс на bind

Добавлено: 2010-11-04 16:38:24
mediamag
nslookup с локалхоста обратной зоны:

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

nslookup 62.64.xx.xx
Server:         127.0.0.1
Address:        127.0.0.1#53

xx.xx.64.62.in-addr.arpa        name = domen.ua.
xx.xx.64.62.in-addr.arpa        name = mail.domen.ua.
nslookup с локалхоста прямой зоны

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

nslookup domen.ua
Server:         127.0.0.1
Address:        127.0.0.1#53

Name:   domen.ua
Address: 62.64.xx.xx
В секцию trusted-dns добавил айпи днс серверов регистраторов, в секцию listen-on добавил внешний айп и убрал локальный

Re: свой днс на bind

Добавлено: 2010-11-04 16:45:32
lap
Только наоборот -
нслукап IP - запрос обратной зоны

И что вы от этого ДНС сервера кстати хотите добиться?

Re: свой днс на bind

Добавлено: 2010-11-04 16:48:06
mediamag
primary dns зоны domen.ua

Re: свой днс на bind

Добавлено: 2010-11-04 17:06:44
lap
Ну теперь надо убедться что секондари сервер(а) может стягивать с тебя зону, и можно менять информацию о домене у регистратора.
Судя по нслукапу, сервер у тебя нормально отрабатывает запросы.

Re: свой днс на bind

Добавлено: 2010-11-04 19:20:56
mediamag
а как убедится в том что вторичные сервера тянут зону нормально?

Re: свой днс на bind

Добавлено: 2010-11-04 20:12:26
lap
Можно запросить SOA запись с первичного и вторичного сервера. Должна совпадать. На всякий случай можно на первичном поменять сериал и посмотреть чтоб они засинхронизировались.

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

[root@life-in ~]# dig life-in.tlms.ru -t soa @life-in.tlms.ru
***
;; ANSWER SECTION:
life-in.tlms.ru.        86400   IN      SOA     life-in.tlms.ru. camelot.life-in.tlms.ru. 2010092300 3600 900 604800 86400
***
[root@life-in ~]# dig life-in.tlms.ru -t soa @dns1.comstar.ru
***
;; ANSWER SECTION:
life-in.tlms.ru.        86400   IN      SOA     life-in.tlms.ru. camelot.life-in.tlms.ru. 2010092300 3600 900 604800 86400
***
=============
Меняем serial
=============
[root@life-in ~]# rndc reload life-in.tlms.ru

[root@life-in ~]# dig life-in.tlms.ru -t soa @life-in.tlms.ru
***
;; ANSWER SECTION:
life-in.tlms.ru.        86400   IN      SOA     life-in.tlms.ru. camelot.life-in.tlms.ru. 2010110400 3600 900 604800 86400
***
[root@life-in ~]# dig life-in.tlms.ru -t soa @dns1.comstar.ru
***
;; ANSWER SECTION:
life-in.tlms.ru.        86400   IN      SOA     life-in.tlms.ru. camelot.life-in.tlms.ru. 2010092300 3600 900 604800 86400
***
[root@life-in ~]# dig life-in.tlms.ru -t soa @dns1.comstar.ru
***
;; ANSWER SECTION:
life-in.tlms.ru.        86400   IN      SOA     life-in.tlms.ru. camelot.life-in.tlms.ru. 2010110400 3600 900 604800 86400
***

Re: свой днс на bind

Добавлено: 2010-11-04 20:53:29
mediamag

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

dig domen.ua -t soa @domen.ua

; <<>> DiG 9.7.2-P2 <<>> domen.ua -t soa @domen.ua
;; global options: +cmd
;; connection timed out; no servers could be reached
Почему то так.

Re: свой днс на bind

Добавлено: 2010-11-04 21:18:45
lap
Э... попробуй вместо @domain.ua сказать @[IP]

Re: свой днс на bind

Добавлено: 2010-11-04 21:26:39
mediamag
То я дурак))) фаервол виноват...все четко как и у вас получилось.

Re: свой днс на bind

Добавлено: 2010-11-05 14:05:38
mediamag
Сейчас в логи бинда иногда валятся сообщения типа:

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

client 217.79.190.53#35638: query (cache) 'isc.org/TXT/IN' denied
В allow-transfer моей зоны я указал только два айпи: адрес регистратора и его вторичный днс. Эти сообщения говорят о том что ктото левый пытается обменятся данными с моим днс. Правильно что я их блокирую или всё же оставить allow-transfer пустым?

Re: свой днс на bind

Добавлено: 2010-11-06 1:39:53
lap
трансфер нужен только для стягивания зоны целиком вторичным сервером. Заблокированый запрос представляет из себя чтото типа dig -t txt isc.org

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

[root@life-in ~]# dig -t txt isc.org

; <<>> DiG 9.7.2-P2 <<>> -t txt isc.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1216
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 4, ADDITIONAL: 2

;; QUESTION SECTION:
;isc.org.                       IN      TXT

;; ANSWER SECTION:
isc.org.                10600   IN      TXT     "v=spf1 ?all"
isc.org.                10600   IN      TXT     "$Id: isc.org,v 1.1385 2010/10/3                                  1 00:33:11 bind Exp $"

;; AUTHORITY SECTION:
isc.org.                10600   IN      NS      sfba.sns-pb.isc.org.
isc.org.                10600   IN      NS      ams.sns-pb.isc.org.
isc.org.                10600   IN      NS      ord.sns-pb.isc.org.
isc.org.                10600   IN      NS      ns.isc.afilias-nst.info.

;; ADDITIONAL SECTION:
ns.isc.afilias-nst.info. 10601  IN      A       199.254.63.254
ns.isc.afilias-nst.info. 10600  IN      AAAA    2001:500:2c::254

;; Query time: 1 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sat Nov  6 01:34:15 2010
;; MSG SIZE  rcvd: 257

И соответственно логи бинда:
Nov  6 01:34:15 life-in named[1468]: 06-Nov-2010 01:34:15.738 queries: client 127.0.0.1#56600: query: isc.org IN T
XT + (127.0.0.1)
ЗЫ: насчет isc.org:
Последние пару-тройку дней наблюдаю в логах кучу запростов про иск орг:
[root@life-in ~]# grep isc.org /var/log/named.log | wc
71002 1136032 10137186

запрсы идут по несколько штук в секунду. мой сервер чисто "лабораторный", и кроме меня им никто не пользуется. Никто у себя такого не наблюдал?
ОДин адрес я уже заблочил на роутере, вылезло еще два:
Nov 6 01:34:21 life-in named[1468]: 06-Nov-2010 01:34:21.076 queries: client 174.122.127.186#60614: query: isc.org IN ANY +ED (212.48.42.142)
Nov 6 01:34:21 life-in named[1468]: 06-Nov-2010 01:34:21.103 queries: client 184.107.46.244#63956: query: isc.org IN ANY +ED (212.48.42.142)

Re: свой днс на bind

Добавлено: 2010-11-06 14:54:38
mediamag
у меня пока такого нет....кстати зона поднялась, все класно..спасибо за поддержку.

Re: свой днс на bind

Добавлено: 2010-11-07 11:50:08
mediamag
а вот еще вопрос. как правильно прописывать обратную зону? На сайте лисяры пример вида:

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

$TTL    3600

@  IN      SOA     ametist.my-domain-name.com. root.ametist.my-domain-name.com (
       
@  IN      NS      ns1.highway.ru.
18 IN      PTR     ametist.my-domain-name.com.
на других сайтах:

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

$TTL    3600

4.3.2.1.in-addr.arpa.    IN      SOA     ametist.my-domain-name.com. root.ametist.my-domain-name.com (
       
  IN      NS      ns1.highway.ru.
4.3.2.1.in-addr.arpa.    PTR     ametist.my-domain-name.com.

Re: свой днс на bind

Добавлено: 2010-11-07 12:24:07
lap
Теоретически можно и так и сяк, но первый вариант на мой взгляд вариант более "читабельный".

Re: свой днс на bind

Добавлено: 2010-11-07 12:37:10
mediamag
первый вариант не подошел. nslookup с локалхоста не нашел обратной зоны. а вот второй вариант подошел и локалхост увидел обратную зону и все имена принадлежащее этому айпи. Тоесть если я не ставлю собаки перед началом прописывания зоны, то ничего не получается.

Re: свой днс на bind

Добавлено: 2010-11-10 17:24:00
5chme1
Решил не создавать отдельной темы.
У меня ситация примерно такая же как и у автора топика.
Есть домен domen.ru - уже делегирован, машинка настроена, по инету до него можно достучаться, все нормально - сайты смотрятся.
вторичный DNS зарегил у ns.trifle.net
внешний IP от обычного прова.
C:\Documents and Settings\Администратор>nslookup 192.168.2.234
Server: ns1.domen.ru
Address: 192.168.2.232
Name: jabber.domen.ru
Address: 192.168.2.234

nslookup domen.ru
Server: ns1.domen.ru
Address: 192.168.2.232
Name: domen.ru
Address: 85.234.x.x
Но вот например при регистрации в привратнике (IP телефония) выдаются имена типа: user@pool-85-234-x.x.ptcomm.ru хотя должны: user@domen.ru
Я так понимаю мне нужно договориться с провайдером, чтобы он прописал IP 85-234-x.x в свою обратную зону?
И еще... есть еще внешние IP, допустим 81.234.45.34
могули я выделить ему домен 3го уровня test.domen.ru? или на нем нужно поднимать secondary DNS?
и можно ли прописать домен 3го уровня для машинки в сети, чтоб при попытке зайти скажем на test2.domen.ru
показывалась страничка с 192.168.2.235 (DNS на 192.168.2.254) если можно, то как это реализуется?

Re: свой днс на bind

Добавлено: 2010-11-10 18:50:19
mediamag
1. По поводу обратной зоны, только к провайдеру, выдавшему вам айпи
2. На сколько я понял (но еще не попробовал) можно любому белому айпи выдать прямую зону (поддомен в вашем случае), прописав примари днс в настройках сетевой - ваш днс а секондари днс провайдера. Но повторяю, пока не уверен - на днях попробую.
3. Чтобы назначить поддомен зоны локальной тачке, это как то делается посредством apache. Самому интересно как такое сделать. Можно даже указать заходить на определенный алиас, с этого же айпи (так лиссяра устроена,айпи один и тотже, а вводя разные имена, попадаешь на разный алиас)

Re: свой днс на bind

Добавлено: 2010-11-11 22:43:31
schmel
mediamag писал(а):1. По поводу обратной зоны, только к провайдеру, выдавшему вам айпи
2. На сколько я понял (но еще не попробовал) можно любому белому айпи выдать прямую зону (поддомен в вашем случае), прописав примари днс в настройках сетевой - ваш днс а секондари днс провайдера. Но повторяю, пока не уверен - на днях попробую.
3. Чтобы назначить поддомен зоны локальной тачке, это как то делается посредством apache. Самому интересно как такое сделать. Можно даже указать заходить на определенный алиас, с этого же айпи (так лиссяра устроена,айпи один и тотже, а вводя разные имена, попадаешь на разный алиас)
2. как пройдут испытания отпиши пожалуйста....
3. это делается виртуальными хостами апача, на котором крутится домен, если не ошибаюсь. но фишка в том, что поддомен нужно назначить тачке в сети с другим апачем...