Naar inhoud springen

Dynamic Host Configuration Protocol

Uit Wikipedia, de vrije encyclopedie
Dit is een oude versie van deze pagina, bewerkt door 94.209.219.212 (overleg) op 9 feb 2015 om 15:06. (Werking)
Deze versie kan sterk verschillen van de huidige versie van deze pagina.

Dynamic Host Configuration Protocol (DHCP) is een computerprotocol dat beschrijft hoe een computer dynamisch zijn netwerkinstelling van een DHCP-server kan verkrijgen. Het DHCP-protocol is gebaseerd op het Internet Protocol IP en werkt met UDP-pakketten.

Werking

DHCP DORA (D)iscover (O)ffer (R)equest (A)ck proces
DHCP DORA (D)iscover (O)ffer (R)equest (A)ck proces
  • DHCP-Discover: De clientcomputer stuurt een netwerkpakket gericht aan alle computers binnen het eigen ethernet-segment (Multicast of een Broadcastpakket genoemd.).
  • DHCP-offer: Alle computers in dit segment ontvangen dit, dus ook de DHCP-server. Uitsluitend de DHCP-server in het netwerk behoort hierop te reageren: De server stuurt een DHCP-offer-pakket terug.
  • DHCP-Request: De client weet nu van wie hij het IP-adres kan krijgen. De client gebruikt een broadcast-sessie om daadwerkelijk de aanvraag bij de DHCP-server te doen en overige DHCP-servers te laten weten dat hij een IP-adres heeft verkregen via een andere DHCP-server.
  • DHCP-ACK: De DHCP-server stuurt de informatie met de netwerkinstellingen terug naar de client.
  • Dit proces is ook beter bekend onder de afkorting DORA. (D)iscover (O)ffer (R)equest (A)cknowledge
  • De client gebruikt de gegevens van de eerste DHCP-server waarvan hij antwoord krijgt, en gebruikt deze gegevens om zijn netwerkverbinding in te stellen. De betreffende computer heeft nu een (uniek) IP-adres en kan derhalve communiceren met andere computers.
  • DHCP-NAK: Bij een fout zal de DHCP-server antwoorden met een DHCP-NAK-pakket.
  • DHCPDECLINE: De clientcomputer rapporteert terug naar de DHCP-server dat het netwerkadres al reeds in gebruik is.
  • DHCPRELEASE: De clientcomputer rapporteert terug naar de DHCP-server dat het netwerkadres vrijgegeven mag worden en annuleert hierdoor de huidige leasetime.gghh

Gegevens die onder meer (kunnen) worden doorgestuurd zijn:

  • Een uniek netwerknummer (IP-adres);
  • Welk(e) adres(sen) in het netwerk een gateway is/zijn, waarmee er verbinding is met een ander netwerk, zoals het internet (niet noodzakelijk);
  • Wat de naamserver(s) (DNS-servers) is/zijn (niet noodzakelijk);
  • Hoe groot het netwerk is, dus onder welke omstandigheden de doelcomputer binnen het netwerk ligt of via de gateway benaderd moet worden. Dit wordt de netmask genoemd.
  • De geldigheidsduur (leasetime of looptijd)

DHCP vindt zijn oorsprong in het BootP-protocol, dat oorspronkelijk ontworpen was om computers hun besturingssysteem vanaf het netwerk te laten laden. En nu bevindt zich dat in het TCP/IP-protocol, om precies te zijn in de internet-laag. Je kan deze laag vergelijken met de netwerklaag in het OSI-model (laag 3).

Handmatig

Het is niet noodzakelijk om DHCP te gebruiken. Een computer kan ook handmatig van de correcte instellingen worden voorzien. In de praktijk echter vinden veel systeembeheerders DHCP eenvoudiger, omdat zij dan niet zelf alle computers in het netwerk handmatig hoeven te configureren. Ook als er zich wijzigingen in het netwerk voordoen, hoeft alleen de DHCP-server van de nieuwe instellingen te worden voorzien.

In veel grote netwerken wordt juist wèl gewerkt met vaste IP-nummers (en dus geen DHCP), om op die wijze voor tienduizenden PC's de instellingen eenmalig handmatig te verrichten. Daarmee kunnen ook eenvoudiger routes van het ene netwerkapparaat (PC) naar het andere (een printer bijvoorbeeld) worden opgegeven, op basis van het IP-adres. Eén van de grootste netwerken in Nederland (Defensie MULAN) is op deze wijze ingericht. Bijkomend voordeel op gebied van beveiliging is dat IP-pakketten van onbekende MAC-adressen meteen kunnen worden gedetecteerd.

ISP's

Internet Service Providers maakten ook graag gebruik van DHCP. Zo konden ze het aantal benodigde IP-adressen beperken, omdat niet al hun abonnees tegelijkertijd verbinding maken. Dit aantal was dan gelimiteerd aan het aantal modems dat bij deze ISP aanwezig was (door landelijke uitrol ADSL en kabelinternet achterhaald). Omdat veel computers met ADSL of kabelinternet continu op het internet aangesloten zijn (althans het modem thuis aan blijft staan), is tegenwoordig (2009) elke abonnee voorzien van een eigen IP-adres.[bron?] Een paar aanbieders schermen nog met 'dynamisch IP-adres' maar dit is met name om geen garantie te geven dat men altijd hetzelfde IP-adres blijft houden.

Looptijd

Voorbeeld van DHCP lease van 1 dag

Aan de DHCP-gegevens is een bepaalde leasetime of looptijd gekoppeld, variërend van enkele minuten tot enkele weken. In die tijd is het IP-adres voor deze specifieke computer gereserveerd. Voordat de leasetijd verlopen is moet de computer opnieuw een aanvraag indienen, en krijgt dan eventueel een ander IP-adres (maar meestal hetzelfde IP-adres). Als een computer, of netwerkverbinding, herstart tijdens de looptijd van een lease voorziet het protocol in een voortzetting van het reeds verkregen IP-nummer zodat de eerste stap (initiële aanvraag) overgeslagen wordt en een verlenging gebruikt wordt. Voor het opnieuw uitgeven van IP-adressen gebruikt de DHCP-server een groep adressen ('pool'). Deze pool is bij thuisgebruik vaak 50 adressen, bijvoorbeeld van 192.168.1.100 - 192.168.1.149. In de afbeelding hierlangs zie je dat de DHCP-server (192.168.1.1) een client het adres 192.168.1.111 heeft gegeven met een lease van 86400 seconden (1 dag).

Breedband

In het geval van breedband-internetverbindingen, zoals kabelinternet en ADSL, wordt vaak ook met DHCP gewerkt, hoewel een aantal providers ook vaste adressen uitdeelt. Mensen met een dynamisch IP-adres zullen iets meer moeite moeten doen als zij een server willen draaien. Hoewel hun IP-adres over het algemeen hetzelfde zal blijven (toegewezen op basis van hun MAC-adres), kan het zijn dat het toch verandert. Dit gebeurt bijvoorbeeld als de host langere tijd offline is geweest (en het IP-adres is vrijgegeven of zelfs al toegewezen aan iemand anders), of als er bijvoorbeeld een andere netwerkkaart wordt geplaatst. De ISP herkent dan het MAC-adres van de host niet meer. Eventuele DNS-instellingen moeten dan worden aangepast. Dit kan handmatig of automatisch door middel van een script (zoals DynDNS) gebeuren.

Problemen bij DHCP

Wanneer de computer niet als zodanig is ingesteld dat deze zelf aan de DHCP-server verlenging van de looptijd vraagt, of er is langere tijd geen DHCP-server beschikbaar, wordt de verbinding met een regelmaat van een half uur tot een dag tijdelijk verbroken. Dit kan bij applicaties als IRC hinderlijk zijn. Ook het onjuist instellen van de DHCP-server en/of de overige netwerkapparatuur kan problemen geven: indien een netwerkgebruiker een IP-adres gebruikt dat binnen de pool van de DHCP-server ligt, dan zijn er op een gegeven moment twee netwerkapparaten met hetzelfde IP-adres. Hierdoor ontstaan op ethernetverbindingen veel collisions en haperende apparatuur. Het reserveren van adresgebieden is van groot belang.

DHCP Authentication

Om DHCP veiliger te maken werd in juni 2001 authenticatie voor DHCP-berichten bedacht. DHCP Authentication is beschreven in RFC 3118[1] en is een verbetering in de beveiliging die de normale DHCP-berichten met geverifieerde servers/clients vervangt. Clients en servers controleren de afkomst van de bron met verificatie-informatie en berichten. Indien ongeldig zal de bron geweigerd worden. Een DHCP Authentication-server kan tevens overweg met clients die alleen het standaard DHCP-protocol ondersteunen.

DHCP Relay Agent

De DHCP-relay-agent communiceert met een DHCP-server in een ander IP-netwerk (segment) en fungeert als een proxy voor DHCP broadcast berichten die moeten worden gerouteerd naar dat andere IP-netwerk. Hierdoor verloopt het DHCP-verkeer, in verschillende netwerken, transparanter. Het inzetten van dit protocol gaat vaak pas interessant worden bij grote netwerkomgevingen met verschillende DHCP-servers en verschillende IP-reeksen. Om de DHCP-relay-agent goed DHCP-verkeer te laten uitwisselen is het essentieel om zowel een DHCP-server als een DHCP-relay-agent te hebben in de andere IP-netwerken. De DHCP-relay-agent wordt geïnstalleerd op een geschikt apparaat (router, modem of server) dat het protocol ondersteunt.

DHCP MAC Binding

DHCP wijst een willekeurig IP-adres toe aan elk apparaat in het netwerk. Om te voorkomen dat een apparaat steeds een ander IP-adres krijgt bestaat er MAC-binding (Bind IP to MAC). In feite doet MAC-binding niets anders dan dit: Een MAC-adres met een vast IP-adres reserveren in het netwerk met een leasetime die nooit verloopt. Het grote voordeel hiervan is dat er een betere controle is op de apparaten binnen een netwerk en het beheer met DHCP doeltreffender is. MAC-binding kent twee mogelijkheden:

  • Normal mode: Het apparaat met MAC-adres krijgt steeds hetzelfde IP-adressen en zal niet verlopen.
  • Strict mode: Het apparaat met MAC-adres krijgt steeds hetzelfde IP-adressen en zal niet verlopen. Niet geautoriseerde apparaten krijgen wel een tijdelijk IP-adres maar kunnen niet de router/server bereiken waarop MAC Binding werkt. Toegang tot internet wordt tevens geblokkeerd.

Voorbeeld bij ADSL

Een mogelijke instelling zoals bij ADSL gebruikt kan worden: 10.0.0.0

10.0.0.1 standaard gateway (ADSL-modem)

10.0.0.150 - 10.0.0.200 pool van uit te geven IP-adressen

10.0.0.255 broadcastadres (bericht aan alle netwerkstations in dit segment)

Apparatuur die via DHCP werkt, krijgt van de DHCP-server op aanvraag een adres uit de adressen-pool. Overige apparatuur op het netwerk dat niet met DHCP werkt (dus handmatig of fabrieksmatig is ingesteld) moeten buiten dit adressen-gebied blijven. Een mogelijke indeling zou kunnen zijn:

10.0.0.10 - 10.0.0.50 netwerkopslagapparatuur (NAS) en netwerkprinters

10.0.0.51 - 10.0.0.100 PC's op vaste adressen

Zie ook

Referenties

  1. [1] RFC 3118 Authentication for DHCP messages
  • (en) RFC 2131 Dynamic Host Configuration Protocol