problema di installazione ed esecuzione di isc-dhcp-server


8

Sto cercando di impostare il mio pi come punto di accesso con le istruzioni di Adafruit . Tuttavia, per qualche motivo, sudo apt-get install isc-dhcp-serverfallisce sempre. Ho guardato questo link , ma c'è una sottorete definita nel mio dhcpd.conf (da Adafruit):

/etc/dhcp/dhcpd.conf

              .
              .
              .
#    range 10.0.29.10 10.0.29.230;
#  }
#}

subnet 192.168.42.0 netmask 255.255.255.0 {
range 192.168.42.10 192.168.42.50;
option broadcast-address 192.168.42.255;
option routers 192.168.42.1;
default-lease-time 600;
max-lease-time 7200;
option domain-name "local";
option domain-name-servers 8.8.8.8, 8.8.4.4;
}

Quando lo faccio sudo apt-get install isc-dhcp-server, ottengo:

Generating /etc/default/isc-dhcp-server...
[FAIL] Starting ISC DHCP server: dhcpd[....] check syslog for diagnostics. ... failed!
 failed!

e

pi@raspberrypi ~ $ sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
pi@raspberrypi ~ $ sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
pi@raspberrypi ~ $ sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED \
> -j ACCEPT
pi@raspberrypi ~ $ sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT
pi@raspberrypi ~ $ sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"
pi@raspberrypi ~ $ sudo service hostapd start
[ ok ] Starting advanced IEEE 802.11 management: hostapd.
pi@raspberrypi ~ $ sudo service isc-dhcp-server start
[FAIL] Starting ISC DHCP server: dhcpd[....] check syslog for diagnostics. ... failed!
 failed!

/ Var / log / syslog:

Jul 26 03:05:25 raspberrypi dhcpd: Wrote 0 leases to leases file.
Jul 26 03:05:25 raspberrypi dhcpd:
Jul 26 03:05:25 raspberrypi dhcpd: No subnet declaration for wlan0 (192.168.42.\
1).
Jul 26 03:05:25 raspberrypi dhcpd: ** Ignoring requests on wlan0.  If this is n\
ot what
Jul 26 03:05:25 raspberrypi dhcpd:    you want, please write a subnet declarati\
on
Jul 26 03:05:25 raspberrypi dhcpd:    in your dhcpd.conf file for the network s\
egment
Jul 26 03:05:25 raspberrypi dhcpd:    to which interface wlan0 is attached. **
Jul 26 03:05:25 raspberrypi dhcpd:
Jul 26 03:05:25 raspberrypi dhcpd:
Jul 26 03:05:25 raspberrypi dhcpd: Not configured to listen on any interfaces!

Come posso risolvere questo problema?


Ho ancora il problema sull'ultimo Raspbian aggiornato. Sembra essere correlato a questo errore: bugs.debian.org/cgi-bin/bugreport.cgi?bug=590641 Non sembra che sia stato ancora corretto, e probabilmente influisce anche su Raspbian
coolnodje

Risposte:


11

se sei sicuro che la sottorete impostata in dhpcd config appartiene all'interfaccia già configurata (suppongo, wlan0). Confronta le sottoreti IP in / etc / network / interfaces e /etc/dhcp/dhcpd.conf.

Inoltre, su Debian (e quindi su Raspbian), controlla / etc / default / isc-dhcp-server, poiché dovrebbe contenere il nome della tua interfaccia, in questo modo:

# Defaults for dhcp initscript
# sourced by /etc/init.d/dhcp
# installed at /etc/default/isc-dhcp-server by the maintainer scripts

#
# This is a POSIX shell fragment
#

# On what interfaces should the DHCP server (dhcpd) serve DHCP requests?
#   Separate multiple interfaces with spaces, e.g. "eth0 eth1".
INTERFACES="wlan0"

entrambe le cose sono state impostate nel tutorial, quindi presumo che tu ne ometta almeno una.


Ho controllato tutto, e tutto sembrava corretto, ma qualcosa ha funzionato
calccrypto il

2
questo è sbagliato! È necessario disporre delle INTERFACES=""impostazioni predefinite al momento della spedizione! Tutto ciò che serve è definire TUTTE le sottoreti / etc / network / interfaces mediante una subnet {}clausola. Per le sottoreti non è necessario essere servite da DHCPD, è necessaria una subnetclausola vuota . Mettere il nome dell'interfaccia in INTERFACCE, come suggerito qui, interrompe DHCPD. Verificato su Raspbian Jessie.
Alexey Vesnin,

5

È necessario avere INTERFACES = "" nelle impostazioni predefinite al momento della spedizione! Ancora di più: l'aggiornamento automatico può sovrascriverlo tra l'altro. Questo problema dipende dal DHCPD, non dal sistema operativo. Tutto ciò che serve è definire TUTTE le sottoreti / etc / network / interfaces mediante una clausola di sottorete {}. Per le sottoreti non è necessario che siano servite da DHCPD è necessaria una clausola di sottorete vuota come questa:

# No service will be given on this subnet, but declaring it helps the
# DHCP server to understand the network topology.

subnet 192.168.0.0 netmask 255.255.255.0 {
}

il commento sopra è dal campione di configurazione originale spedito . Nel mio caso su questa rete non è stato necessario soddisfare alcuna richiesta IP, ma senza questa clausola vuota subnet DHCPD ha rifiutato di iniziare in questo modo:

Jan 29 19:08:44 pi dhcpd: Internet Systems Consortium DHCP Server 4.3.1
Jan 29 19:08:44 pi dhcpd: Copyright 2004-2014 Internet Systems Consortium.
Jan 29 19:08:44 pi dhcpd: All rights reserved.
Jan 29 19:08:44 pi dhcpd: For info, please visit https://www.isc.org/software/dhcp/
Jan 29 19:08:44 pi dhcpd: Internet Systems Consortium DHCP Server 4.3.1
Jan 29 19:08:44 pi dhcpd: Copyright 2004-2014 Internet Systems Consortium.
Jan 29 19:08:44 pi dhcpd: All rights reserved.
Jan 29 19:08:44 pi dhcpd: For info, please visit https://www.isc.org/software/dhcp/
 Jan 29 19:08:44 pi dhcpd: Wrote 2 leases to leases file.
 Jan 29 19:08:44 pi dhcpd:
 Jan 29 19:08:44 pi dhcpd: No subnet declaration for wlan0 (no IPv4 addresses).
 Jan 29 19:08:44 pi dhcpd: ** Ignoring requests on wlan0.  If this is not what
 Jan 29 19:08:44 pi dhcpd:    you want, please write a subnet declaration
 Jan 29 19:08:44 pi dhcpd:    in your dhcpd.conf file for the network segment
 Jan 29 19:08:44 pi dhcpd:    to which interface wlan0 is attached. **
 Jan 29 19:08:44 pi dhcpd:
 Jan 29 19:08:44 pi dhcpd:
 Jan 29 19:08:44 pi dhcpd: Not configured to listen on any interfaces!
 Jan 29 19:08:44 pi dhcpd:
 Jan 29 19:08:44 pi dhcpd: If you think you have received this message due to a bug rather
 Jan 29 19:08:44 pi dhcpd: than a configuration issue please read the section on submitting
 Jan 29 19:08:44 pi dhcpd: bugs on either our web page at www.isc.org or in the README file
 Jan 29 19:08:44 pi dhcpd: before submitting a bug.  These pages explain the proper
 Jan 29 19:08:44 pi dhcpd: process and the information we find helpful for debugging..
 Jan 29 19:08:44 pi dhcpd:
 Jan 29 19:08:44 pi dhcpd: exiting.
 Jan 29 19:08:46 pi isc-dhcp-server[3332]: Starting ISC DHCP server: dhcpdcheck syslog for diagnostics. ... failed!
 Jan 29 19:08:46 pi isc-dhcp-server[3332]: failed!
 Jan 29 19:08:46 pi systemd[1]: isc-dhcp-server.service: control process exited, code=exited status=1
 Jan 29 19:08:46 pi systemd[1]: Unit isc-dhcp-server.service entered failed state.

La cosa strana di tutto questo messaggio di errore è che in /etc/dhcp/dhcpd.confrealtà aveva una clausola di sottorete completa per la sottorete di wlan0. L'aggiunta di una clausola vuota per la sottorete eth0 ha risolto tutto.

Mettere il nome dell'interfaccia in INTERFACCE, come suggerito qui, interrompe DHCPD. Verificato su Raspbian Jessie e su altri sistemi operativi.


2
Non sono sicuro che sia l'idea migliore per iniziare una risposta con Questo è sbagliato , la gente potrebbe pensare che sia sbagliato ...
Ghanima

@Ghanima grazie! Ho copiato il mio commento con una risposta sbagliata =) mancato = = risolto!
Alexey Vesnin,

1

Il server DHCP ISC è OK.

cambia / etc / default / isc-dhcp-server INTERFACES = "wlan0" in eth0

il servizio isc-dhcp-server si avvia OK?

cambia / etc / default / isc-dhcp-server INTERFACES = "eth0" in wlan0

...... interfaccia wlan0 fa l'indirizzo IP

ifconfig, wlan0 IP?

.. nano / etc / network / interfaces

iface wlan0 indirizzo statico inet 192.168.42.2 maschera di rete 255.255.255.0 ..

ifdown wlan0 ifup wlan0 ifconfig wlan0

wlan0 Link encap: Ethernet HWaddr 00: 00: xx: xx: xx: xx inet addr: 192.168.42.2 Bcast: 192.168.42.255 Maschera: 255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU: 1500 Metrico: 1 pacchetti RX: 1153 errori: 0 eliminato: 0 sovraccarichi: 0 frame: 0 pacchetti TX: 1178 errori: 0 scartato: 0 sovraccarichi: 0 portante: 0 collisioni: 0 txqueuelen: 1000 byte RX: 219204 (214,0 KiB) byte TX: 245615 (239,8 KiB)

servizio start isc-dhcp-server


3
la tua risposta è un po 'enigmatica, per favore, aggiungi altre spiegazioni la prossima volta?
lenik,


-1

Errore comune quando configuro / modifico server senza testa è usare Windows IDE per modificare i file. Se lo fai, usa Notepad ++ , quindi non dimenticare di controllare il formato è => formato UNIX && Encode in UTF-8 senza BOM

Risolve la maggior parte dei comportamenti strani come questo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.