Автор Тема: Падает DHCP на P9 Server...  (Прочитано 2296 раз)

Оффлайн San

  • Участник
  • *
  • Сообщений: 745
Падает DHCP на P9 Server...
« : 04.06.2020 13:57:18 »
Решил тут роутер себе смастерить, но предварительно потренироваться на Virtualbox. Установил ALT Server 9.0 х64 с дистрибутива alt-server-9.0-x86_64.iso, настроил NAT, DHCP, выход в интернет... вроде все нормально, но после перезагрузки падает DHCP:
# systemctl status dhcpd
● dhcpd.service - DHCPv4 Server Daemon
   Loaded: loaded (/lib/systemd/system/dhcpd.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since Thu 2020-06-04 17:05:33 +07; 3min 52s ago
     Docs: man:dhcpd(8)
           man:dhcpd.conf(5)
  Process: 1476 ExecStartPre=/etc/chroot.d/dhcpd.all (code=exited, status=0/SUCCESS)
  Process: 1685 ExecStart=/usr/sbin/dhcpd -4 -f --no-pid $DHCPDARGS (code=exited, status=1/FAILURE)
 Main PID: 1685 (code=exited, status=1/FAILURE)

июн 04 17:05:33 sanserverprobe.localdomain systemd[1]: Starting DHCPv4 Server Daemon...
июн 04 17:05:33 sanserverprobe.localdomain systemd[1]: Started DHCPv4 Server Daemon.
июн 04 17:05:33 sanserverprobe.localdomain systemd[1]: dhcpd.service: Main process exited, code=exited, status=1/FAILURE
июн 04 17:05:33 sanserverprobe.localdomain systemd[1]: dhcpd.service: Failed with result 'exit-code'.

Делаю ему старт, он запускается и работает до выключения компьютера:
# systemctl start dhcpd
# systemctl status dhcpd
● dhcpd.service - DHCPv4 Server Daemon
   Loaded: loaded (/lib/systemd/system/dhcpd.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2020-06-04 17:09:58 +07; 3s ago
     Docs: man:dhcpd(8)
           man:dhcpd.conf(5)
  Process: 10529 ExecStartPre=/etc/chroot.d/dhcpd.all (code=exited, status=0/SUCCESS)
 Main PID: 10638 (dhcpd)
    Tasks: 1 (limit: 4706)
   Memory: 10.1M
   CGroup: /system.slice/dhcpd.service
           └─10638 /usr/sbin/dhcpd -4 -f --no-pid

июн 04 17:09:58 sanserverprobe.localdomain dhcpd[10638]: Listening on LPF/enp0s8/08:00:27:4c:28:6a/192.168.55.0/24
июн 04 17:09:58 sanserverprobe.localdomain dhcpd[10638]: Sending on   LPF/enp0s8/08:00:27:4c:28:6a/192.168.55.0/24
июн 04 17:09:58 sanserverprobe.localdomain dhcpd[10638]: No subnet declaration for enp0s3 (192.168.113.132).
июн 04 17:09:58 sanserverprobe.localdomain dhcpd[10638]: ** Ignoring requests on enp0s3.  If this is not what
июн 04 17:09:58 sanserverprobe.localdomain dhcpd[10638]:    you want, please write a subnet declaration
июн 04 17:09:58 sanserverprobe.localdomain dhcpd[10638]:    in your dhcpd.conf file for the network segment
июн 04 17:09:58 sanserverprobe.localdomain dhcpd[10638]:    to which interface enp0s3 is attached. **
июн 04 17:09:58 sanserverprobe.localdomain dhcpd[10638]: Sending on   Socket/fallback/fallback-net
июн 04 17:09:58 sanserverprobe.localdomain dhcpd[10638]: Wrote 0 leases to leases file.
июн 04 17:09:58 sanserverprobe.localdomain dhcpd[10638]: Server starting service.

Но в логе видно ошибку, которая не дает мне покоя:
Цитировать
No subnet declaration for enp0s3 (192.168.113.132).
 ** Ignoring requests on enp0s3.  If this is not what
    you want, please write a subnet declaration
    in your dhcpd.conf file for the network segment
    to which interface enp0s3 is attached. **

Даже с переводчиком не могу понять чего от меня хотят? И связано ли это с падением DHCP при запуске вообще, Или падение DHCP вызвано другой причиной? Что то там про chroot.d сказано? Может он рано стартует при запуске системы, до самих сетевых интерфейсов? (Кстати управление сетевыми интерфейсами принадлежит Network Manager, стоит ли менять на etcnet? Может из за этого?) Сам похоже не разберусь, Помогите понять?

$ uname -a
Linux sanserverprobe.localdomain 4.19.79-std-def-alt1 #1 SMP Tue Oct 15 10:27:48 UTC 2019 x86_64 GNU/Linux
$ uname -r
4.19.79-std-def-alt1
$ cat /etc/altlinux-release
ALT Server 9.0 (FalcoRusticolus)
« Последнее редактирование: 04.06.2020 14:54:26 от San »

Оффлайн San

  • Участник
  • *
  • Сообщений: 745
Re: Падает DHCP на P9 Server...
« Ответ #1 : 04.06.2020 14:23:50 »
Выковырял сам лог падения...
Спойлер
$ journalctl --since "2020-06-04 18:02:12"
...
июн 04 18:02:12 sanserverprobe.localdomain systemd[1]: Started DHCPv4 Server Daemon.
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: Internet Systems Consortium DHCP Server 4.4.1
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: Copyright 2004-2018 Internet Systems Consortium.
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: All rights reserved.
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: For info, please visit https://www.isc.org/software/dhcp/
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: Config file: /etc/dhcp/dhcpd.conf
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: Database file: /state/dhcpd.leases
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: PID file: /var/run/dhcpd.pid
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: Not configured to listen on any interfaces!
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: Please note the following before requesting help:
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: This software is a part of the Internet Software Consortium's DHCP suite
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: with modifications for ALT Linux.
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: The ISC folks quite reasonably require that you do not bother them with
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: questions on software that includes third-party modifications and might
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: not be based off their latest code.  Hence, please direct any questions
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: to the community@ mailing list instead; the subscription instructions
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: are given at http://lists.altlinux.org/mailman/listinfo/community .
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: Please also read the SUPPORT section on the README about
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: submitting bug reports and requests for help.
июн 04 18:02:12 sanserverprobe.localdomain dhcpd[1811]: exiting.
июн 04 18:02:12 sanserverprobe.localdomain systemd[1]: dhcpd.service: Main process exited, code=exited, status=1/FAILURE
июн 04 18:02:12 sanserverprobe.localdomain systemd[1]: dhcpd.service: Failed with result 'exit-code'.
...
=====
Изменил управление сетевыми интерфейсами с Network Manager на Etcnet, перезагрузил, все заработало, обрадовался... Однако после очередной перезагрузки не поднялись сетевые интерфейсы:
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 08:00:27:63:73:fe brd ff:ff:ff:ff:ff:ff
3: enp0s8: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 08:00:27:4c:28:6a brd ff:ff:ff:ff:ff:ff

После перезагрузки с Etcnet Сетевые интерфейсы то запускаются, то не запускаются? Я вообще в шоке!

PS: Ну естественно при отключенных Сетевых интерфейсах и DHCP не стартует...
« Последнее редактирование: 04.06.2020 15:12:42 от San »

Оффлайн San

  • Участник
  • *
  • Сообщений: 745
Re: Падает DHCP на P9 Server...
« Ответ #2 : 04.06.2020 18:59:33 »
В общем как всегда с любимым Alt-ом получается: - Из коробки завести, не один барабан и бубен порвешь...  ;-D

Вернулся к Network Manager, так как Etcnet похоже на systemd вообще не предсказуем. Начал курить мануалы по systemd, подстроил файл lib/systemd/system/dhcpd.service добавив в него строчки:
After=network-online.target и Restart=always

Вот что в итоге получилось:
# systemctl cat dhcpd.service
# /lib/systemd/system/dhcpd.service
[Unit]
Description=DHCPv4 Server Daemon
Documentation=man:dhcpd(8) man:dhcpd.conf(5)
After=network.target
After=network-online.target
After=time-sync.target

[Service]
ExecStartPre=/etc/chroot.d/dhcpd.all
EnvironmentFile=/etc/sysconfig/dhcpd
ExecStart=/usr/sbin/dhcpd -4 -f --no-pid $DHCPDARGS
Restart=always

[Install]
WantedBy=multi-user.target

Не знаю на сколько правильно? Но пока все запускается. Хотя из лога видно что на самой границе... Т.е. Network Manager заканчивает работу, в следующей строке уже DHCP начинает запускаться...

PS: Подскажите, возможно есть другой способ? Более надежный? Или подсунуть ему еще какой нибудь *.target?