Назад | Перейти на главную страницу

Bind9 ДОЛЖЕН быть перезапущен, чтобы DNS-сервер работал при каждом перезапуске

Я последовал за этот очень хороший урок сделать свой первый DNS-сервер на Debian Jessie (на моем Raspberry Pi). Вроде сработало нормально. Я могу пинговать:

ping myhostname.mydomain

и он отлично работает. Проблема в том, что КАЖДЫЙ раз я перезапускаю свой raspberry Pi, мне приходится запускать

sudo service bind9 restart

в противном случае DNS-сервер не запустится с моей конфигурацией, и мои определения DNS не будут работать. Теперь я должен сказать, что если я сбегу htop, Я вижу, что там работает bind9, но, тем не менее, я ping и я получаю, что имя хоста не существует. Только после того, как я перезапущу bind9 вручную, DNS-сервер снова заработает.

Я должен сказать, что пока я пытался это исправить, я запустил bind9 через Chroot, как описано на странице Debian, но это не помогло.

Я все еще новичок в этом, поэтому, пожалуйста, спросите, нужна ли вам дополнительная информация. Я не знаю, с чего начать искать проблемы с bind9, чтобы решить эту проблему.

Примечание: все это я начал с новой установки.


Обновить на основе вопросов из комментариев:

dig myhostname.mydomain

дает тайм-аут:

; <<>> DiG 9.9.5-9+deb8u3-Raspbian <<>> myhostname.mydomain
;; global options: +cmd
;; connection timed out; no servers could be reached

Команда netstat -plnut возвращается

(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      -
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -
tcp        0      0 127.0.0.1:953           0.0.0.0:*               LISTEN      -
tcp        0      0 127.0.0.1:6010          0.0.0.0:*               LISTEN      -
tcp6       0      0 :::80                   :::*                    LISTEN      -
tcp6       0      0 :::53                   :::*                    LISTEN      -
tcp6       0      0 :::22                   :::*                    LISTEN      -
tcp6       0      0 ::1:953                 :::*                    LISTEN      -
tcp6       0      0 ::1:6010                :::*                    LISTEN      -
udp        0      0 127.0.0.1:53            0.0.0.0:*                           -
udp        0      0 0.0.0.0:68              0.0.0.0:*                           -
udp        0      0 192.168.1.2:123         0.0.0.0:*                           -
udp        0      0 127.0.0.1:123           0.0.0.0:*                           -
udp        0      0 0.0.0.0:123             0.0.0.0:*                           -
udp        0      0 0.0.0.0:48851           0.0.0.0:*                           -
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           -
udp6       0      0 :::546                  :::*                                -
udp6       0      0 :::53                   :::*                                -
udp6       0      0 2003:75:e15:c201:52:123 :::*                                -
udp6       0      0 fe80::ba27:ebff:fe7:123 :::*                                -
udp6       0      0 ::1:123                 :::*                                -
udp6       0      0 :::123                  :::*                                -
udp6       0      0 :::53420                :::*                                -
udp6       0      0 :::5353                 :::*                                -

После перезапуска добавляются эти две строки, принадлежащие DNS-серверу:

tcp        0      0 192.168.1.2:53          0.0.0.0:*               LISTEN      -
udp        0      0 192.168.1.2:53          0.0.0.0:*                           -

1) Пользовательский сценарий для обработки задержек DHCP. (создавать файлы как root / sudo)

cat / usr / local / sbin / проверка сети

#!/bin/bash
while ! ifconfig | grep "192.168.1." > /dev/null; do
        #Network Down
        sleep 1
done
#Network up restart bind9
service bind9 restart

chmod a + x / usr / local / sbin / проверка сети

добавить строку перед выходом 0 в /etc/rc.local

network-check
exit 0

а затем перезагрузите

2) Установите статический, сеть будет начинаться с IP, а затем запустится bind9 (и использовать этот IP)

Я рекомендую перейти на BIND 9.10, в котором есть возможность автоматически определять изменения IP-адресов вашей системы по умолчанию. yes установка для automatic-interface-scan глобальный вариант.

В BIND 9.9 соответствующая опция interface-interval который определяет, как часто BIND опрашивает изменения интерфейса. Значение по умолчанию - 60 минут, что слишком медленно для ваших целей.