|
11. DHCP
Každé zařízení na síti založené na protokolu TCP/IP musí mít jedinečnou adresu IP, aby bylo schopno přistupovat k síti a jejím prostředkům. Bez protokolu DHCP je nutno provést nakonfigurování protokolu IP ručně u nových počítačů, počítačů přesunovaných z jedné podsítě na jinou a počítače odebírané ze sítě.
11.1 Funkce DHCP
Protokol DHCP je založen na modelu klient/server, jak je znázorněno na obrázku.
Správce sítě zakládá jeden nebo více serverů DHCP, které udržují informace o konfiguraci protokolu TCP/IP a poskytují konfiguraci adres klientům podporujícím službu DHCP ve formě nabídky zápůjčky.
Server DHCP uchovává informace o konfiguraci v databázi, která zahrnuje:
Klient podporující službu DHCP při přijetí nabídky zápůjčky obdrží:
Instalací protokolu DHCP na svou rozlehlou síť získáte následující výhody:
11.3 Autokonfigurace protokolu IP
Klienti na platformě Windows si mohou automaticky nakonfigurovat adresu IP a masku podsítě v případě, že je server DHCP v okamžiku spuštění systému nedostupný. Tato vlastnost nazvaná APIPA (Automatic Private IP Addressing) je užitečná pro klienty na malých soukromých sítích.
Při autokonfiguraci klienta DHCP probíhá následující proces:
1. Klient DHCP se snaží lokalizovat server DHCP a získat adresu a konfiguraci. 2. Jestliže nelze server DHCP nalézt, případně neodpovídá, klient DHCP si sám nakonfiguruje adresu IP a masku podsítě za použití vybrané adresy ze sítě třídy B rezervované pro Microsoft, 169.254.0.0 s maskou podsítě 255.255.0.0. Klient DHCP hledá konflikty adres, aby se ujistil, že vybraná adresa již není na příslušné síti používána. Pokud je nalezen konflikt, klient vybere jinou adresu IP: Klient se pokusí o autokonfiguraci až do 10 adres. 3. Jakmile klient DHCP uspěje při samostatném výběru adresy, nakonfiguruje s touto adresou IP své síťové rozhraní. Klient pak na pozadí pokračuje v intervalech 5 minut v hledání serveru DHCP. Jestliže klient najde server DHCP později, opustí svou autokonfiguraci. Klient DHCP pak použije adresu nabídnutou serverem DHCP (a jakékoli další informace možností DHCP) a zaktualizuje své nastavení konfigurace protokolu IP.
Jestliže již dříve klient DHCP obdržel zápůjčku serveru DHCP:
1. Jestliže je zápůjčka klientovi během spouštění systému stále platná (nevypršela), klient se pokusí obnovit tuto zápůjčku. 2. Jestliže během snahy obnovit zápůjčku klient neuspěje při lokalizaci serveru DHCP, bude se snažit provést příkaz ping na přednastavenou bránu uvedenou v zápůjčce a bude pokračovat jedním z následujících způsobů: · Jestliže je provedení příkazu ping úspěšné, klient DHCP předpokládá, že je stále umístěn na stejné síti, odkud získal svou aktuální zápůjčku a pokračuje v jejím užívání. · Jestliže je provedení příkazu ping neúspěšné, klient DHCP předpokládá, že byl přesunut na síť, kde nejsou služby DHCP dostupné. Klient pak provede autokonfiguraci své adresy IP.
11.4 Proces zápůjčky DHCP
Zápůjčky jsou v databázi serveru DHCP uchovávány přibližně jeden den po vypršení. Tato poskytnutá lhůta chrání zápůjčku klienta v případě, že klient a server jsou v různých časových pásmech, jejich interní hodiny nejsou synchronizovány nebo klient je v době vypršení zápůjčky mimo síť.
11.4.1 Zprávy DHCP
Tabulka popisuje zprávy DHCP vyměňované mezi klientem a serverem.
11.4.2 Funkce procesu zápůjčky
Jakmile se poprvé spustí klient podporující DHCP a pokusí se připojit k síti, automaticky následuje inicializační proces k získání zápůjčky od serveru DHCP.
Ve vzácných případech může server DHCP vrátit klientovi negativní potvrzení. To se může stát, jestliže klient žádá neplatnou nebo duplikovanou adresu. Jestliže klient obdrží negativní potvrzení (DHCPNak) musí klient začít celý proces zápůjčky znovu.
11.5 Stavy klienta DHCP v procesu zápůjčky
Cyklus klienta DHCP přes šest různých stavů klienta během procesu zápůjčky DHCP. Když je klient DHCP a server DHCP na stejné podsíti, zprávy DHCPDiscover, DHCPOffer, DHCPRequest a DHCPAck jsou posílány přes všesměrové vysílání na úrovni MAC a IP.
Aby klienti DHCP mohli komunikovat se serverem DHCP na vzdálené síti, musí připojující směrovač nebo směrovače podporovat předávání zpráv DHCP mezi klientem DHCP a serverem DHCP za použití služby BOOTP/DHCP Relay Agent.
11.5.1 Inicializace
Tento stav nastane při první inicializaci zásobníku protokolu TCP/IP na počítači klienta DHCP. Klient ještě nemá od serveru DHCP vyžádanou adresu IP. Tento stav také nastane, pokud je klientovi odepřena adresa IP, kterou požaduje, nebo pokud adresa IP, kterou původně měl, byla uvolněna. Stav inicializace je znázorněn na obrázku.
Když je klient DHCP v tomto stavu, jeho adresa IP je 0.0.0.0. Při získávání platné adresy klient prostřednictvím všesměrového vysílání pošle zprávu DHCPDiscover z portu UDP 68 na port UDP 67 se zdrojovou adresou 0.0.0.0 a cílovým umístěním 255.255.255.255 (klient dosud nezná adresu serverů DHCP). Zpráva DHCPDiscover obsahuje adresu MAC klienta DHCP a název počítače.
11.5.2 Výběr
Pak se klient přesune do stádia výběru, kdy vybírá odpověď serveru DHCP, DHCPOffer. Všechny servery DHCP, které obdržely zprávu DHCPDiscover a mohou klientovi DHCP nabídnout platné adresy IP, reagují zprávou DHCPOffer odesílanou z portu UDP 68 na port UDP 67. Zpráva DHCPOffer je poslána prostřednictvím všesměrového vysílání MAC a IP, protože klient DHCP ještě nemá platnou adresu IP, kterou lze použít jako cílové umístění.
Server DHCP rezervuje adresu IP, aby nebyla nabízena jinému klientovi DHCP: Zpráva DHCPOffer obsahuje adresu IP a odpovídající masku podsítě, identifikátor serveru DHCP (adresu IP nabízejícího serveru DHCP) a dobu trvání zápůjčky. Stav výběru je znázorněn na obrázku.
Klient DHCP čeká na zprávu DHCPOffer. Neobdrží-li zprávu DHCPOffer od serveru DHCP při spouštění systému, pokusí se o to znovu čtyřikrát (v intervalech 2, 4, 8 a 16 sekund plus náhodný čas mezi 0 a 1000 milisekund). Jestliže klient DHCP neobdrží zprávu DHCPOffer po čtyřech pokusech, počká 5 minut a pak se pokouší znovu, vždy v 5minutových intervalech.
11.5.3 Požadavek
Poté, co klient DHCP obdrží ze serveru zprávu DHCPOffer, klient se přesune do stavu požadavku. Klient DHCP zná adresu IP, kterou chce zapůjčit, takže pošle prostřednictvím všesměrového vysílání zprávu DHCPRequest na všechny servery DHCP. Klient musí použít všesměrové vysílání, protože stále nemá přiřazenou adresu IP. Stav požadavku je znázorněn na obrázku.
Jestliže byla adresa IP klienta známa (tzn. že počítač byl restartován a snaží se zapůjčit si původní adresu), všesměrové vysílání sledují všechny servery DHCP. Server DHCP, který může zapůjčit požadovanou adresu IP, odpoví buď úspěšným potvrzením (DHCPAck) nebo neúspěšným potvrzením (DHCPNak). Zpráva DHCPNak je použita v případě, že požadovaná adresa IP není dostupná nebo klient se fyzicky přesunul na jinou podsíť, která požaduje jinou adresu IP. Po obdržení zprávy DHCPNak se klient vrací do stavu inicializace a začíná proces zápůjčky znovu.
11.5.4 Vazba
Server DHCP reaguje na zprávu DHCPRequest prostřednictvím zprávy DHCPAck. Tato zpráva obsahuje platnou zápůjčku na vyjednanou adresu IP a jakékoli možnosti DHCP nakonfigurované správcem serveru DHCP. Stav vazby je znázorněn na obrázku.
Server DHCP pošle zprávu DHCPAck prostřednictvím všesměrového vysílání IP. Poté, co klient DHCP obdrží zprávu DHCPAck, dokončí inicializaci zásobníku protokolu TCP/IP. Je nyní považován za vázaného klienta DHCP, který může používat protokol TCP/IP ke komunikaci na síti.
Adresa IP zůstává přiřazena klientovi až do ručního uvolnění adresy klientem nebo do vypršení doby zápůjčky a odmítnutí zápůjčky serverem DHCP.
11.5.5 Obnovení
Informace o adresování IP jsou zapůjčeny klientovi a klient je zodpovědný za obnovování zápůjčky. Dle výchozího nastavení se klient DHCP snaží obnovit svou zápůjčku po uplynutí 50 procent doby trvání zápůjčky. Kvůli obnovení zápůjčky posílá klient DHCP zprávu DHCPRequest serveru DHCP, od kterého původně zápůjčku obdržel. Server DHCP automaticky zápůjčku obnoví prostřednictvím zprávy DHCPAck. Tato zpráva DHCPAck obsahuje novou zápůjčku a parametry možností DHCP. To zajišťuje, že klient DHCP může aktualizovat svá nastavení protokolu TCP/IP v případě, že správce sítě změnil některá nastavení serveru DHCP. Stav obnovení je znázorněn na obrázku.
Jakmile klient DHCP obnoví zápůjčku, navrátí se do stavu vazby. Zprávy o obnovení (DHCPRequest a DHCPAck) jsou posílány jednosměrným provozem na úrovni IP a MAC.
11.5.6 Obnovení vazeb
Jestliže klient DHCP není schopen komunikovat se serverem DHCP, od kterého získal svou zápůjčku, a vypršelo již 87,5 procenta doby trvání zápůjčky, bude se snažit kontaktovat jakýkoli dostupný server DHCP pomocí zpráv DHCPRequest odesílaných prostřednictvím všesměrového vysílání. Jakýkoli server DHCP může reagovat zprávou DHCPAck a obnovit zápůjčku, případně zprávou DHCPNak, kterou donutí klienta DHCP k inicializaci a novému začátku procesu zápůjčky. Stav obnovení vazeb je znázorněn na obrázku.
Jestliže doba zápůjčky vyprší, nebo klient obdrží zprávu DHCPNak, musí klient DHCP okamžitě přestat užívat svou aktuální adresu IP. Jakmile k tomuto dojde, je komunikace přes protokol TCP/IP přerušena až doby, kdy klient získá novou adresu IP.
|