Почему я не могу запустить isc-dhcp-server после установки?


13

Я следую этому руководству, чтобы установить Linux в систему, в которой нет ни устройства чтения компакт-дисков, ни возможностей загрузки через USB. В конце концов, я дошел до того, что мне пришлось установить, isc-dhcp-serverи я сделал, вроде.

Aptговорит мне, что есть один частично установленный пакет. Я бегу sudo apt-get install -fи получаю следующее:

Job for isc-dhcp-server.service failed. See 'systemctl status isc-dhcp server.service' and 'journalctl -xn' for details.
invoke-rc.d: initscript isc-dhcp-server, action "start" failed.
dpkg: error processing package isc-dhcp-server (--configure):
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
isc-dhcp-server
E: Sub-process /usr/bin/dpkg returned an error code (1)

Если я это сделаю, /etc/init.d/isc-dhcp-server startподсказка состоит из первых двух строк одного и того же сообщения.

Выход из sudo systemctl status isc-dhcp-server:

● isc-dhcp-server.service - LSB: DHCP server
   Loaded: loaded (/etc/init.d/isc-dhcp-server)
   Active: failed (Result: exit-code) since Fri 2014-12-12 13:19:25 CST; 2min 43s ago
  Process: 1677 ExecStart=/etc/init.d/isc-dhcp-server start (code=exited, status=1/FAILURE)

Dec 12 13:19:23 semplice dhcpd[1684]: you want, please write a subnet declaration
Dec 12 13:19:23 semplice dhcpd[1684]: in your dhcpd.conf file for the network segment
Dec 12 13:19:23 semplice dhcpd[1684]: to which interface eth0 is attached. **
Dec 12 13:19:23 semplice dhcpd[1684]: 
Dec 12 13:19:23 semplice dhcpd[1684]: 
Dec 12 13:19:25 semplice isc-dhcp-server[1677]: Starting ISC DHCP server: dhcpdcheck syslog for diagnostics. ... failed!
Dec 12 13:19:25 semplice isc-dhcp-server[1677]: failed!
Dec 12 13:19:25 semplice systemd[1]: isc-dhcp-server.service: control process exited, code=exited status=1
Dec 12 13:19:25 semplice systemd[1]: Failed to start LSB: DHCP server.
Dec 12 13:19:25 semplice systemd[1]: Unit isc-dhcp-server.service entered failed state.

Выход из sudo journalctl -xn:

-- Logs begin at Fri 2014-12-12 12:57:16 CST, end at Fri 2014-12-12 13:32:01 CST. --
Dec 12 13:31:58 semplice NetworkManager[505]: <info>   lease time 86400
Dec 12 13:31:58 semplice NetworkManager[505]: <info>   nameserver '192.168.1.254'
Dec 12 13:31:58 semplice NetworkManager[505]: <info>   domain name 'lan'
Dec 12 13:31:58 semplice dbus[518]: [system] Activating via systemd: service name='org.freedesktop.nm_dispatcher' unit='dbus-org.freedesktop.nm-dispatcher.ser
Dec 12 13:31:58 semplice dbus[518]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
Dec 12 13:31:58 semplice nm-dispatcher[2194]: Dispatching action 'dhcp4-change' for wlan0
Dec 12 13:31:58 semplice dhclient[616]: bound to 192.168.1.65 -- renewal in 45 seconds.
Dec 12 13:31:58 semplice NetworkManager[505]: bound to 192.168.1.65 -- renewal in 45 seconds.
Dec 12 13:32:01 semplice sudo[2197]: alejandro : TTY=pts/0 ; PWD=/home/alejandro ; USER=root ; COMMAND=/bin/journalctl -xn
Dec 12 13:32:01 semplice sudo[2197]: pam_unix(sudo:session): session opened for user root by alejandro(uid=0)

Это мой /etc/dhcp/dhcpd.configфайл, который является лишь копией примера из учебника, упомянутого выше.

Выход из /var/log/syslogчтения сразу после запускаapt-get install -f

Dec 12 16:42:40 localhost dhclient: DHCPREQUEST on wlan0 to 192.168.1.254 port 67
Dec 12 16:42:40 localhost NetworkManager[505]: DHCPREQUEST on wlan0 to 192.168.1.254 port 67
Dec 12 16:42:40 localhost dhclient: DHCPACK from 192.168.1.254
Dec 12 16:42:40 localhost NetworkManager[505]: DHCPACK from 192.168.1.254
Dec 12 16:42:40 localhost NetworkManager[505]: <info> (wlan0): DHCPv4 state changed renew -> renew
Dec 12 16:42:40 localhost NetworkManager[505]: <info>   address 192.168.1.65
Dec 12 16:42:40 localhost NetworkManager[505]: <info>   plen 24 (255.255.255.0)
Dec 12 16:42:40 localhost NetworkManager[505]: <info>   gateway 192.168.1.254
Dec 12 16:42:40 localhost NetworkManager[505]: <info>   server identifier 192.168.1.254
Dec 12 16:42:40 localhost NetworkManager[505]: <info>   lease time 86400
Dec 12 16:42:40 localhost NetworkManager[505]: <info>   nameserver '192.168.1.254'
Dec 12 16:42:40 localhost NetworkManager[505]: <info>   domain name 'lan'
Dec 12 16:42:40 localhost dbus[518]: [system] Activating via systemd: service name='org.freedesktop.nm_dispatcher' unit='dbus-org.freedesktop.nm-dispatcher.service'
Dec 12 16:42:40 localhost dbus[518]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
Dec 12 16:42:40 localhost nm-dispatcher: Dispatching action 'dhcp4-change' for wlan0
Dec 12 16:42:41 localhost dhclient: bound to 192.168.1.65 -- renewal in 52 seconds.
Dec 12 16:42:41 localhost NetworkManager[505]: bound to 192.168.1.65 -- renewal in 52 seconds.
Dec 12 16:43:32 localhost dhclient: DHCPREQUEST on wlan0 to 192.168.1.254 port 67
Dec 12 16:43:32 localhost NetworkManager[505]: DHCPREQUEST on wlan0 to 192.168.1.254 port 67
Dec 12 16:43:32 localhost dhclient: DHCPACK from 192.168.1.254
Dec 12 16:43:32 localhost NetworkManager[505]: DHCPACK from 192.168.1.254
Dec 12 16:43:32 localhost NetworkManager[505]: <info> (wlan0): DHCPv4 state changed renew -> renew
Dec 12 16:43:32 localhost NetworkManager[505]: <info>   address 192.168.1.65
Dec 12 16:43:32 localhost NetworkManager[505]: <info>   plen 24 (255.255.255.0)
Dec 12 16:43:32 localhost NetworkManager[505]: <info>   gateway 192.168.1.254
Dec 12 16:43:32 localhost NetworkManager[505]: <info>   server identifier 192.168.1.254
Dec 12 16:43:32 localhost NetworkManager[505]: <info>   lease time 86400
Dec 12 16:43:32 localhost NetworkManager[505]: <info>   nameserver '192.168.1.254'
Dec 12 16:43:32 localhost NetworkManager[505]: <info>   domain name 'lan'
Dec 12 16:43:32 localhost dbus[518]: [system] Activating via systemd: service name='org.freedesktop.nm_dispatcher' unit='dbus-org.freedesktop.nm-dispatcher.service'
Dec 12 16:43:32 localhost dbus[518]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
Dec 12 16:43:32 localhost nm-dispatcher: Dispatching action 'dhcp4-change' for wlan0
Dec 12 16:43:33 localhost dhclient: bound to 192.168.1.65 -- renewal in 54 seconds.
Dec 12 16:43:33 localhost NetworkManager[505]: bound to 192.168.1.65 -- renewal in 54 seconds.
Dec 12 16:43:40 localhost dhcpd: Internet Systems Consortium DHCP Server 4.3.1
Dec 12 16:43:40 localhost dhcpd: Copyright 2004-2014 Internet Systems Consortium.
Dec 12 16:43:40 localhost dhcpd: All rights reserved.
Dec 12 16:43:40 localhost dhcpd: For info, please visit https://www.isc.org/software/dhcp/
Dec 12 16:43:40 localhost dhcpd: Internet Systems Consortium DHCP Server 4.3.1
Dec 12 16:43:40 localhost dhcpd: Copyright 2004-2014 Internet Systems Consortium.
Dec 12 16:43:40 localhost dhcpd: All rights reserved.
Dec 12 16:43:40 localhost dhcpd: For info, please visit https://www.isc.org/software/dhcp/
Dec 12 16:43:40 localhost dhcpd: Wrote 0 deleted host decls to leases file.
Dec 12 16:43:40 localhost dhcpd: Wrote 0 new dynamic host decls to leases file.
Dec 12 16:43:40 localhost dhcpd: Wrote 0 leases to leases file.
Dec 12 16:43:40 localhost dhcpd: 
Dec 12 16:43:40 localhost dhcpd: No subnet declaration for eth0 (no IPv4 addresses).
Dec 12 16:43:40 localhost dhcpd: ** Ignoring requests on eth0.  If this is not what
Dec 12 16:43:40 localhost dhcpd:    you want, please write a subnet declaration
Dec 12 16:43:40 localhost dhcpd:    in your dhcpd.conf file for the network segment
Dec 12 16:43:40 localhost dhcpd:    to which interface eth0 is attached. **
Dec 12 16:43:40 localhost dhcpd: 
Dec 12 16:43:40 localhost dhcpd: 
Dec 12 16:43:40 localhost dhcpd: Not configured to listen on any interfaces!
Dec 12 16:43:40 localhost dhcpd: 
Dec 12 16:43:40 localhost dhcpd: If you think you have received this message due to a bug rather
Dec 12 16:43:40 localhost dhcpd: than a configuration issue please read the section on submitting
Dec 12 16:43:40 localhost dhcpd: bugs on either our web page at www.isc.org or in the README file
Dec 12 16:43:40 localhost dhcpd: before submitting a bug.  These pages explain the proper
Dec 12 16:43:40 localhost dhcpd: process and the information we find helpful for debugging..
Dec 12 16:43:40 localhost dhcpd: 
Dec 12 16:43:40 localhost dhcpd: exiting.
Dec 12 16:43:42 localhost isc-dhcp-server[5729]: Starting ISC DHCP server: dhcpdcheck syslog for diagnostics. ... failed!
Dec 12 16:43:42 localhost isc-dhcp-server[5729]: failed!
Dec 12 16:43:42 localhost systemd[1]: isc-dhcp-server.service: control process exited, code=exited status=1
Dec 12 16:43:42 localhost systemd[1]: Failed to start LSB: DHCP server.
Dec 12 16:43:42 localhost systemd[1]: Unit isc-dhcp-server.service entered failed state.

Должен ли я скрыть свой IP-адрес?


1
Вы делали то, что говорят эти две строки, то есть запускали systemclt и просматривали журнал? Пожалуйста, опубликуйте вывод journalctl -xnсгенерированного (возможно, придется выполнить sudo) при попытке перезапускаapt-get install -f
Anthon

1
Так dhcpdчто это не начинается, и мы получаем только конец его сообщений здесь. Похоже, он жалуется на dhcpd.confотсутствие какой-либо необходимой информации. Вам нужно вернуться немного назад в системные журналы, чтобы увидеть всю серию сообщений от dhcpd. В традиционной системе должны быть логи /var/log/syslog, я не знаю, испортил ли systemd это.
Жиль "ТАК - перестань быть злым"

Ответы:


5

Кажется, ваша сетевая конфигурация не соответствует объявлению подсети в dhcp.conf. Убедитесь, что у вас настроен IP-адрес из подсети 10.10.1.0/24. Вы можете проверить это используя:

ip a

Если вы не видите такой IP-адрес, попробуйте добавить его, например, к eth0:

ip a a 10.10.1.200/24 dev eth0

После этого попробуйте снова исправить пакет:

apt-get install -f

Если я прав, он должен установить пакет и запустить демон DHCP, и вы можете сохранить этот IP-адрес в / etc / network / interfaces


2
Примечание: ip a aрасшифровывается какip address add
mxmlnkn

была эта ошибка на моем rasp pi и не удалось запустить службу, оказалось, что IP-адрес не был в ip вывод команды. после добавления IP-адреса все
заработало

@ Manny265 Ваш комментарий не имеет смысла; причина, по которой вы запускаете DHCP, заключается в том, что он должен автоматически назначать вам IP-адрес.
трипл

3

Ваша проблема здесь:

Dec 12 16:43:40 localhost dhcpd: No subnet declaration for eth0 (no IPv4 addresses).
Dec 12 16:43:40 localhost dhcpd: ** Ignoring requests on eth0.  If this is not what
Dec 12 16:43:40 localhost dhcpd:    you want, please write a subnet declaration
Dec 12 16:43:40 localhost dhcpd:    in your dhcpd.conf file for the network segment
Dec 12 16:43:40 localhost dhcpd:    to which interface eth0 is attached. **
Dec 12 16:43:40 localhost dhcpd: 
Dec 12 16:43:40 localhost dhcpd: 
Dec 12 16:43:40 localhost dhcpd: Not configured to listen on any interfaces!
Dec 12 16:43:40 localhost dhcpd: 
Dec 12 16:43:40 localhost dhcpd: If you think you have received this message due to a bug rather
Dec 12 16:43:40 localhost dhcpd: than a configuration issue please read the section on submitting
Dec 12 16:43:40 localhost dhcpd: bugs on either our web page at www.isc.org or in the README file
Dec 12 16:43:40 localhost dhcpd: before submitting a bug.  These pages explain the proper
Dec 12 16:43:40 localhost dhcpd: process and the information we find helpful for debugging..
Dec 12 16:43:40 localhost dhcpd: 
Dec 12 16:43:40 localhost dhcpd: exiting.

Вы должны быть в состоянии воспроизвести сообщение об ошибке, запустив dhcpd -t -cf /etc/dhcp/dhcpd.conf.


Я предполагаю, что вы хотите использовать беспроводное подключение к Интернету для других хостов по Ethernet, как показано на диаграмме топологии ниже.

                            ↑
                            │ Uplink
                            │
               ┌────────────┴────────────┐
               │          wlan0          │
               │     192.168.1.65/24     │
               │                         │
               │        semplice         │
               │                         │
               │       10.10.1.1/24      │
               │          eth0           │
               └────────────┬────────────┘
                            │
     ┌──────────────┬───────┴────────┬──────────────┐
     │              │                │              │
   Host 1         Host 2           Host 3         Host 4
 10.10.1.21     10.10.1.22       10.10.1.23     10.10.1.24

Я предполагаю, что адрес вашего сервера для eth010.10.1.1. Проверьте это, запустив ip addr show dev eth0.

Затем вы должны настроить, /etc/dhcp/dhcpd.conf чтобы раздавать адреса на eth0интерфейсе. Изначально dhcpdон настроен так, чтобы не отвечать ни на что, поскольку непреднамеренно работающий мошеннический DHCP-сервер может нанести ущерб сети, раздавая адреса любому хосту, который его запрашивает.

В /etc/dhcp/dhcpd.conf, вам понадобится строфа, как показано ниже:

subnet 10.10.1.0 netmask 255.255.255.0 {
    option subnet-mask        255.255.255.0;
    option broadcast-address  10.10.1.255;
    option routers            10.10.1.1;
    pool {
        range 10.10.1.21 10.10.1.254;
    }
}

... в дополнение к декларациям , таких как authoritative, domain-name, domain-name-servers, и default-lease-time. (Отрегулируйте при необходимости. Только вы знаете, какие настройки вы хотите для своей сети.)

Кроме того, для Debian вам нужно отредактировать, /etc/default/isc-dhcp-serverчтобы установить

INTERFACES="eth0"

так что сервер будет слушать порт Ethernet. (Вы не хотите слушать wlan0; ваша беспроводная точка доступа будет отвечать за передачу адресов беспроводным клиентам.)


2
Его проблема в том, что systemd игнорирует информацию инициализации lsb старого скрипта инициализации, в которой четко указано «# Required-Start: $ remote_fs $ network $ syslog». Вместо того, чтобы ждать запуска сетевых модулей, он распараллелит работу dhcpd еще до этого.
Флориан Хейгл

Для /etc/dhcp/dhcpd.confрешения этой проблемы следует использовать действительный файл конфигурации. isc-dhcp-serverСлужба потерпит неудачу , используя неправильную dhcpd.confконфигурацию.
GAD3R
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.