Tại sao tôi không thể khởi động máy chủ isc-dhcp sau khi cài đặt?


13

Tôi đang theo hướng dẫn này để cài đặt Linux trong một hệ thống không có đầu đọc CD cũng như khả năng khởi động USB. Cuối cùng, tôi đã đạt đến điểm mà tôi phải cài đặt isc-dhcp-servervà tôi đã làm, loại.

Aptnói với tôi rằng có một gói được cài đặt một phần. Tôi chạy sudo apt-get install -fvà tôi nhận được như sau:

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)

Nếu tôi làm /etc/init.d/isc-dhcp-server startlời nhắc bao gồm hai dòng đầu tiên của cùng một thông điệp.

Đầu ra từ 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.

Đầu ra từ 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)

Đây/etc/dhcp/dhcpd.configtập tin của tôi chỉ là một bản sao của ví dụ trong hướng dẫn được đề cập ở trên.

Đầu ra từ /var/log/syslogđọc ngay sau khi chạyapt-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.

Tôi có nên ẩn địa chỉ IP của mình?


1
Bạn đã làm những gì để hai dòng đó nói, tức là chạy systemclt và xem tạp chí? Vui lòng gửi đầu ra từ journalctl -xnđược tạo (có thể phải sudo nó) trong khi bạn cố gắng chạy lạiapt-get install -f
Anthon

1
Vì vậy, nó dhcpdkhông bắt đầu và chúng tôi chỉ nhận được phần cuối của tin nhắn ở đây. Có vẻ như nó phàn nàn về việc dhcpd.confthiếu một số thông tin cần thiết. Bạn cần quay lại một chút trong nhật ký hệ thống, để xem toàn bộ chuỗi tin nhắn từ đó dhcpd. Trên một hệ thống truyền thống, các bản ghi nên được đặt vào /var/log/syslog, tôi không biết liệu systemd có làm hỏng nó không.
Gilles 'SO- ngừng trở nên xấu xa'

Câu trả lời:


5

Có vẻ như cấu hình mạng của bạn không khớp với khai báo mạng con của bạn trong dhcp.conf. Đảm bảo rằng bạn có một địa chỉ IP từ mạng con 10.10.1.0/24 được định cấu hình. Bạn có thể kiểm tra điều này bằng cách sử dụng:

ip a

Nếu bạn không thấy địa chỉ IP như vậy, hãy thử thêm nó vào ví dụ: eth0:

ip a a 10.10.1.200/24 dev eth0

Sau đó thử lại gói sửa lỗi:

apt-get install -f

Nếu tôi đúng, nó sẽ cài đặt gói và khởi động DHCP daemon và bạn có thể muốn duy trì địa chỉ IP này trong / etc / network / giao diện


2
Lưu ý: ip a alà viết tắt củaip address add
mxmlnkn

có lỗi này trên rasp pi của tôi và không thể khởi động dịch vụ, hóa ra không có địa chỉ IP nào trong ip một đầu ra lệnh. sau khi thêm địa chỉ IP, mọi thứ đều hoạt động
Manny265

@ Manny265 Nhận xét của bạn không có ý nghĩa; Lý do bạn chạy DHCP là nó sẽ tự động gán địa chỉ IP cho bạn.
tripleee

3

Vấn đề của bạn là ở đây:

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.

Bạn sẽ có thể sao chép thông báo lỗi bằng cách chạy dhcpd -t -cf /etc/dhcp/dhcpd.conf.


Tôi đoán rằng bạn muốn chia sẻ kết nối Internet không dây với các máy chủ khác trên Ethernet, như trong sơ đồ cấu trúc liên kết bên dưới.

                            ↑
                            │ 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

Tôi giả sử rằng địa chỉ máy chủ của bạn eth0là 10.10.1.1. Xác nhận rằng bằng cách chạy ip addr show dev eth0.

Sau đó, bạn phải cấu hình /etc/dhcp/dhcpd.conf để phát địa chỉ trên eth0giao diện. Ra khỏi hộp, dhcpdđược cấu hình để không phản hồi bất cứ điều gì, bởi vì một máy chủ DHCP lừa đảo đang vô tình chạy sẽ phá hủy mạng bằng cách đưa địa chỉ cho bất kỳ máy chủ nào yêu cầu.

Trong /etc/dhcp/dhcpd.conf, bạn sẽ cần một khổ thơ như sau:

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;
    }
}

... ngoài việc khai báo như authoritative, domain-name, domain-name-servers, và default-lease-time. (Điều chỉnh khi cần thiết. Chỉ bạn biết những cài đặt nào bạn muốn cho mạng của mình.)

Ngoài ra, đối với Debian, bạn sẽ cần chỉnh sửa /etc/default/isc-dhcp-serverđể đặt

INTERFACES="eth0"

để máy chủ sẽ lắng nghe trên cổng Ethernet. (Bạn không muốn nghe wlan0; điểm truy cập không dây của bạn sẽ chịu trách nhiệm phân phát địa chỉ cho khách hàng không dây.)


2
Vấn đề của anh ấy là systemd đang bỏ qua thông tin lsb init của tập lệnh init cũ, trong đó ghi rõ "# Bắt buộc-Bắt đầu: $ remote_fs $ network $ syslog". Thay vì chờ các đơn vị mạng, nó sẽ khởi động song song dhcpd để chạy ngay cả trước đó.
Florian Heigl

Một /etc/dhcp/dhcpd.conftập tin cấu hình hợp lệ nên được sử dụng để giải quyết vấn đề này. Các isc-dhcp-serverdịch vụ sẽ thất bại bằng một sai lầm dhcpd.confcấu hình.
GAD3R
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.