Dynamic Host Configuration Protocol

Dynamic Host Configuration Protocol (DHCP) är ett nätverksprotokoll som ger möjlighet att ge nätverksinformation åt datorer på ett nätsegment och tilldela datorerna IP-adresser samt DNS-servrar dynamiskt. Därmed behöver informationen inte ställas in manuellt på enskilda datorer och gästande datorer kan automatiskt ges tillfälliga IP-adresser. Protokollet är avsett att ersätta BOOTP och är kompatibelt med detta, så att BOOTP-klienter kan använda DHCP utan att märka skillnaden.

Protokollet är avsett att kunna förmedla all konfigurationsinformation en dator eller liknande apparat behöver. För apparater utan inbyggt operativsystem betyder det adressen till en filserver med operativsystem och nätverksdisk, vilket var BOOTP-protokollets viktigaste funktion. Därtill behöver alla datorer information om IP-adress och om det lokala nätverket, routrar, namnservrar, tidsservrar och liknande infrastrukturservrar. Därtill kan DHCP förmedla information om till exempel tillgängliga skrivare och www-servrar. Protokollet innehåller också en möjlighet för maskin- och mjukvarutillverkare samt administratören att definiera ytterligare informationsposter.

Funktion 
När en DHCP-klient startar skickar den ett broadcastpaket över nätverket med en DHCP-förfrågan. Om DHCP-servern har lämpliga lediga IP-adresser skickar den ett erbjudande om IP-adress och annan information ("lease"). Klienten kan godta erbjudandet eller vänta på lämpligare erbjudanden från eventuella andra DHCP-servrar.

Systemadministratören tilldelar ett eller flera IP-adressområden för DHCP-servern, till exempel så att registrerade maskiner får vissa adresser och gästande maskiner andra. Klienter som tidigare fått en IP-adress får i regel samma adress också i fortsättningen, om adressen inte blivit upptagen eller servern hunnit glömma klientens adress. Klienten känns igen antingen på hårdvaruadressen (nätkortets MAC-nummer) eller på en skild identifikation som klienten uppger i sin förfrågan. Rekommendationerna om identifiering skiljer sig mellan olika versioner av standarden.

Ett fält ("vendor class") har reserverats för typen av klient, så att hela klasser av apparater kan särbehandlas (digiboxar, X-terminaler, klienter med olika processorarkitekturer eller liknande). Därtill finns ett motsvarande fält ("user class") som skall kunna ställas in av användaren för motsvarande ändamål, enligt överenskommelse med DHCP-administratören.

I erbjudandet ingår uppgifter om hur lång tid klienten får använda IP-adressen. När denna tid närmar sitt slut skickar klienten en begäran om att få fortsätta använda adressen och därmed sammanhängande information. Motsvarande begäran görs vid omstart, då datorn kan ha flyttats till ett annat nätverk.

Förutom eget IP-nummer förses klienter med information om nätverksadress, gateway, namnserveradresser och annan för kommunikationen nödvändig information. Många andra typer av information kan också efterfrågas och ges, såsom om tillgängliga skrivare, loggserver, fontserver och adress där operativsystem kan hämtas (med tanke på tunna klienter). En klient som fått sin IP-adress på annat sätt kan ändå använda DHCP för annan information.

Säkerhet 
I den ursprungliga DHCP-standarden fanns ingen mekanism för klient och server att konstatera att de var de maskiner de påstod sig vara. Standarden har nu kompletterats på denna punkt (RFC 3118), men många klienter saknar ännu stöd för förändringarna och en klient i ett främmande nät kan inte veta vilken server som är legitim här.

Den främsta hotbilden gentemot servern är att illegitima klienter reserverar alla lediga IP-adresser. Om skilda IP-adresser reserveras för klienter som konstaterats legitima berör problemet endast övriga klienter. Något skydd mot överbelastning av DHCP-servern finns däremot inte, och normalt inte heller mot klienter som identifierar sig som en legitim klient.

En klient kan inte med DHCP förhindras från att använda en felaktig IP-adress, men genom DHCP kan klienten eventuellt hindra en legitim klient från att använda adressen, varvid felaktig användning inte lika lätt avslöjas, och få DHCP-servern att – genom åtgärder andra än de definierade genom protokollet – ge den felaktiga adressen legitimitet.

En felkonfigurerad server, till exempel en server installerad av misstag i samband med något experiment, kan ge klienter nätverksuppgifter som helt enkelt inte fungerar. Protokollet erbjuder skydd mot detta genom ett enkelt lösenord i klartext, som klienten kan konfigureras att känna igen.

En illegitim server kan lura klienter att använda fel namnserver och gateway och därmed kontakta fel serverdatorer vid alla kontakter med Internet. System som SSH och SSL kan skydda, men bara om användaren tar varningarna på allvar och låter bli att använda de felaktiga servrarna.

Protokollet tillåter också mer avancerade skydd, där DHCP-meddelandena skyddas med kryptografiska kontrollsummor och autentisering med nycklar som inte skickas över nätet. Dessa algoritmer förutsätter i allmänhet att varje klient har en egen nyckel och alltså att varje klient registreras. Exempelalgoritmen baserar sig på HMAC-MD5.

Externa länkar 

 Network Working Group - RFC: 2131 - DHCP 
 RFC 2132 – DHCP "options" 
 RFC 3118 – autentisering av DHCP-meddelanden 
 DHCP Articles, Links, Whitepapers
 DHCP fundamental

Applikationsskiktsprotokoll