IP-adresų tinklo mazgams nurodymo proceso automatizavimas: DHCP protokolas
Kaip jau buvo minėta, IP-adresai gali būti nurodomi tinklo administratoriaus rankiniu būdu. Tai yra labai varginanti procedūra. Situacija yra sukomplikuojama dar ir tuo, kad daugelis vartotojų neturi pakankamai žinių tam, kad galėtų konfiguruoti savo kompiuterius darbe vidiniame tinkle, ir todėl turi pasikliauti administratoriaus.
Dinaminis stočių konfigūravimo protokolas (Dynamic Host Configuration Protocol – DHCP) protokolas buvo sukurtas tam, kad atlaisvinti administratorių nuo šių problemų. Pagrindinė DHCP protokolo paskirtis yra dinamiškas IP-adresų nurodymas (nustatymas). Be dinaminio, DHCP protokolas gali palaikyti ir paprastesnius rankinio ir automatinio statinio adresų nurodymo būdus.
Rankinėje adresų nurodymo procedūroje aktyvų vaidmenį turi administratorius, kuris DHCP-serveriui teikia IP ir fizinių adresų ar kitų klientų identifikatorių atitikimo informaciją. Šitie adresai yra siunčiami klientams kaip atsakymas į jų užklausas į DHCP-serverį.
Automatinio statinio adresų nurodymo atveju DHCP-serveris priskiria IP-adresą (gali būti, kad ir kitus kliento konfigūracijos parametrus) iš turimų IP-adresų banko (pool) be operatoriaus dalyvavimo. Priskiriamų adresų banko ribas užduoda administratorius DHCP-serverio konfiguravimo metu. Tarp kliento identifikatoriaus ir IP-adreso vėl gi, kaip ir rankinio adreso nurodymo atveju, egzistuoja griežtas pastovus atitikimas. Jis [atitikimas] yra nurodomas, kai DHCP-serveris priskiria IP-adresą klientui pirmą kartą. Visų sekančių užklausų metu serveris grąžina tą patį pirmą kartą nurodytą IP-adresą.
Dinaminio adresų paskyrimo atveju DHCP-serveris nustato kliento adresą tam tikram apribotam laikotarpiui, kas įgalina pakartotinai naudotis IP-adresais kitus kompiuterius. Dinaminis adresų paskyrimas leidžia konstruoti IP-tinklą, kurio mazgų kiekis daug viršija administratoriui prieinamų IP-adresų kiekį.
DHCP protokolas realizuoja patikimą ir paprastą TCP/IP tinklo konfigūravimo būdą, garantuodamas adresų konfliktų nebuvimą dėl centralizuoto jų paskyrimo valdymo. Administratorius valdo adresų paskyrimo procesą parametro “nuomos trukmė” (lease duration) pagalba. Pastarasis nusako, kiek ilgai kompiuteris gali naudotis paskirtu IP-adresu iki sekančios užklausos DHCP-serveriui dėl IP-adreso “nuomos”.
DHCP protokolo veikimo iliustracija gali būti situacija, kai kompiuteris, esantis DHCP klientu, yra pašalinamas iš potinklio. Tam įvykus, jam priskirtas IP-adresas yra automatiškai atlaisvinamas. Kai kompiuteris yra pajungiamas prie kito potinklo, naujas adresas jam yra priskiriamas automatiškai. Nei vartotojas, nei tinklo administratorius nedalyvauja šiame procese. Šita savybė yra labai svarbi mobiliems vartotojams.
DHCP-protokolas naudoja kliento-serverio modelį. Sistemai startuojant, DHCP kompiuteris-klientas, esantis “inicializavimo” būsenoje, siunčia užklausą discover (“atrasti”), kuri yra plačiai išsiunčiama lokaliame tinkle, ir yra perduodama visiems intertinklo DHCP-serveriams. Kiekvienas DHCP-serveris, gavęs tokį pranešimą, atsako pranešimu offer (“pasiūlymas”), kuris suformuotas iš IP-adreso ir konfigūracijos informacijos.
DHCP-klientas pereina į būseną selection (“išrinkimas”) ir renka konfigūracijos pasiūlymus iš DHCP-serverių. Po to jis pasirenka vieną iš šių pasiūlymų ir išsiunčia pranešimą request (“užklausa”) tam DHCP-serveriui, kurio pasiūlymas buvo išrinktas.
Išrinktas DHCP-serveris siunčia pranešimą DHCP-acknowledgement (“patvirtinimas”), kuriame yra tas pats IP-adresas, koks jau buvo išsiųstas ankščiau “atradimo” stadijoje, ir šio adreso “nuomos” parametrai. Po to, kai klientas gaus tokį patvirtinimą, jis pereina į būseną link (“ryšys”), esant kuriam jis gali dalyvauti TCP/IP tinklo veikloje. Kompiuteriai-klientai, turintys lokalius diskus, išsaugoja gautą adresą, kad jie galėtų juo naudotis vėliau, kai vėl bus kraunama jų sistema. Baigiantis adreso nuomos laikotarpio galiojimo terminui, kompiuteris bando atnaujinti nuomos parametrus per DHCP-serverį. Jei tas pats IP-adresas jam jau nebegali būti suteiktas, tai jam yra grąžinamas kitas IP-adresas.
DHCP protokole yra aprašyta keletą pranešimų tipų, kurie yra naudojami DHCP-serverių atradimui ir parinkimui, konfigūracijos informacijos užklausoms, IP-adreso galiojimo prailginimui ir priešlaikiniam jo galiojimo panaikinimui. Visų šių operacijų paskirtis yra ta, kad būtų galima atlaisvinti tinklo administratorių nuo varginančių rutiniškų tinklo konfigūravimo veiksmų.
Kaip bebūtų, DHCP protokolo panaudojimas sukelia ir tam tikras problemas. Pirmiausia, tai informacinės adresų bazės suderinimo tarp DHCP ir DNS tarnybų problema. Žinoma, kad DNS verčia simbolinius vardus į IP-adresus. Jei IP-adresai bus dinamiškai keičiami DHCP serveriu, tai tuos pakeitimus reikia dinamiškai atvaizduoti ir DNS serverio duomenų bazėje. Nors dinaminės sąveikos tarp DNS ir DHCP tarnybų protokolas jau yra realizuotas kai kurių firmų, bet standartas dar neįsigaliojo.
Antra, IP-adresų nestabilumas komplikuoja tinklo valdymo procesą. Valdymo sistemos, pagrįstos SNMP protokolu yra sukurtos su IP-adresų statiškumo prielaida. Analogiškos problemos kyla ir maršrutizatorių, operuojančių IP-adresais, filtrų konfigūravimo metu.
Galiausiai, adresų paskyrimo procedūros centralizacija mažina sistemos patikimumą: DHCP-serverio lūžimo atveju visi jo klientai negali gauti IP-adreso ir kitos konfigūracijos informacijos. Tokio lūžimo padariniai gali būti sušvelninti, tinkle naudojant keletą DHCP-serverių, kai kiekvienas serveris turi savo IP-adresų banką (pool).