LINUX.ORG.RU
ФорумAdmin

CentOS 6 + bind DNS


0

1

Добрый день! Совершенно запутался в этом вопросе..

Задача: настроить днс сервер.

Опыта в этом нет, удалось нагуглить несколько советов:

http://www.linuxquestions.org/questions/linux-server-73/bind-and-unknown-rr-t...

http://www.server-world.info/en/note?os=CentOS_6&p=dns&f=1

Заранее прошу прощения за много букоф - конфиги для полноты картины.

Провайдер даёт:

IP    212.110.139.66 (static)
DNS1: 212.110.128.16
DNS2: 212.110.128.65

Чудо техники DIR-120 выпускает:

DHCP IP:     192.168.24.101
DNS/Gateway: 192.168.24.1

/etc/resolf.conf :

domain mydomain.com
search mydomain.com
nameserver 212.110.128.16
nameserver 212.110.128.65

/etc/hosts :

192.168.24.101    mydomain.com
127.0.0.1         localhost.localdomain    localhost
::1               mydomain.com             localhost.localdomain    localhost

/etc/named.conf :

options {
       listen-on-v6        { none; };
       directory           "/var/named/";
       dump-file           "/var/named/data/cache_dump.db";
       statistics-file     "/var/named/data/named_stats.txt";
       memstatistics-file  "/var/named/named_mem_stats.txt";
       allow-query         { any; };
       allow-transfer      { any; };
       recursion           yes;
       dnssec-enable       yes;
       dnssec-validation   yes;
       dnssec-lookaside    auto;
       bindkeys-file       "/etc/named.iscdlv.key";
};

logging {
       channel default_debug {
               file "data/named.run";
               severity dynamic;
       };
};

view "internal" {
       match-clients {
               localhost;
               192.168.24.101;
       };
       zone "." IN {
               type hint;
               file "named.ca";
       };
       zone "mydomain.com" IN {
               type master;
               file "mydomain.com.lan";
               allow-update { none; };
       };
       zone "101.24.168.192.in-addr.arpa" IN {
               type master;
               file "101.24.168.192.db";
               allow-update { none; };
       };

view "external" {
       match-clients { any; };
       allow-query { any; };
       recursion no;
       zone "mydomain.com" IN {
               type master;
               file "mydomain.com.wan";
               allow-update { none; };
       };
       zone "66.139.110.212.in-addr.arpa" IN {
               type master;
               file "66.139.110.212.db";
               allow-update { none; };
       };
};

/var/named/mydomain.com.lan :

$TTL 86400
@    IN    SOA      server.mydomain.com.    root.mydomain.com. (
     2011080401;
     3600;
     1800;
     604800;
     86400;
)

     IN    NS       server.mydomain.com.
     IN    A        192.168.24.1
     IN    MX 10    server.mydomain.com.

server     IN  A    192.168.24.1

/var/named/mydomain.com.wan :

$TTL 86400
@    IN    SOA      server.mydomain.com.    root.mydomain.com. (
     2011080401;
     3600;
     1800;
     604800;
     86400;
)

     IN    NS       server.mydomain.com.
     IN    A        212.110.128.16
     IN    MX 10    server.mydomain.com.

server     IN  A    212.110.128.16

/var/named/101.24.168.192.db :

$TTL 86400
@    IN    SOA    server.mydomain.com.    root.mydomain.com. (
     2011080401;
     3600;
     1800;
     604800;
     86400;
)

     IN    NS    server.mydomain.com.
     IN    PTR   mydomain.com.
     IN    A     255.255.255.0

1    IN    PTR   server.mydomain.com.

/var/named/66.139.110.212.db :

$TTL 86400
@    IN    SOA   server.mydomain.com.    root.mydomain.com. (
     2011080401;
     3600;
     1800;
     604800;
     86400;
)

    IN    NS    server.mydomain.com.
    IN    PTR   mydomain.com.
    IN    A     255.255.255.248

16  IN    PTR   server.mydomain.com.

Вот что etc/rc.d/init.d/named restart пишет:

Error in named configuration:
zone mydomain.com/IN: loaded serial 2011080401
zone 101.24.168.192.in-addr.arpa/IN: loaded serial 2011080401
zone localhost.localdomain/IN: loaded serial 0
zone localhost/IN: loaded serial 0
zone 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa/IN:
loaded serial 0
zone 1.0.0.127.in-addr.arpa/IN: loaded serial 0
zone 0.in-addr.arpa/IN: loaded serial 0
mydomain.com.wan:2: unknown RR type 'server.mydomain.com.'
zone mydomain.com/IN: loading from master file
mydomain.com.wan failed: unknown class/type
zone mydomain.com/IN: not loaded due to errors.
external/mydomain.com/IN: unknown class/type
zone 66.139.110.212.in-addr.arpa/IN: loaded serial 2011080401

Буду очень рад любым соображения/критике/высмеиванию и пр.


Пропарсил страницу, не нашёл forwarders {212.110.128.16; 212.110.128.65;}

adriano32 ★★★ ()
Ответ на: комментарий от adriano32

а куда их надабно вставить? догадываюсь, что в /etc/named.conf в раздел options? или вы о другом?

mkind ()
Ответ на: комментарий от mkind

Открыли бы док по bind'y и не задавли глупых вопросов.
А forwarders нужен, чтобы перенаправить запросы к вашему DNS-серверу из локалки к DNS-провайдера для тех зон, для которых ваш DNS-сервер не является primary.

adriano32 ★★★ ()
Ответ на: комментарий от adriano32

Доки по бинду читать нужно минимум неделю, и после них (если останется здравый рассудок), думаю, появится ещё больше вопросов :) Спасибо за совет, уже хоть знаю в какую сторону копать дальше.

Глупые вопросы неизбежны, когда опыта в никсах без малого три дня :)

mkind ()
Ответ на: комментарий от adriano32

Я так понял, что они нужны для того, чтобы узнать, на какие серверы пересылать запрос, если сервер не смог определить имя или IP-адрес запроса клиента, верно?

Добавил директиву forwarders в раздел options. Ошибка та же..

mkind ()
Ответ на: комментарий от adriano32

Спасибо, что откликнулись. Главная задача стоит такая: есть несколько tld доменов, зареганных у публичного регистратора (name.com). Нужно их захостить. Чтобы на стороне регистратора прописать что-то типа server.mydomain.com - ДНС, который я пытаюсь сделать на домашней машине. То ест name server этот не для локальной сети.

С теми записями IN A, если честно, я не разобрался, из FAQов и инструкций понял, что они описывают gateway машины, где настраивается ДНС.

Конечно, нет ничего проще, чем за пару баксов купить шаред хостинг и не морочить голову, однако я в будущем планирую вплотную этим заняться и нужно как-то начинать разбираться в основных принципах работы ДНС.

Ещё меня смущает DLink. Может быть, выбросить его настроить родной VPN или это не должно влиять?

mkind ()
Ответ на: комментарий от mkind

D-Link можно оставить, но настроить проброс портов DNS (53 & 953 both udp&tcp).

По поводу того, что у вас в конфиге:
1) там где 16 IN и 1 IN уберите (если бы была локалка, надо было 66, то есть ваш IP, а не провайдерский), в вашем случае ничего не надо, так как хостится на сервере, запись IN A 212.110.128.16 —> IN A 212.110.128.66, ваш IP, а не провайдерского DNS.
2) forwarders уберите, не для вашей задачи.
3) IN A 255.255.255.0 & IN A 255.255.255.248 из *.db выбросить
4) почитайте о IN CNAME, указывать сервера будете им.

adriano32 ★★★ ()
Ответ на: комментарий от adriano32

Спасибо большое за совет. Можно последний раз вас позадалбывать конфигом в этот чудный субботний денёк? :) Если я правильно учел ваши советы и док http://tldp.org/HOWTO/DNS-HOWTO-5.html то .wan, .lan и *.db файлы должны быть следующими:

(port fowrarding добавил, айпи заодно поменял на 192.168.0.101 и в качестве домена уже реальный f2t.us)

f2t.us.lan:

$TTL 86400
@       IN      SOA     ns1.f2t.us.     root.f2t.us. (
                2011080401;
                3600;
                1800;
                604800;
                86400;
)

        IN      NS      ns1.f2t.us.
        IN      A       192.168.0.101
        IN      MX 10   ns1.f2t.us.

ns1     IN      A       192.168.0.101
www     IN      CNAME   ns1.ft2.us.

f2t.us.wan:

TTL 86400
@       IN      ns1.f2t.us.     root.f2t.us. (
        2011080401;
        3600;
        1800;
        604800;
        86400;
)

        IN      NS      ns1.f2t.us.
        IN      A       212.110.128.66
        IN      MX 10   ns1.f2t.us.

ns1     IN      A       212.110.128.66
www     IN      CNAME   ns1.f2t.us.

101.0.168.192.db:

$TTL 86400
@       IN      SOA     ns1.f2t.us.     root.f2t.us. (
        2011080401;
        3600;
        1800;
        604800;
        86400;
)

        IN      NS      ns1.f2t.us.
        IN      PTR     f2t.us.

ns1     IN      A       192.168.0.101
www     IN      CNAME   ns1

66.139.110.212.db:

$TTL 86400
@       IN      SOA     ns1.f2t.us.     root.f2t.us. (
        2011080401;
        3600;
        1800;
        604800;
        86400;
)

        IN      NS      ns1.f2t.us.
        IN      PTR     f2t.us.

ns1     IN      A       212.110.128.66
www     IN      CNAME   ns1

Судя по логу, наука не пошла на пользу. Может быть, истина где-то рядом?

mkind ()
Ответ на: комментарий от mkind

Ну, обратные зоны, это для подсетей, никак не для хостов. Во внешнюю обратную зону твой хост прописывает провайдер, который предоставляет тебе внешний IP и все дела, здесь она не к чему.

DNS держать за дешевым роутером, как-то стремно, не лучше поиметь сторонние для основной зоны. А уж для локальных поднимай свой DNS и пиши в нем что угодно.

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

lvi ★★★★ ()
Ответ на: комментарий от lvi

Да, вы правы. Я совершенно забыл про обратную зону.. Провайдер, конечно, не даёт оную (только для юр.лиц).

Спасибо за советы, ребята, и прошу прощения, что морочил голову.

mkind ()
Ответ на: комментарий от berrywizard

> Как занимательно...

Серьёзно.. Нужно внимательно читать то, что написано в договоре, а не просто соглашаться по привычке :)

mkind ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.