Теперь рассмотрим ситуации, в которых named работает неправильно. Неправильно расположенные файлы BIND часто вызывают проблемы, особенно в средах chroot, где эти файлы расположены в изолированной директории.
Если named запускается нормально, но не загружает некоторые файлы зон, то их может не быть в изолированной директории. Вы должны просмотреть файл /var/log/syslog, чтобы узнать, тот ли это случай. Рассмотрим пример из журнала:
starting BIND 9.2.4 u bind t /var/lib/named using 1 CPU
loading configuration from '/etc/bind/named.conf' listening on IPv4 interface lo. 127.0.0.1#53 listening on IPv4 interface ethO, 70.253.158.42#53 command channel listening on 127.0.0.1#953 command channel listening on ::1#953 running
Журнал показывает, что BIND запустился нормально, но в нем нет строк, указывающих, что были загружены файлы зон. Поскольку named выполняется в окружении chroot по адресу /var/1 i b/named, он будет выглядеть для всех файлов относящимся к этой директории. Действительно, он читает файл /var/lib/named/ etc/bi nd/named. conf, чтобы найти список зон для загрузки. Каждый из этих файлов зон должен относиться к директории /var/lib/named.
Другая распространенная ошибка — это отказ соединения, включающего rndc во время перезагрузки или перезапуска сервера имен:

# /etc/init.d/ bind9 reload

Stopping named: rndc: connect failed: connection refused [OK]
Starting named: [OK]

#

Подобные ошибки могут также появляться в результате работы BIND в окружении chroot, если один или несколько файлов изолированной директории пропущены. Вы можете проверить некоторые существенные файлы, чтобы убедиться, что они находятся в верных местах:

# Is 1 /var/lib/named/etc/bind/named.corif

rwrr1 root bind 1611 20060907 12:21 /var/1ib/named/etc/bind/named.conf

# Is /var/1ib/named/etc/bind/

db.O db.local named.conf.local pri.centralsoft.org
db.127 db.root named.conf.options pri.opensourcetoday.org
db.255 named.conf pri.156.18.67.inaddr.arpa rndc.key
db.empty named.confpri.156.18.67.inaddr.arpazones.rfcl918

#

Если эти файлы не существуют, то окружение chroot настроено неправильно или не полностью. Вернитесь к разделу «Настройка сервера DNS» в начале этой главы и внимательно следуйте инструкциям, чтобы обеспечить правильное местоположение всех файлов.
Как только решите проблему, вы должны остановить и перезапустить named для ввода команды rndc, чтобы получить доступ на работающий сервер. Используйте последовательность команд kill all так, как это описано в предыдущем разделе:
serverl:~# killall TERM /usr/sbin/named serverl:~# killall KILL /usr/sbin/named
/usr/sbin/named: no process killed serverl:# /etc/init.d/bind9 start Starting domain name service: named. serverl:#
Далее проверьте свой файл /var/log/syslog, чтобы определить, загружены ли файлы зоны. Вы должны увидеть чтото вроде этого кода:
starting BIND 9.2.4 u bind t /var/1ib/named using 1 CPU
loading configuration from '/etc/bind/named.conf'
listening on IPv4 interface lo, 127.0.0.1#53
listening on IPv4 interface ethO, 70.253.158.42153
command channel listening on 127.0.0.1#953
command channel listening on ::1#953
zone 0.0.127.inaddr.arpa/IN: loaded serial 1
zone 158.253.70.inaddr.arpa/IN: loaded serial 2006070401
zone centralsoft.org/IN: loaded serial 2006070502
zone supportcall.org/IN: loaded serial 2006062704
running