Автор Тема: BIND-а не отговавя на заявките  (Прочетена 1833 пъти)

yavorcho

  • Участници
  • ***
  • Публикации: 3
    • Профил
Здравейте,
поддържам малка лан мрежа в блока, но имам проблем с DNS-а, върху който се мъча вече три дена.
Търкалям Slackware, kernel 2.4.29, BIND 9.2.3, имам маскарадинг, шейпър, статично ИП и името на сървъра ми е описано в доставчика.
За съжаление, обаче, DNS не ми отговаря на заявките на PC-тата, а само когато го запитам от самия него (dig @localhost ...).
Стартира без проблем:
Цитат

 starting BIND 9.2.3
Dec 30 10:07:41 yavor named[4940]: using 1 CPU
Dec 30 10:07:41 yavor named[4940]: loading configuration from '/etc/named.conf'
Dec 30 10:07:41 yavor named[4940]: no IPv6 interfaces found
Dec 30 10:07:41 yavor named[4940]: listening on IPv4 interface lo, 127.0.0.1#53
Dec 30 10:07:41 yavor named[4940]: listening on IPv4 interface eth1, 192.168.0.1#53
Dec 30 10:07:41 yavor named[4940]: command channel listening on 127.0.0.1#953
Dec 30 10:07:41 yavor named[4940]: zone 0.0.127.in-addr.arpa/IN: loaded serial 2005122900
Dec 30 10:07:41 yavor named[4940]: zone localhost/IN: loaded serial 42
Dec 30 10:07:41 yavor named[4940]: running

ето ми и named.conf:
Цитат

options {
        directory "/var/named";
        forward first;
        forwarders { 85.196.182.1; 212.50.0.10; };
        listen-on {127.0.0.1; 192.168.0.1; };
        allow-query {127/8; 192.168.0/24; };
        query-source port 53;
};

zone "." IN {
        type hint;
        file "caching-example/named.ca";
};

zone "localhost" IN {
        type master;
        file "caching-example/localhost.zone";
        allow-update { none; };
};

zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "caching-example/named.local";
        allow-update { none; };
};

zone "0.168.192.in-addr.arpa" IN {
        type master;
        file "arpa.green";
 };

това ми е named.local:
Цитат

$TTL    86400
@       IN      SOA     server.domain.com. root.server.domain.com.  (
                                      2005122900 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
              IN      NS      server.domain.com.

1       IN      PTR     localhost.


и localhost.zone:
Цитат

$TTL    86400
$ORIGIN localhost.
@                       1D IN SOA       @ root (
                                        42              ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum

                        1D IN NS        @
                        1D IN A         127.0.0.1

и последно - за вътрешната ми мрежа:
Цитат

$TTL    86400
@       IN      SOA     server.domain.com. root.server.domain.com.
(
                                      1997022700 ; Serial
                                      28800      ; Refresh
                                      7200      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
        IN        NS      server.domain.com.

1       IN     PTR     localhost.

и естествено описание на роот сървърите.

Незнам дали и какво още трябва да се конфигурира. Прави ми впечатление, обаче, че в лога на named-а няма zone 192.168.../IN и т.н. Незнам защо.
От Виндовс станциите nslookup ми връща:
Цитат

C:\>nslookup http://www.amazon.com
*** Can't find server name for address ип-то-на-сървъра: Non-existent domain
*** Default servers are not available
Server:  UnKnown
Address:  ип-то-на-сървъра

DNS request timed out.
    timeout was 2 seconds.
Non-authoritative answer:
Name:    www.amazon.com
Address:  207.171.166.102


Много текст изписах, за което съжалявам, но вече наистина съм отчаян... Лошото е, че все нямам време да задълбая достатъчно и се задоволявам само да пусна нещото да работи "как да е" и така сигурно пропускам доста неща...
Дайте идеи!
Активен

alex_c

  • Напреднали
  • *****
  • Публикации: 122
    • Профил
BIND-а не отговавя на заявките
« Отговор #1 -: Dec 30, 2005, 11:10 »
Дай изхода от командата: netstat -natp, за да се види къде слуша BIND-a. След това може да покажеш и правилата на iptables, за да се види дали не блокираш DNS заявките от PC-тата.

Best wishes!
Alex
Активен

yavorcho

  • Участници
  • ***
  • Публикации: 3
    • Профил
BIND-а не отговавя на заявките
« Отговор #2 -: Dec 30, 2005, 12:42 »
Уж слуша тоя BIND -
Цитат

root@yavor:~# netstat -natp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:37              0.0.0.0:*               LISTEN      136/inetd
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1922/httpd
tcp        0      0 0.0.0.0:113             0.0.0.0:*               LISTEN      136/inetd
tcp        0      0 192.168.0.1:53          0.0.0.0:*               LISTEN      5068/named
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      5068/named
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      136/inetd
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      139/sshd
tcp        0      0 127.0.0.1:953           0.0.0.0:*               LISTEN      5068/named


a firewall-a ми е с Policy accept на INPUT и OUTPUT, така че не е от него.
Активен

dam

  • Напреднали
  • *****
  • Публикации: 37
    • Профил
BIND-а не отговавя на заявките
« Отговор #3 -: Dec 30, 2005, 13:18 »
Цитат (yavorcho @ Дек. 30 2005,10:22)
Стартира без проблем:
Цитат

 starting BIND 9.2.3
Dec 30 10:07:41 yavor named[4940]: using 1 CPU
Dec 30 10:07:41 yavor named[4940]: loading configuration from '/etc/named.conf'
Dec 30 10:07:41 yavor named[4940]: no IPv6 interfaces found
Dec 30 10:07:41 yavor named[4940]: listening on IPv4 interface lo, 127.0.0.1#53
Dec 30 10:07:41 yavor named[4940]: listening on IPv4 interface eth1, 192.168.0.1#53
Dec 30 10:07:41 yavor named[4940]: command channel listening on 127.0.0.1#953
Dec 30 10:07:41 yavor named[4940]: zone 0.0.127.in-addr.arpa/IN: loaded serial 2005122900
Dec 30 10:07:41 yavor named[4940]: zone localhost/IN: loaded serial 42
Dec 30 10:07:41 yavor named[4940]: running

ето ми и named.conf:
Цитат

options {
        directory "/var/named";
        forward first;
        forwarders { 85.196.182.1; 212.50.0.10; };
        listen-on {127.0.0.1; 192.168.0.1; };
        allow-query {127/8; 192.168.0/24; };
        query-source port 53;
};

zone "." IN {
        type hint;
        file "caching-example/named.ca";
};

zone "localhost" IN {
        type master;
        file "caching-example/localhost.zone";
        allow-update { none; };
};

zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "caching-example/named.local";
        allow-update { none; };
};

zone "0.168.192.in-addr.arpa" IN {
        type master;
        file "arpa.green";
 };


......

Незнам дали и какво още трябва да се конфигурира. Прави ми впечатление, обаче, че в лога на named-а няма zone 192.168.../IN и т.н. Незнам защо.

Защото не си описал зоната в named.conf

Трябва ти нещо от рода на
Примерен код
zone "domain.com" IN {
        type master;
        file "domain.com";
        allow-update { none; };
};
Активен

vlad73

  • Напреднали
  • *****
  • Публикации: 130
    • Профил
BIND-а не отговавя на заявките
« Отговор #4 -: Dec 30, 2005, 13:48 »
Интересно ми се види резултата и за utp, все пак той е по-често използвания протокол за днс-заявки, т.е.:
netstat -atunp | grep named
Може би не е от това, но допиши си номерата на мрежите, по-специално 192.168.0/24 на 192.168.0.0/24, струва ми се по-правилно, иначе може би bind-a си се оправя и така.
Първия днс сървър в forwarders си няма PTR запис, сигурно ли е, че е валиден? Ако не си убеден, по-добре използвай и втория dns-server на Спектър Нет, те поне грешка нямат '<img'>
А това, че са ти на ACCEPT политиките в iptalbes е чудесно, но само ако някое правило преди него не реже пакетите.

Файла за обратната зона за вътрешната ти мрежа изглежда еднакъв с файла named.local, да не би просто да си го копирал? '<img'>
В reverse трябва да опишеш ип-адреси и съответстващите им имена, типа на записа е PTR:
1   IN PTR gateway
2   IN PTR ivan.server.com.
3   IN PTR dragan
(като завършиш името с точка не се разширява с име на домейна)
Направи си и файл в който да са ти "правите" записи т.е. отляво имената:
gateway IN A 192.168.0.1
ivan       IN A 192.168.0.2
dragan.server.com. IN A 192.168.0.3
(тука пак играе далаверката с точката)

и двете зони ги описваш в named.conf

И последно предположение:
Аз съм с Fedora и при мен тя се стартира в различна коренова директория, виж дали и при теб не иде реч за chroot и ти да си конфигурираш един named.conf, a bind-a да чете друг, примерно при мен единия е заврян в /var/named/chroot/etc/named.conf, а другия си виси в /etc/named.conf, сега втория е просто линк към първия, но преди време това си беше отделен файл и полудях докато открия защо нещата в единия (онзи в /etc) се прочитат при рестартиране, а при релоад се прочиташе другия '<img'>

Успех!
Активен

yavorcho

  • Участници
  • ***
  • Публикации: 3
    • Профил
BIND-а не отговавя на заявките
« Отговор #5 -: Jan 01, 2006, 22:12 »
УСПЯХ!!
Невероятно щастие... Явно колкото по-голяма мъка-толкоз по-голямо удовлетворение накрая... '<img'>)
(Сега разбирам голямата любов на майката към бебето) Отнесох се нещо.

Благодаря ви много за съветите! Оказа се наистина че трябва да добавя още много неща.
Между другото и много полезна се оказа "книжката" UNIX Библия! Силно я препоръчвам - просто върши работа.
Активен