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.