Website-Suche

So installieren Sie einen DHCP-Server in CentOS, RHEL und Fedora


DHCP (Dynamic Host Configuration Protocol) ist ein Netzwerkprotokoll, das es einem Server ermöglicht, einem Client in einem Netzwerk automatisch eine IP-Adresse zuzuweisen und andere zugehörige Netzwerkkonfigurationsparameter bereitzustellen ein vordefinierter IP-Pool.

Das bedeutet, dass ein Client (der mit dem Netzwerk verbunden ist) jedes Mal, wenn er hochfährt, eine „dynamische“ IP-Adresse erhält, im Gegensatz zu einer „statischen“ IP-Adresse, die sich nie ändert. Die vom DHCP-Server dem DHCP-Client zugewiesene IP-Adresse ist „geleast“. Die Lease-Zeit kann variieren, je nachdem, wie lange ein Client die Verbindung oder DHCP-Konfiguration voraussichtlich benötigen wird.

In diesem Tutorial erfahren Sie, wie Sie einen DHCP-Server in CentOS/RHEL- und Fedora-Distributionen installieren und konfigurieren.

Einrichtung der Testumgebung

Wir werden für dieses Setup die folgende Testumgebung verwenden.

DHCP Server - CentOS 7 
DHCP Clients - Fedora 25 and Ubuntu 16.04

Wie funktioniert DHCP?

Bevor wir fortfahren, erklären wir kurz, wie DHCP funktioniert:

  • Wenn ein Client-Computer (für die Verwendung von DHCP konfiguriert) und mit einem Netzwerk verbunden ist, eingeschaltet wird, leitet er eine DHCPDISCOVER-Nachricht an den DHCP-Server weiter.
  • Und nachdem der DHCP-Server die Anforderungsnachricht DHCPDISCOVER erhalten hat, antwortet er mit einer Nachricht DHCPOFFER.
  • Dann empfängt der Client die DHCPOFFER-Nachricht und sendet eine DHCPREQUEST-Nachricht an den Server, die angibt, dass er bereit ist, die in der DHCPOFFER-Nachricht angebotene Netzwerkkonfiguration zu erhalten. starke> Nachricht.
  • Zu guter Letzt empfängt der DHCP-Server die DHCPREQUEST-Nachricht vom Client und sendet die DHCPACK-Nachricht, die zeigt, dass der Client nun die ihm zugewiesene IP-Adresse verwenden darf .

Schritt 1: DHCP-Server in CentOS installieren

1. Die Installation von DCHP ist ganz einfach. Führen Sie einfach den folgenden Befehl aus.

yum -y install dhcp

Wichtig: Angenommen, dass mehr als eine Netzwerkschnittstelle an das System angeschlossen ist, Sie aber möchten, dass der DHCP-Server nur auf einer der Schnittstellen gestartet wird, legen Sie den DHCP-Server fest um nur auf dieser Schnittstelle wie folgt zu starten.

2. Öffnen Sie die Datei /etc/sysconfig/dhcpd und fügen Sie den Namen der spezifischen Schnittstelle zur Liste von DHCPDARGS hinzu, z. B. wenn Schnittstelle ist eth0, dann fügen Sie hinzu:

DHCPDARGS=eth0

Speichern Sie die Datei und beenden Sie den Vorgang.

Schritt 2: Konfigurieren des DHCP-Servers in CentOS

3. Um einen DHCP-Server einzurichten, besteht der erste Schritt darin, die Konfigurationsdatei dhcpd.conf zu erstellen. Die Haupt-DHCP-Konfigurationsdatei lautet normalerweise / etc/dhcp/dhcpd.conf (standardmäßig leer) speichert alle an Clients gesendeten Netzwerkinformationen.

Es gibt jedoch eine Beispielkonfigurationsdatei /usr/share/doc/dhcp*/dhcpd.conf.sample, die einen guten Ausgangspunkt für die Konfiguration eines DHCP-Servers darstellt.

Und es gibt zwei Arten von Anweisungen, die in der DHCP-Konfigurationsdatei definiert sind:

  • Parameter – geben an, wie eine Aufgabe ausgeführt werden soll, ob eine Aufgabe ausgeführt werden soll oder welche Netzwerkkonfigurationsoptionen an den DHCP-Client gesendet werden sollen.
  • Deklarationen – geben Sie die Netzwerktopologie an, definieren Sie die Clients, bieten Sie Adressen für die Clients an oder wenden Sie eine Gruppe von Parametern auf eine Gruppe von Deklarationen an.

Beginnen Sie daher damit, die Beispielkonfigurationsdatei wie folgt als Hauptkonfigurationsdatei zu kopieren:

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 

4. Öffnen Sie nun die Hauptkonfigurationsdatei und definieren Sie Ihre DHCP-Serveroptionen:

vi /etc/dhcp/dhcpd.conf 

Legen Sie zunächst oben in der Datei die folgenden globalen Parameter fest, die für alle Subnetzwerke gelten (geben Sie Werte an, die für Ihr Szenario gelten):

option domain-name "tecmint.lan";
option domain-name-servers ns1.tecmint.lan, ns2.tecmint.lan;
default-lease-time 3600; 
max-lease-time 7200;
authoritative;

5. Definieren Sie nun ein Subnetzwerk. In diesem Beispiel konfigurieren wir DHCP für das LAN-Netzwerk 192.168.56.0/24 (denken Sie daran, Parameter zu verwenden, die für Ihr Szenario gelten):

subnet 192.168.56.0 netmask 255.255.255.0 {
        option routers                  192.168.56.1;
        option subnet-mask              255.255.255.0;
        option domain-search            "tecmint.lan";
        option domain-name-servers      192.168.56.1;
        range   192.168.56.10   192.168.56.100;
        range   192.168.56.120  192.168.56.200;
}

Schritt 3: Weisen Sie dem DHCP-Client eine statische IP zu

Sie können einem bestimmten Client-Computer im Netzwerk eine statische IP-Adresse zuweisen. Definieren Sie dazu einfach den Abschnitt unten in der Datei /etc/dhcp/dhcpd.conf, in dem Sie dessen MAC-Adressen und die feste IP-Adresse explizit angeben müssen Zu vergebende IP:

host ubuntu-node {
	 hardware  ethernet 00:f0:m4:6y:89:0g;
	 fixed-address 192.168.56.105;
 }

host fedora-node {
	 hardware  ethernet 00:4g:8h:13:8h:3a;
	 fixed-address 192.168.56.110;
 }

Speichern Sie die Datei und schließen Sie sie.

Hinweis: Sie können die Linux-MAC-Adresse mit dem folgenden Befehl herausfinden oder anzeigen.

ifconfig -a eth0 | grep HWaddr

6. Starten Sie nun vorübergehend den DHCP-Dienst und aktivieren Sie ihn so, dass er beim nächsten Systemstart automatisch startet, indem Sie die folgenden Befehle verwenden:

---------- On CentOS/RHEL 7 ---------- 
systemctl start dhcpd
systemctl enable dhcpd

---------- On CentOS/RHEL 6 ----------
service dhcpd start
chkconfig dhcpd on

7. Vergessen Sie als Nächstes nicht, den DHCP-Dienst (DHCPD-Daemon überwacht Port 67/UDP) wie folgt zuzulassen:

---------- On CentOS/RHEL 7 ----------
firewall-cmd --add-service=dhcp --permanent 
firewall-cmd --reload 

---------- On CentOS/RHEL 6 ----------
iptables -A INPUT -p tcp -m state --state NEW --dport 67 -j ACCEPT
service iptables save

Schritt 4: DHCP-Clients konfigurieren

8. Jetzt können Sie Ihre Clients im Netzwerk so konfigurieren, dass sie automatisch IP-Adressen vom DHCP-Server erhalten. Melden Sie sich beim Client-Computer an und ändern Sie die Konfigurationsdatei der Ethernet-Schnittstelle wie folgt (berücksichtigen Sie dabei nicht den Namen/die Nummer der Schnittstelle):

vi /etc/sysconfig/network-scripts/ifcfg-eth0

Fügen Sie die folgenden Optionen hinzu:

DEVICE=eth0
BOOTPROTO=dhcp
TYPE=Ethernet
ONBOOT=yes

Speichern Sie die Datei und beenden Sie den Vorgang.

9. Sie können die Einstellungen auch über die GUI auf einem Desktop-Computer vornehmen. Stellen Sie die Methode auf Automatisch (DHCP) ein, wie im Screenshot unten gezeigt (Ubuntu 16.04-Desktop).

10. Starten Sie dann die Netzwerkdienste wie folgt neu (möglicherweise können Sie das System neu starten):

---------- On CentOS/RHEL 7 ----------
systemctl restart network

---------- On CentOS/RHEL 6 ----------
service network restart

Wenn alle Einstellungen korrekt waren, sollten Ihre Clients zu diesem Zeitpunkt automatisch IP-Adressen vom DHCP-Server erhalten.

Sie können auch lesen:

  1. So installieren und konfigurieren Sie den Multihomed ISC DHCP-Server unter Debian Linux
  2. 10 nützliche „IP“-Befehle zum Konfigurieren von Netzwerkschnittstellen

In diesem Tutorial haben wir Ihnen gezeigt, wie Sie einen DHCP-Server in RHEL/CentOS einrichten. Verwenden Sie das Kommentarformular unten, um uns zu schreiben. In einem kommenden Artikel zeigen wir Ihnen, wie Sie einen DHCP-Server in Debian/Ubuntu einrichten. Bis dahin bleiben Sie immer mit TecMint verbunden.