Hvordan installere en DHCP-server i CentOS, RHEL og Fedora


DHCP (Dynamic Host Configuration Protocol) er en nettverksprotokoll som lar en server automatisk tildele en IP-adresse og gi andre relaterte nettverkskonfigurasjonsparametere til en klient på et nettverk, fra en forhåndsdefinert IP-pool.

Dette betyr at hver gang en klient (koblet til nettverket) starter opp, får den en "dynamisk" IP-adresse, i motsetning til en "statisk" IP-adresse som aldri endres. IP-adressen som er tildelt av en DHCP-server til DHCP-klienten er på en "lease", leietiden kan variere avhengig av hvor lenge en klient sannsynligvis vil kreve tilkoblingen eller DHCP-konfigurasjonen.

I denne opplæringen vil vi dekke hvordan du installerer og konfigurerer en DHCP-server i CentOS/RHEL- og Fedora-distribusjoner.

Oppsett av testmiljø

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

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

Hvordan fungerer DHCP?

Før vi går videre, la oss kort forklare hvordan DHCP fungerer:

  • Når en klientdatamaskin (konfigurert til å bruke DHCP) og koblet til et nettverk er slått på, videresender den en DHCPDISCOVER-melding til DHCP-serveren.
  • Og etter at DHCP-serveren mottar forespørselen DHCPDISCOVER, svarer den med en DHCPOFFER-melding.
  • Deretter mottar klienten DHCPOFFER-meldingen, og den sender en DHCPREQUEST-melding til serveren som indikerer at den er forberedt på å få nettverkskonfigurasjonen som tilbys i DHCPOFFER sterk> melding.
  • Sist men ikke minst mottar DHCP-serveren DHCPREQUEST-meldingen fra klienten, og sender DHCPACK-meldingen som viser at klienten nå har tillatelse til å bruke IP-adressen som er tildelt den .

Trinn 1: Installere DHCP Server i CentOS

1. Det er ganske enkelt å installere DCHP, bare kjør kommandoen nedenfor.

yum -y install dhcp

Viktig: Forutsatt at det er mer enn ett nettverksgrensesnitt koblet til systemet, men du vil at DHCP-serveren bare skal startes på ett av grensesnittene, setter du inn DHCP-serveren for å starte bare på det grensesnittet som følger.

2. Åpne filen /etc/sysconfig/dhcpd, legg til navnet på det spesifikke grensesnittet i listen over DHCPDARGS, for eksempel hvis grensesnittet er eth0, og legg til:

DHCPDARGS=eth0

Lagre filen og avslutt.

Trinn 2: Konfigurere DHCP-server i CentOS

3. Til å begynne med, for å konfigurere en DHCP-server, er det første trinnet å opprette dhcpd.conf-konfigurasjonsfilen, og hoved-DHCP-konfigurasjonsfilen er vanligvis / etc/dhcp/dhcpd.conf(som er tom som standard), beholder den all nettverksinformasjon sendt til klienter.

Det er imidlertid et eksempel på konfigurasjonsfilen /usr/share/doc/dhcp*/dhcpd.conf.sample, som er et godt utgangspunkt for å konfigurere en DHCP-server.

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

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

Start derfor med å kopiere eksempelkonfigurasjonsfilen som hovedkonfigurasjonsfilen slik:

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

4. Nå åpner du hovedkonfigurasjonsfilen og definer DHCP-serveralternativene:

vi /etc/dhcp/dhcpd.conf 

Start med å angi følgende globale parametere som skal gjelde for alle undernettverk (spesifiser verdier som gjelder for scenariet ditt) øverst i filen:

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; i dette eksemplet vil vi konfigurere DHCP for 192.168.56.0/24 LAN-nettverk (husk å bruke parametere som gjelder for scenarioet ditt):

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

Trinn 3: Tildel statisk IP til DHCP-klienten

Du kan tilordne en statisk IP-adresse til en spesifikk klientdatamaskin på nettverket, ganske enkelt definere delen nedenfor i /etc/dhcp/dhcpd.conf-filen, der du eksplisitt må spesifisere dens MAC-adresser og den faste IP som skal tildeles:

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

Lagre filen og lukk den.

Merk: Du kan finne ut eller vise Linux MAC-adressen ved å bruke følgende kommando.

ifconfig -a eth0 | grep HWaddr

6. Start nå DHCP-tjenesten i mellomtiden og aktiver den til å starte automatisk fra neste systemoppstart, ved å bruke følgende kommandoer:

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

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

7. Deretter må du ikke glemme å tillate DHCP-tjeneste (DHCP-daemon lytter på port 67/UDP) som nedenfor:

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

Trinn 4: Konfigurere DHCP-klienter

8. Nå kan du konfigurere klientene dine på nettverket til å motta IP-adresser automatisk fra DHCP-serveren. Logg på klientmaskinen og endre konfigurasjonsfilen for Ethernet-grensesnittet som følger (ikke ta hensyn til grensesnittnavnet/-nummeret):

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

Legg til alternativene nedenfor:

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

Lagre filen og avslutt.

9. Du kan også utføre innstillingene ved å bruke GUI på en stasjonær datamaskin, sett metoden til Automatic (DHCP) som vist på skjermbildet nedenfor (Ubuntu 16.04 desktop).

10. Start deretter nettverkstjenester på nytt som følger (du kan muligens starte systemet på nytt):

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

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

På dette tidspunktet, hvis alle innstillingene var riktige, bør klientene motta IP-adresser automatisk fra DHCP-serveren.

Du kan også lese:

  1. Hvordan installere og konfigurere Multihomed ISC DHCP Server på Debian Linux
  2. 10 Nyttige "IP"-kommandoer for å konfigurere nettverksgrensesnitt

I denne opplæringen viste vi deg hvordan du setter opp en DHCP-server i RHEL/CentOS. Bruk kommentarskjemaet nedenfor for å skrive tilbake til oss. I en kommende artikkel vil vi vise deg hvordan du setter opp en DHCP-server i Debian/Ubuntu. Inntil da, hold alltid kontakten med TecMint.