Wie installiere und konfiguriere ich einen DHCP-Server?

55

Wie installiere und konfiguriere ich einen DHCP-Server in Ubuntu 12.04?

Ich benötige eine schrittweise Anleitung, wenn jemand eine hat.

Galgalesh
quelle
Nicht der benutzerfreundlichste, aber: help.ubuntu.com/community/dhcp3-server
adempewolff
1
Dies könnte das gleiche sein, aber ... comtech247.net/2012/05/01/…
Mitch
2
"Beachten Sie, dass der ISC DHCP-Server in Ubuntu 12.04 ein Übergangspaket für den DHCP3-Server ist." wiki.openelec.tv/…
1
Ich bevorzuge dnsmasqeinen DNS- und DHCP-Server mit einfacher Konfigurationsdateisyntax.
Reinier Post

Antworten:

55

Als erstes müssen Sie die benötigten Pakete installieren.

Öffne ein Terminal und tippe:

sudo apt-get install isc-dhcp-server

Es gibt zwei Haupt Dateien /etc/default/isc-dhcp-serverund /etc/dhcp/dhcpd.confdie wir konfigurieren müssen , so können die erste nehmen.

Öffnen Sie ein Terminal und verwenden Sie Ihren bevorzugten Texteditor:

sudo vim /etc/default/isc-dhcp-server

Sie sollten Folgendes erhalten:

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

Ersetzen Sie eth0 oben durch den Namen Ihrer Netzwerkschnittstelle, auf der der Server Adressen leasen soll. Auf die nächste Datei.

Öffne ein Terminal und tippe:

sudo vim /etc/dhcp/dhcpd.conf

was sollte Ihnen die Ausgabe unten geben.

#
#Sample configuration file for ISC dhcpd for Debian
#
#Attention: If /etc/ltsp/dhcpd.conf exists, that will be used as
#configuration file instead of this file.
#
#
....
option domain-name “example.org”;
option domain-name-servers ns1.example.org, ns2.example.org;
option domain-name “comtech.com”;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 10.0.0.0 netmask 255.255.255.0 {
range 10.0.0.150 10.0.0.253;
option routers 10.0.0.2;
option subnet-mask 255.255.255.0;
option broadcast-address 10.0.0.254;
option domain-name-servers 10.0.0.1, 10.0.0.2;
option ntp-servers 10.0.0.1;
option netbios-name-servers 10.0.0.1;
option netbios-node-type 8;
 ......
}

Dies muss ein wenig erklärt werden.

  1. Passen Sie Ihre Einstellungen an Ihre Netzwerkanforderungen an.
  2. Die Option Domain Name ist Ihr DNS-Zonenname. Zum Beispiel ist meine auf comtech.com eingestellt.
  3. Bereich sollte der Bereich von IP-Adressen sein, den der Server an Clients weitergeben soll.

Starten Sie nun den DHCP-Dienst neu, indem Sie Folgendes eingeben:

sudo service isc-dhcp-server restart

Das ist es!! Ihr DHCP-Server sollte laufen, es ist jedoch am besten zu überprüfen. Öffne ein Terminal und tippe:

sudo netstat -uap

die zeigen Ihnen , so etwas wie die folgenden (Look dhcpd, nmbdund named):

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address State PID/Program name
udp        0      0 10.0.0.255:netbios-dgm  *:*                   1016/nmbd
udp        0      0 10.0.0.255:netbios-ns   *:*                   1016/nmbd
udp        0      0 *:bootps                *:*                   4525/dhcpd
udp        0      0 *:netbios-dgm           *:*                   1016/nmbd
udp        0      0 *:netbios-ns            *:*                   1016/nmbd
udp        0      0 chris-desktop:domain    *:*                   1273/named
udp        0      0 chris-desktop.lo:domain *:*                   1273/named
udp        0      0 chris-deskt:netbios-dgm *:*                   1016/nmbd
udp        0      0 chris-deskto:netbios-ns *:*                   1016/nmbd
udp6       0      0 [::]:domain             [::]:*                1273/named
BuZZ-dEE
quelle
1
Nur ein Wort der Vorsicht, stellen Sie sicher, zu verwenden /etc/dhcp/dhcpd.confund nicht /etc/dhcp3/dhcpd.conf
puk
1
Wenn ich den Dienst diese Nachricht neu starten wird angezeigt: stop: Unknown instance: isc-dhcp-server start/running, process 3027. Ich kann den Dienst nicht starten. Ich benutze Ubuntu 13.10.
JJD
1
gut . aber stellen Sie sicher, dass Sie statische IP b4 zugewiesen haben, indem Sie den DHCP-Dienst
starten
Dies ist nicht so schwer, aber die Verwendung dnsmasqist einfacher, wenn Sie mich fragen.
Reinier Post
5

Zusätzliche Dinge können in der akzeptierten Antwort enthalten sein

  1. Weisen Sie eine statische IP-Adresse zu, bevor Sie den Dienst isc-dhcp-server starten.

  2. Sie können IP-Adressen für Geräte wie Drucker und Linux-Computer reservieren, indem Sie die MAC-ID im folgenden Format im jeweiligen Subnetz hinzufügen.

    ------
    host bla1 { 
            hardware ethernet DD:GH:DF:E5:F7:D7;
            fixed-address 10.0.0.10;
    }
    ----
    

    Dhcp3-Server Community Wiki

    Ubuntu DHCP Server

ubuntuhelp
quelle
1

Von der Ubuntu-Community-Seite dhcp3-server von Contributors zum Ubuntu-Dokumentations-Wiki :

Dynamic Host Configuration Protocol (DHCP)

Das Dynamic Host Configuration Protocol (DHCP) ist ein Netzwerkdienst, mit dem Hostcomputern automatisch Einstellungen von einem Server zugewiesen werden können, anstatt jeden Netzwerkhost manuell zu konfigurieren. Computer, die als DHCP-Clients konfiguriert sind, haben keine Kontrolle über die Einstellungen, die sie vom DHCP-Server erhalten, und die Konfiguration ist für den Benutzer des Computers transparent.

Installation

Geben Sie an einer Terminal-Eingabeaufforderung den folgenden Befehl ein, um dhcpd zu installieren:

sudo apt-get install dhcp3-server

Möglicherweise müssen Sie die Standardkonfiguration ändern, indem Sie die Datei /etc/dhcp3/dhcpd.conf entsprechend Ihren Anforderungen und der jeweiligen Konfiguration bearbeiten.

Sie müssen auch bearbeiten /etc/default/dhcp3-server, um die Schnittstellen anzugeben, die dhcpd abhören soll. Standardmäßig hört es auf eth0.

Aufbau

Die Fehlermeldung, mit der die Installation endet, ist möglicherweise etwas verwirrend, aber die folgenden Schritte helfen Ihnen bei der Konfiguration des Dienstes:

In den meisten Fällen möchten Sie eine IP-Adresse nach dem Zufallsprinzip zuweisen. Dies kann mit folgenden Einstellungen erfolgen:

nano -w /etc/dhcp3/dhcpd.conf
# Sample /etc/dhcpd.conf
# (add your comments here) 
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.254;
option domain-name-servers 192.168.1.1, 192.168.1.2;
option domain-name "mydomain.example";

subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.100;
range 192.168.1.150 192.168.1.200;
} 

Dies führt dazu, dass der DHCP-Server einem Client eine IP-Adresse aus dem Bereich 192.168.1.10-192.168.1.100 oder 192.168.1.150-192.168.1.200 gibt. Es wird eine IP-Adresse für 600 Sekunden geleast, wenn der Client nicht nach einem bestimmten Zeitrahmen fragt. Andernfalls beträgt die maximale (zulässige) Lease 7200 Sekunden. Der Server "weist" den Client außerdem an, 255.255.255.0 als Subnetzmaske, 192.168.1.255 als Broadcast-Adresse, 192.168.1.254 als Router / Gateway und 192.168.1.1 und 192.168.1.2 als DNS-Server zu verwenden.

Wenn Sie einen WINS-Server für Ihre Windows-Clients angeben müssen, müssen Sie die Option netbios-name-servers einfügen, z

nano -w /etc/default/dhcp3-server
option netbios-name-servers 192.168.1.1; 

DHCP3-Server und mehrere Schnittstellen

Beispiel für mehrere Schnittstellen

Schnittstelle

nano -w /etc/network/interfaces
auto lo
iface lo inet loopback

mapping hotplug
        script grep
        map eth1

iface eth1 inet dhcp

auto eth0
iface eth0 inet static
    address 10.152.187.1
    netmask 255.255.255.0

auto wlan0
  iface wlan0 inet static
    address 192.168.1.1
    netmask 255.255.255.0
    up     /sbin/iwconfig wlan0 mode TTTTTT && /sbin/iwconfig wlan0 enc
restricted && /sbin/iwconfig wlan0 key [Y] XXXXXXXX && /sbin/iwconfig
wlan0 essid SSSSSSSS

auto eth1

Wählen Sie Schnittstellenkarte

nano -w /etc/default/dhcp3-server
INTERFACES="wlan0 eth0"

Subnetz konfigurieren

nano -w /etc/dhcp3/dhcpd.conf
ddns-update-style none;
log-facility local7;

subnet 192.168.1.0 netmask 255.255.255.0 {

        option routers                  192.168.1.1;
        option subnet-mask              255.255.255.0;
        option broadcast-address        192.168.1.255;
        option domain-name-servers      194.168.4.100;
        option ntp-servers              192.168.1.1;
        option netbios-name-servers     192.168.1.1;
        option netbios-node-type 2;
        default-lease-time 86400;
        max-lease-time 86400;

        host bla1 {
                hardware ethernet DD:GH:DF:E5:F7:D7;
                fixed-address 192.168.1.2;
        }
        host bla2 {
                hardware ethernet 00:JJ:YU:38:AC:45;
                fixed-address 192.168.1.20;
        }
}

subnet  10.152.187.0 netmask 255.255.255.0 {

        option routers                  10.152.187.1;
        option subnet-mask              255.255.255.0;
        option broadcast-address        10.152.187.255;
        option domain-name-servers      194.168.4.100;
        option ntp-servers              10.152.187.1;
        option netbios-name-servers     10.152.187.1;
        option netbios-node-type 2;

        default-lease-time 86400;
        max-lease-time 86400;

        host bla3 {
                hardware ethernet 00:KK:HD:66:55:9B;
                fixed-address 10.152.187.2;
        }
}

Überprüfen Sie die Route

ip route
192.168.1.0/24 dev wlan0  scope link
82.16.TT.0/24 dev eth1  scope link
10.152.187.0/24 dev eth0  scope link
default via 82.16.TT.UU dev eth1
Eliah Kagan
quelle