Felhasználói eszközök

Eszközök a webhelyen


srwe:07._fejezet_-_dhcpv4

Kapcsolási, forgalomirányítási és vezeték nélküli kommunikációs alapok

A DHCPv4 (Dynamic Host Configuration Protocol)

A DHCPv4 protokoll az IPv4-címek és az egyéb hálózati beállítások (alhálózati maszk, alapértelmezett átjáró IP címe, DNS szerver IP címe, domain név stb.) dinamikus kiosztásáért felel.

A DHCPv4 működése

A DHCPv4 kliens/szerver módban működik. Ha egy kliens kommunikációt folytat egy DHCPv4-szerverrel, a szerver egy IPv4-címet oszt ki vagy ad bérbe a kliensnek. A kliens ezzel a bérelt IP-címmel kapcsolódik a hálózatra, amíg a bérleti idő le nem jár. A bérleti idő meghosszabbításához a kliensnek rendszeres időközönként fel kell keresnie a DHCP-szervert. Ez a bérleti mechanizmus garantálja, hogy az elköltöztetett vagy kikapcsolt kliensek ne tartsák meg azokat a címeket, amelyekre már nincs szükségük a továbbiakban. A bérleti idő lejárta után a DHCP-szerver gondoskodik arról, hogy a cím visszakerüljön a szükség szerint ismételten kiosztható címek készletébe.

A bérlet indítása

Amikor a kliens elindul (vagy más módon kapcsolódik a hálózathoz), egy négy lépésből álló folyamattal kezdeményezi a bérleti jog megszerzését. Ahogy a 2. ábrán is látható, a kliens egy szórásos DHCP-felfedező (DHCPDISCOVER) üzenet szétküldésével kezdi meg a folyamatot, amelyben szerepel a saját MAC-címe. Ennek célja, hogy megtalálja a hálózaton elérhető DHCPv4-szervereket.

DHCP-felfedezés (DHCPDISCOVER)

A DHCPDISCOVER üzenettel deríthetők fel a hálózatban működő DHCPv4-szerverek. Mivel a kliens nem rendelkezik érvényes IPv4-információval induláskor, a szerverrel való kommunikációhoz 2. rétegbeli és 3. rétegbeli szórási címeket használ.

DHCP-ajánlás (DHCPOFFER)

Amikor a DHCPv4-szerver DHCPDISCOVER üzenetet kap, lefoglal egy rendelkezésre álló IPv4-címet, hogy bérbe adja a kliensnek. A szerver egy olyan ARP-bejegyzést is létrehoz, amely a kérést intéző kliens MAC-címéből, valamint a kliens által bérelt IPv4-címből áll. Ahogy a 3. ábrán is látható, a DHCPv4-szerver elküldi a foglalás tényét rögzítő DHCPOFFER üzenetet a kérést intéző kliensnek. A DHCPOFFER üzenet elküldése egyedi címzéssel történik,ahol a forráscím a szerver L2-es MAC-címe, a célcím pedig a kliens L2-es MAC-címe.

DHCP-kérés (DHCPREQUEST)

Ha a kliens DHCPOFFER üzenetet kap a szervertől, akkor egy DHCPREQUEST üzenetet küld vissza a 4. ábrán látható módon. Ez az üzenet használatos a bérlet indításához, illetve megújításához egyaránt. Amennyiben a bérlet indításához használjuk, a DHCPREQUEST egyfajta kötelező érvényű elfogadási értesítésként szolgál a kiválasztott szerver felé, míg az összes többi, foglalást rögzítő szerver felé értelemszerűen elutasítást jelent.

Sok vállalati hálózatban egyszerre több DHCPv4-szervert használnak. A DHCPREQUEST üzenet elküldése szórással történik, amely tájékoztatja a kiválasztott és az összes többi DHCPv4-szervert az ajánlat elfogadásáról.

DHCP-nyugtázás (DHCPACK)

A DHCPREQUEST üzenet megérkezése után a szerver egy, az adott címre küldött ICMP ping segítségével ellenőrzi, hogy az nincs-e már használatban, majd létrehoz egy új ARP-bejegyzést a bérlet tényéről, végül pedig egy egyedi címzésű DHCPACK üzenettel válaszol, az 5. ábrán látható módon. A DHCPACK üzenet tulajdonképpen a DHCPOFFER másolata, különbség csupán az üzenettípus mező értékében van. Amikor a kliens megkapja a DHCPACK üzenetet, naplózza a beállításokat, majd egy ARP-keresést végez a kiosztott címre vonatkozóan. Amennyiben az ARP-kérésre nem érkezik válasz, a kliens tudni fogja, hogy az IPv4-cím érvényes, és sajátjaként kezdi használni.

A bérlet megújítása

DHCP-kérés (DHCPREQUEST)

Ahogy a 6. ábrán is látszik, a bérleti idő lejártával a kliens egy DHCPREQUEST üzenetet küld közvetlenül annak a DHCPv4-szervernek, amely eredetileg kínálta fel az IPv4-címet. Amennyiben egy DHCPACK bizonyos időn belül nem érkezik meg, a kliens szórással egy újabb DHCPREQUEST-et indít, hogy valamelyik másik DHCPv4-szerver meghosszabbítsa a bérleti idejét.

DHCP-nyugtázás (DHCPACK)

A DHCPREQUEST üzenet megérkezése után a szerver egy DHCPACK visszaküldésével erősíti meg a bérleti adatokat, a 7. ábrán látható módon.

DHCPv4 üzenet formátum

Az összes DHCPv4-tranzakcióhoz a DHCPv4-üzenet formátuma használatos. A DHCPv4-üzenetek beágyazása az UDP szállítási protokollon belül történik. A kliens által küldött DHCPv4-üzenetek az UDP 68-as forrásportját, illetve 67-es célportját használják. A szerver által a kliensnek küldött DHCPv4-üzenetek pedig az UDP 67-es forrásportját, illetve 68-as célportját használják.

Az ábrán egy DHCPv4-üzenet formátuma látható. A mezők nevei az alábbiak:

  • Műveleti (OP) kód - Meghatározza az üzenet általános típusát. Az 1-es érték a kérést, míg a 2-es érték a választ jelöli.
  • Hardver típusa - Felismeri a hálózaton használt hardver típusát. Az 1-es például az Ethernetet, a 15-ös a Frame Relay-t, a 20-as pedig a soros vonalat jelöli. Ezek megegyeznek az ARP-üzenetekben is használatos kódokkal.
  • Hardvercím hossza - A cím hosszát határozza meg.
  • Ugrásszám - Az üzenetek továbbítását szabályozza. Kérések továbbítása előtt a kliens 0-ra állítja az értékét.
  • Tranzakciós azonosító - Arra használja a kliens, hogy a kérést összevesse a DHCPv4-szerverektől kapott válaszokkal.
  • Másodperc - Meghatározza a kliens bérletindítási vagy -megújítási kísérlete óta eltelt másodpercek számát. A DHCPv4-szerverek a válaszok prioritási sorrendjének megadására használják, ha a klienskérések száma kimagaslóan nagy.
  • Jelzőbitek - Olyan kliensek használják, amelyek nem ismerik a saját IPv4-címüket a kérés elküldésekor. A 16 bitből csupán az egyik van használatban; ez a szórási jelzőbit. Amennyiben ennek a mezőnek az értéke 1, az a kérést fogadó DHCPv4-szervernek vagy -közvetítőnek azt jelenti, hogy a választ szórással kell elküldeni.
  • Kliens IP-címe - A kliens által használható érvényes cím, amelyet a bérlet megújításakor használ, nem pedig a cím megszerzése során. A kliens akkor és csak akkor helyezi a saját IPv4-címét ebbe a mezőbe, amennyiben érvényes IPv4-címmel rendelkezik lekötött állapotban. Ellenkező esetben a mező értékét 0-ra állítja.
  • Saját IP-cím - A szerver használja, hogy IPv4-címet osszon ki a kliensnek.
  • Szerver IP-címe - Arra használja a szerver, hogy meghatározza annak a szervernek a címét, amelyet a kliensnek használni kell a rendszerindítási folyamat következő lépése során. Lehet ugyanaz vagy más is, mint az eredeti küldő szerver címe. A küldő szerver saját IPv4-címe mindig szerepel egy különleges mezőben, amelyet szerverazonosító (Server Identifier) DHCPv4-opciónak neveznek.
  • Átjáró IP-címe - Útbaigazítja a DHCPv4-üzeneteket, amennyiben DHCPv4-közvetítők is érintettek a folyamatban. Az átjáró címe megkönnyíti a kliens és a szerverek közötti, DHCPv4 kérésekből és válaszokból álló DHCPv4-kommunikációt, amennyiben azok különböző alhálózaton vagy hálózatokon találhatóak.
  • Kliens hardveres címe - Meghatározza a kliens fizikai rétegét.
  • Szerver neve - A DHCPOFFER és DHCPACK üzeneteket küldő szerver használja. Ebben a mezőben opcionálisan szerepelhet a saját neve. A név lehet egy egyszerű szöveges becenév vagy egy DNS-tartománynév, mint például a dhcpserver.netacad.net.
  • Indítófájl neve - A kliens opcionálisan használhatja a DHCPDISCOVER üzenetet egy konkrét betöltőfájl-típus kéréséhez. A szerver egy DHCPOFFER üzenetben adja meg az indítófájl teljes könyvtár- és fájlnevét.
  • DHCP-opciók - Tartalmazza a DHCP-opciókat, beleértve a DHCP alapvető működéséhez szükséges különféle paramétereket. A mező hosszúsága változó. Kliens és szerver egyaránt használhatja ezt a mezőt.

A DHCPv4-szerver alapbeállításainak megadása

IPv4 cím vagy címtartomány kizárása

R1(config)# ip dhcp excluded-address 192.168.10.254
R1(config)# ip dhcp excluded-address 192.168.10.1 192.168.10.9

DHCPv4-készlet (pool) beállítása

R1(config)# ip dhcp pool DHCP-KESZLET-1

Konkrét feladatok beállítása

R1(dhcp-config)# network 192.168.10.0 255.255.255.0
R1(dhcp-config)# default-router 192.168.10.1
R1(dhcp-config)# dns-server 192.168.11.2
R1(dhcp-config)# domain-name unideb.hu
R1(dhcp-config)# exit

Ellenőrzés

  • show running-config | section dhcp
  • show ip dhcp binding
  • show ip dhcp server statistics

DHCPv4-közvetítő (relay)

Az összetett, hierarchikus hálózatokban a vállalati szerverek általában egy szerverfarmon találhatók. Ezek a szerverek DHCP, DNS, TFTP és FTP szolgáltatásokat nyújthatnak a hálózat számára. A hálózati kliensek jellemzően nincsenek egy alhálózaton ezekkel a szerverekkel. A kliensek gyakran szórásos üzenetek segítségével találják meg a szervereket, és veszik igénybe az általuk kínált szolgáltatásokat.

Az fenti ábrán a PC1 szórásos üzenet segítségével próbál IPv4-címet szerezni egy DHCP-szervertől. Ebben a példában az R1 forgalomirányító nincs beállítva, hogy DHCPv4-szerverként működjön, így a szórást sem továbbítja. Mivel a DHCPv4-szerver egy másik hálózaton van, ezért a PC1 nem kaphat IP-címet a DHCP segítségével. A probléma megoldására a rendszergazdák DHCPv4-szervereket adhatnak az összes alhálózathoz. Ugyanakkor ezen szolgáltatások több számítógépen történő futtatása többletköltséget és adminisztratív többletmunkát eredményez.

Ennél jobb megoldás lehet egy Cisco IOS segédcím (helper address) beállítása. Ez lehetővé teszi, hogy egy forgalomirányító DHCPv4-szórásokat továbbítson a DHCPv4-szerver felé. Amikor a forgalomirányító továbbküldi a címkéréseket, DHCPv4-közvetítőként működik. A példában szereplő topológiában a PC1 egy szórásos kéréssel próbál egy DHCPv4-szervert találni. Ha az R1 forgalomirányító DHCPv4-közvetítőként lenne beállítva, a kérést a 192.168.11.0 alhálózaton található DHCPv4-szerver felé továbbítaná.

Amikor az R1 forgalomirányító DHCPv4-közvetítőként van beállítva, elfogadja a DHCPv4-szolgáltatásra vonatkozó szórásos kéréseket, majd egyedi címzéssel továbbküldi azokat a 192.168.11.6 IPv4-címre. A show ip interface paranccsal ellenőrizhető a konfiguráció.

Nem csupán a DHCPv4-szolgáltatás esetében állítható be, hogy a forgalomirányító közvetítsen. Alapesetben az ip helper-address parancs hatására a készülékek a következő nyolc UDP alapú szolgáltatás forgalmát közvetítik:

  • 37-es port: idő
  • 49-es port: TACACS
  • 53-as port: DNS
  • 67-es port: DHCP/BOOTP kliens
  • 68-as port: DHCP/BOOTP szerver
  • 69-es port: TFTP
  • 137-es port: NetBIOS névszolgáltatás
  • 138-as port: NetBIOS datagram szolgáltatás

DHCPv4-közvetítő konfigurációs példa

R1(config)# interface g0/0
R1(config-if)# ip helper-address 192.168.11.6
R1(config-if)# exit

PC kliens:

C:\> ipconfig /release

   IP Address......................: 0.0.0.0
   Subnet Mask.....................: 0.0.0.0
   Default Gateway.................: 0.0.0.0
   DNS Server......................: 0.0.0.0

C:\> ipconfig /renew

   IP Address......................: 192.168.10.15
   Subnet Mask.....................: 255.255.255.0
   Default Gateway.................: 192.168.10.1
   DNS Server......................: 192.168.11.5

Router beállítása DHCPv4 kliensként

R1(config)# interface g0/0
R1(config-if)# ip address dhcp
R1(config-if)# no shut
R1(config-if)# exit

DHCPv4 hibaelhárításához használható parancsok

  • show ip dhcp conflict
  • show interface interfész
  • debug ip dhcp server events
srwe/07._fejezet_-_dhcpv4.txt · Utolsó módosítás: 2021/11/12 16:08 szerkesztette: sziszaby