LINUX.ORG.RU

Debian 10 - не стартует unbound dns сервер

 ,


0

1

Свежеустановленный unbound на Debian 10 не стартует:

# systemctl status unbound.service
● unbound.service - Unbound DNS server
   Loaded: loaded (/lib/systemd/system/unbound.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Sun 2021-07-11 13:19:33 CEST; 16s ago
     Docs: man:unbound(8)
  Process: 8958 ExecStartPre=/usr/lib/unbound/package-helper chroot_setup (code=exited, status=0/SUCCESS)
  Process: 8961 ExecStartPre=/usr/lib/unbound/package-helper root_trust_anchor_update (code=exited, status=0/SUCCESS)
  Process: 8966 ExecStart=/usr/sbin/unbound -d $DAEMON_OPTS (code=exited, status=1/FAILURE)
 Main PID: 8966 (code=exited, status=1/FAILURE)

Jul 11 13:19:32 po4ta systemd[1]: Failed to start Unbound DNS server.
Jul 11 13:19:32 po4ta systemd[1]: unbound.service: Service RestartSec=100ms expired, scheduling restart.
Jul 11 13:19:32 po4ta systemd[1]: unbound.service: Scheduled restart job, restart counter is at 5.
Jul 11 13:19:33 po4ta systemd[1]: Stopped Unbound DNS server.
Jul 11 13:19:33 po4ta systemd[1]: unbound.service: Start request repeated too quickly.
Jul 11 13:19:33 po4ta systemd[1]: unbound.service: Failed with result 'exit-code'.
Jul 11 13:19:33 po4ta systemd[1]: Failed to start Unbound DNS server.

Сразу после установки unbound выполнил:

# su -c "unbound-anchor -a /var/lib/unbound/root.key" - unbound
This account is currently not available.

При этом файл /var/lib/unbound/root.key создался.

journalctl -xe выдаёт

-- 
-- The job identifier is 4409 and the job result is failed.
Jul 11 13:42:33 po4ta systemd[1]: unbound-resolvconf.service: Start request repeated too quickly.
Jul 11 13:42:33 po4ta systemd[1]: unbound-resolvconf.service: Failed with result 'start-limit-hit'.
-- Subject: Unit failed
-- Defined-By: systemd
-- Support: https://www.debian.org/support
-- 
-- The unit unbound-resolvconf.service has entered the 'failed' state with result 'start-limit-hit'.
Jul 11 13:42:33 po4ta systemd[1]: Failed to start Unbound DNS server via resolvconf.
-- Subject: A start job for unit unbound-resolvconf.service has failed
-- Defined-By: systemd
-- Support: https://www.debian.org/support
-- 
-- A start job for unit unbound-resolvconf.service has finished with a failure.
-- 
-- The job identifier is 4464 and the job result is failed.
zorinquen ()
Ответ на: комментарий от Radjah
# /usr/sbin/unbound -d -vvv
[1626066927] unbound[2711:0] notice: Start of unbound 1.9.0.
[1626066927] unbound[2711:0] debug: increased limit(open files) from 1024 to 4152
[1626066927] unbound[2711:0] debug: creating udp6 socket ::1 53
[1626066927] unbound[2711:0] error: can't bind socket: Cannot assign requested address for ::1 port 53 (len 28)
[1626066927] unbound[2711:0] fatal error: could not open ports
zorinquen ()
Ответ на: комментарий от zorinquen

Кто-то уже занял порт 53 и его слушает.

sudo ss -lnp|grep 53
# или
sudo netstat -lnp|grep 53

Я в конфиге (/etc/unbound/unbound.conf.d/00-conf.conf) прописал вот так:

server:
        verbosity: 1
        port: 53
        interface: 127.0.0.1

И добавил по записи «interface» для каждого адреса интерфейса в системе, на который может прийти запрос.

Radjah ★★★★★ ()
Последнее исправление: Radjah (всего исправлений: 1)
Ответ на: комментарий от Radjah

Отлично, спасибки за совет! Запустился…

d# service unbound status
● unbound.service - Unbound DNS server
   Loaded: loaded (/lib/systemd/system/unbound.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2021-07-12 11:59:04 CEST; 2s ago
     Docs: man:unbound(8)
  Process: 4597 ExecStartPre=/usr/lib/unbound/package-helper chroot_setup (code=exited, status=0/SUCCESS)
  Process: 4600 ExecStartPre=/usr/lib/unbound/package-helper root_trust_anchor_update (code=exited, status=0/SUCCESS)
 Main PID: 4604 (unbound)
    Tasks: 1 (limit: 4915)
   Memory: 12.7M
   CGroup: /system.slice/unbound.service
           └─4604 /usr/sbin/unbound -d

Jul 12 11:59:03 po4ta systemd[1]: Starting Unbound DNS server...
Jul 12 11:59:04 po4ta package-helper[4600]: /var/lib/unbound/root.key has content
Jul 12 11:59:04 po4ta package-helper[4600]: success: the anchor is ok
Jul 12 11:59:04 po4ta unbound[4604]: [4604:0] notice: init module 0: subnet
Jul 12 11:59:04 po4ta unbound[4604]: [4604:0] notice: init module 1: validator
Jul 12 11:59:04 po4ta unbound[4604]: [4604:0] notice: init module 2: iterator
Jul 12 11:59:04 po4ta systemd[1]: Started Unbound DNS server.
Jul 12 11:59:04 po4ta unbound[4604]: [4604:0] info: start of service (unbound 1.9.0).

Только я не допонял, кроме блока

server:
        verbosity: 1
        port: 53
        interface: 127.0.0.1

нужно еще как-то указать записи «interface» для каждого адреса интерфейса в системе, на который может прийти запрос? Т.е. если кроме loopback интерфейса у меня еще eth0, нужно и для него подобный блок указать в /etc/unbound/unbound.conf.d/00-conf.conf?

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

Ну ты явно указал 127.0.0.1, то есть ipv4. Локалхост в ipv6 указывается иначе.

У меня unbound обслуживает запросы из нескольких сетей, вот и прописал для них intreface отдельно. Можно прописать 0.0.0.0 и закрыть ненужное фаерволом.

если кроме loopback интерфейса у меня еще eth0, нужно и для него подобный блок указать

Нет, достаточно сделать примерно так:

interface: 127.0.0.1
interface: 10.118.0.1
interface: 10.128.0.1
Radjah ★★★★★ ()