Hvordan installere en DHCP-server i Ubuntu og Debian


Dynamic Host Configuration Protocol (DHCP) er en nettverksprotokoll som brukes til å gjøre det mulig for vertsdatamaskiner å automatisk tildeles IP-adresser og relaterte nettverkskonfigurasjoner fra en server.

IP-adressen tilordnet av en DHCP-server til DHCP-klienten er på en "lease", leietiden varierer vanligvis avhengig av hvor lenge en klientdatamaskin sannsynligvis vil kreve tilkoblingen eller DHCP-konfigurasjonen.

Hvordan fungerer DHCP?

Følgende er en rask beskrivelse av hvordan DHCP faktisk fungerer:

  • Når en klient (som er konfigurert til å bruke DHCP) og koblet til et nettverk starter opp, sender den en DHCPDISCOVER-pakke til DHCP-serveren.
  • Når DHCP-serveren mottar DHCPDISCOVER-forespørselspakken, svarer den med en DHCPOFFER-pakke.
  • Deretter får klienten DHCPOFFER-pakken, og den sender en DHCPREQUEST-pakke til serveren som viser at den er klar til å motta nettverkskonfigurasjonsinformasjonen gitt i DHCPOFFER sterk> pakke.
  • Til slutt, etter at DHCP-serveren mottar DHCPREQUEST-pakken fra klienten, sender den DHCPACK-pakken som viser at klienten nå har tillatelse til å bruke IP-adressen som er tildelt den.

I denne artikkelen vil vi vise deg hvordan du setter opp en DHCP-server i Ubuntu/Debian Linux, og vi vil kjøre alle kommandoene med sudo-kommandoen for å få root-brukerprivilegier.

Oppsett av testmiljø

Vi kommer til å bruke følgende testmiljø for dette oppsettet.

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

Trinn 1: Installere DHCP Server i Ubuntu

1. Kjør kommandoen nedenfor for å installere DCHP-serverpakken, som tidligere var kjent som dhcp3-server.

sudo apt install isc-dhcp-server

2. Når installasjonen er fullført, rediger filen /etc/default/isc-dhcp-server for å definere grensesnittene DHCPD skal bruke for å betjene DHCP-forespørsler, med INTERFACES-alternativet .

For eksempel, hvis du vil at DHCPD-demonen skal lytte på eth0, sett den slik:

INTERFACES="eth0"

Og lær også hvordan du konfigurerer en statisk IP-adresse for grensesnittet ovenfor.

Trinn 2: Konfigurere DHCP-server i Ubuntu

3. Hoved-DHCP-konfigurasjonsfilen er /etc/dhcp/dhcpd.conf, du må legge til all nettverksinformasjonen din for å sendes til klienter her.

Og det er to typer setninger definert i DHCP-konfigurasjonsfilen, disse er:

  • parametere – spesifiser hvordan en oppgave skal utføres, om en oppgave skal utføres eller hvilke nettverkskonfigurasjonsalternativer som skal sendes til DHCP-klienten.
  • erklæringer – definer nettverkstopologien, angi klientene, tilby adresser for klientene, eller bruk en gruppe parametere på en gruppe erklæringer.

4. Nå, åpne og endre hovedkonfigurasjonsfilen, definer DHCP-serveralternativene:

sudo vi /etc/dhcp/dhcpd.conf 

Angi følgende globale parametere øverst i filen, de vil gjelde for alle erklæringene nedenfor (spesifiser verdier som gjelder for scenarioet ditt):

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 nå et undernettverk; her konfigurerer vi DHCP for 192.168.10.0/24 LAN-nettverk (bruk parametere som gjelder for scenarioet ditt).

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

Trinn 3: Konfigurer statisk IP på DHCP-klientmaskin

6. For å tildele en fast (statisk) IP-adresse til en bestemt klientdatamaskin, legg til delen nedenfor der du eksplisitt må spesifisere MAC-adressene og IP-en som 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;
 }

Lagre filen og lukk den.

7. Start deretter DHCP-tjenesten inntil videre, og aktiver den til å starte automatisk fra neste systemoppstart, slik:

------------ 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. Deretter må du ikke glemme å tillate DHCP-tjeneste (DHCP-daemon lytter på port 67/UDP) på brannmuren som nedenfor:

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

Trinn 4: Konfigurere DHCP-klientmaskiner

9. På dette tidspunktet kan du konfigurere klientens datamaskiner på nettverket til automatisk å motta IP-adresser fra DHCP-serveren.

Logg på klientdatamaskinene og rediger konfigurasjonsfilen for Ethernet-grensesnittet som følger (merk grensesnittnavnet/-nummeret):

sudo vi /etc/network/interfaces

Og definer alternativene nedenfor:

auto  eth0
iface eth0 inet dhcp

Lagre filen og avslutt. Og start nettverkstjenester på nytt som dette (eller start på nytt systemet):

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

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

Alternativt kan du bruke GUI på en stasjonær maskin for å utføre innstillingene, sett metoden til Automatic (DHCP) som vist på skjermbildet nedenfor (Fedora 25 desktop).

På dette tidspunktet, hvis alle innstillingene er riktig konfigurert, bør klientmaskinen motta IP-adresser automatisk fra DHCP-serveren.

Det er det! I denne opplæringen viste vi deg hvordan du setter opp en DHCP-server i Ubuntu/Debian. Del tankene dine med oss via tilbakemeldingsdelen nedenfor. Hvis du bruker Fedora-basert distribusjon, gå gjennom hvordan du setter opp en DHCP-server i CentOS/RHEL.