isc-dhcp-server Problem beim Installieren und Ausführen


8

Ich versuche, meinen Pi als Zugangspunkt mit den Anweisungen von Adafruit einzurichten . Aus irgendeinem Grund sudo apt-get install isc-dhcp-serverschlägt dies jedoch immer fehl. Ich habe mir diesen Link angesehen , aber in meiner dhcpd.conf (von Adafruit) ist ein Subnetz definiert:

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

Wenn ich das tue sudo apt-get install isc-dhcp-server, bekomme ich:

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

und

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!

Wie behebe ich das?


Ich habe immer noch das Problem mit dem neuesten Raspbian. Es scheint mit diesem Fehler zu tun zu haben: bugs.debian.org/cgi-bin/bugreport.cgi?bug=590641 Es scheint noch nicht behoben worden zu sein, und es
betrifft

Antworten:


11

Wenn Sie sicher sind, dass das in dhpcd config festgelegte Subnetz zur bereits konfigurierten Schnittstelle gehört (ich vermute, wlan0). Vergleichen Sie IP-Subnetze in / etc / network / interfaces und /etc/dhcp/dhcpd.conf.

Überprüfen Sie unter Debian (und damit Raspbian) auch / etc / default / isc-dhcp-server, da dieser den Namen Ihrer Schnittstelle wie folgt enthalten sollte:

# 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"

Beide Dinge wurden im Tutorial festgelegt, daher gehe ich davon aus, dass Sie mindestens eines davon weglassen.


Ich habe alles überprüft und alles schien korrekt zu sein, aber etwas hat funktioniert
Calccrypto

2
das ist falsch! Sie müssen die INTERFACES=""Standardeinstellungen für den Versand haben! Sie müssen lediglich ALLE Subnetze / etc / network / interfaces durch eine subnet {}Klausel definieren. Für die Subnetze, die nicht von DHCPD bedient werden müssen, benötigen Sie eine leere subnetKlausel. Das Einfügen des Schnittstellennamens in INTERFACES, wie hier vorgeschlagen, unterbricht DHCPD. Verifiziert auf Raspbian Jessie.
Alexey Vesnin

5

Sie müssen INTERFACES = "" in den Standardeinstellungen haben, wenn es ausgeliefert wird! Noch mehr - das automatische Update kann es übrigens überschreiben. Dieses Problem ist DHCPD-abhängig und nicht vom Betriebssystem abhängig. Sie müssen lediglich ALLE Subnetze / etc / network / interfaces durch eine Subnetzklausel {} definieren. Für die Subnetze, die nicht von DHCPD bedient werden müssen, benötigen Sie eine leere Subnetzklausel wie diese:

# 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 {
}

Der obige Kommentar stammt aus dem ursprünglichen Konfigurationsbeispiel . In meinem Fall in diesem Netzwerk mussten keine IP-Anforderungen bearbeitet werden, aber ohne diese leere subnet Klausel weigerte sich DHCPD, folgendermaßen zu starten:

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.

Die Höllen seltsame Sache über alle diese Fehlermeldung ist , dass /etc/dhcp/dhcpd.conftatsächlich hatte eine voll funktionsfähige Subnetklausel für wlan0 Subnetz. Durch Hinzufügen einer leeren Klausel für das Subnetz eth0 wurden alle Probleme behoben.

Das Einfügen des Schnittstellennamens in INTERFACES, wie hier vorgeschlagen, unterbricht DHCPD. Verifiziert bei Raspbian Jessie und anderen Betriebssystemen.


2
Ich bin mir nicht sicher, ob es die beste Idee ist, mit einer Antwort zu beginnen. Dies ist falsch , die Leute könnten denken, dass es falsch ist ...
Ghanima

@ Ghana danke! Ich habe meinen Kommentar auf eine falsche Antwort kopiert =) habe ihn verpasst =) Behoben!
Alexey Vesnin

1

Der ISC-DHCP-Server ist in Ordnung.

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

Dienst isc-dhcp-Server starten OK?

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

...... Schnittstelle wlan0 macht IP-Adresse

ifconfig, wlan0 IP?

.. nano / etc / network / interfaces

iface wlan0 inet statische Adresse 192.168.42.2 Netzmaske 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 Maske: 255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU: 1500 Metrik: 1 RX-Pakete: 1153 Fehler: 0 verworfen: 0 Überläufe: 0 Frame: 0 TX-Pakete: 1178 Fehler: 0 verworfen: 0 Überläufe: 0 Träger: 0 Kollisionen: 0 txqueuelen: 1000 RX-Bytes: 219204 (214,0 KiB) TX-Bytes: 245615 (239,8 KiB)

Dienst isc-dhcp-Server starten


3
Ihre Antwort lautet etwas kryptisch. Bitte fügen Sie beim nächsten Mal weitere Erklärungen hinzu.
Lenik


-1

Ein häufiger Fehler beim Konfigurieren / Bearbeiten von Headless-Servern ist die Verwendung der Windows-IDE zum Bearbeiten der Dateien. Wenn Sie dies tun, verwenden Sie Notepad ++ und vergessen Sie nicht zu überprüfen, ob das Format => UNIX-Format && Encode in UTF-8 ohne Stückliste ist

Löst die meisten seltsamen Verhaltensweisen wie dieses.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.