Sådan installeres en DHCP-server i Ubuntu og Debian


Dynamic Host Configuration Protocol (DHCP) er en netværksprotokol, der bruges til at muliggøre, at værtscomputere automatisk tildeles IP-adresser og relaterede netværkskonfigurationer fra en server.

IP-adressen, der tildeles af en DHCP-server til DHCP-klienten, er på en "leasing", leasingtiden varierer normalt afhængigt af hvor længe en klientcomputer sandsynligvis vil kræve forbindelse eller DHCP-konfiguration.

Følgende er en hurtig beskrivelse af, hvordan DHCP rent faktisk fungerer:

  • Når en klient (der er konfigureret til at bruge DHCP) og forbundet til et netværk starter op, sender den en DHCPDISCOVER-pakke til DHCP-serveren.
  • Når DHCP-serveren modtager DHCPDISCOVER-anmodningspakken, svarer den med en DHCPOFFER-pakke.
  • Derefter får klienten DHCPOFFER-pakken, og den sender en DHCPREQUEST-pakke til serveren, der viser, at den er klar til at modtage de netværkskonfigurationsoplysninger, der er angivet i DHCPOFFER-pakken.
  • Endelig, efter at DHCP-serveren modtager DHCPREQUEST-pakken fra klienten, sender den DHCPACK-pakken, der viser, at klienten nu har tilladelse til at bruge den IP-adresse, der er tildelt den.

I denne artikel viser vi dig, hvordan du opsætter en DHCP-server i Ubuntu/Debian Linux, og vi kører alle kommandoer med sudo-kommandoen for at få root-brugerrettigheder.

Vi vil bruge følgende testmiljø til denne opsætning.

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

Trin 1: Installation af DHCP-server i Ubuntu

1. Kør kommandoen nedenfor for at installere DCHP-serverpakken, som tidligere var kendt som dhcp3-server.

$ sudo apt install isc-dhcp-server

2. Når installationen er færdig, skal du redigere filen/etc/default/isc-dhcp-serveren for at definere de grænseflader, DHCPD skal bruge til at betjene DHCP-anmodninger, med indstillingen INTERFACES.

For eksempel, hvis du vil have DHCPD-dæmonen til at lytte til eth0 , skal du indstille den således:

INTERFACES="eth0"

Og lær også, hvordan du konfigurerer en statisk IP-adresse til grænsefladen ovenfor.

Trin 2: Konfiguration af DHCP-server i Ubuntu

3. Den vigtigste DHCP-konfigurationsfil er /etc/dhcp/dhcpd.conf , du skal tilføje alle dine netværksoplysninger, der skal sendes til klienter her.

Og der er to typer udsagn defineret i DHCP-konfigurationsfilen, disse er:

  • parametre - angiv, hvordan en opgave skal udføres, om en opgave skal udføres, eller hvilke netværkskonfigurationsmuligheder der skal sendes til DHCP-klienten.
  • erklæringer - definer netværkstopologien, angiv klienterne, tilbud adresser til klienterne, eller anvend en gruppe parametre til en gruppe erklæringer.

4. Åbn og rediger nu hovedkonfigurationsfilen, definer dine DHCP-serverindstillinger:

$ sudo vi /etc/dhcp/dhcpd.conf 

Sæt følgende globale parametre øverst i filen, de gælder for alle nedenstående erklæringer (angiv værdier, der gælder for dit scenario):

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. Definer nu et subnetværk; her konfigurerer vi DHCP til 192.168.10.0/24 LAN-netværk (brug parametre, der gælder for dit scenario).

subnet 192.168.10.0 netmask 255.255.255.0 {
        option routers                  192.168.10.1;
        option subnet-mask              255.255.255.0;
        option domain-search            "tecmint.lan";
        option domain-name-servers      192.168.10.1;
        range   192.168.10.10   192.168.10.100;
        range   192.168.10.110   192.168.10.200;
}

Trin 3: Konfigurer statisk IP på DHCP-klientmaskine

6. For at tildele en fast (statisk) IP-adresse til en bestemt klientcomputer skal du tilføje afsnittet nedenfor, hvor du eksplicit skal angive dets MAC-adresser og den IP, der skal tildeles statisk:

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

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

Gem filen, og luk den.

7. Dernæst skal du starte DHCP-tjenesten indtil videre og aktivere den til at starte automatisk fra næste systemstart, sådan:

------------ SystemD ------------ 
$ sudo systemctl start isc-dhcp-server.service
$ sudo systemctl enable isc-dhcp-server.service


------------ SysVinit ------------ 
$ sudo service isc-dhcp-server.service start
$ sudo service isc-dhcp-server.service enable

8. Glem derefter ikke at tillade DHCP-service (DHCPD-dæmon lytter til port 67/UDP) på firewall som nedenfor:

$ sudo ufw allow  67/udp
$ sudo ufw reload
$ sudo ufw show

Trin 4: Konfiguration af DHCP-klientmaskiner

9. På dette tidspunkt kan du konfigurere dine klienters computere på netværket til automatisk at modtage IP-adresser fra DHCP-serveren.

Log ind på klientcomputerne, og rediger konfigurationsfilen til Ethernet-interface som følger (bemærk interfacets navn/nummer):

$ sudo vi /etc/network/interfaces

Og definer nedenstående muligheder:

auto  eth0
iface eth0 inet dhcp

Gem filen, og afslut. Og genstart netværkstjenester som sådan (eller genstart systemet):

------------ SystemD ------------ 
$ sudo systemctl restart networking

------------ SysVinit ------------ 
$ sudo service networking restart

Alternativt kan du bruge GUI på en stationær maskine til at udføre indstillingerne, indstille metoden til Automatisk (DHCP) som vist på skærmbilledet nedenfor (Fedora 25-skrivebordet).

På dette tidspunkt, hvis alle indstillinger er korrekt konfigureret, skal din klientmaskine automatisk modtage IP-adresser fra DHCP-serveren.

Det er det! I denne vejledning viste vi dig, hvordan du opsætter en DHCP-server i Ubuntu/Debian. Del dine tanker med os via feedback-sektionen nedenfor. Hvis du bruger Fedora-baseret distribution, skal du gennemgå, hvordan du opsætter en DHCP-server i CentOS/RHEL.