21.2. Fizikai címből hálózati cím meghatározása (RARP)

RARP (Reverse Address Resolution Protocol), RFC 903: 

A RARP protokoll alkalmazása speciális esetekben szükséges (tipikusan hálózati boot, vagy hálózatról történő IP cím meghatározása esetén.) Egy (vagy több) RARP szerver egy táblázatban (RARP táblázatban) tartja nyilván a fizikai címekhez tartozó hálózati címeket. A táblázatot a rendszeradminisztrátor tartja karban. Az IP cím - Ethernet cím összerendelés statikus (azaz egy Ethernet címhez mindaddig ugyanaz az IP cím lesz hozzárendelve, amíg a rendszeradminisztrátor meg nem változtatja azt). Ha több RARP szervert üzemeltetünk, akkor mindegyiken ugyanazt az összerendelési táblázatot kell alkalmaznunk.

Működési vázlata:

  1. RARP kérdés: Ki tudja az X fizikai cím hálózati címét?

  2. A kérdés keretét üzenetszórásos küldéssel az alhálózat valamennyi csomópontja megkapja.

  3. A RARP szerverek feldolgozzák a kérdést: Ha megtalálják a táblázatukban az X fizikai címet, akkor a táblázatban található hálózati címmel megválaszolják a RARP kérdést.

BOOTP (BOOTstrap Protocol), RFC 951: 

A RARP csak egy üzenetszórási tartományon belül működik, minden üzenetszórási tartományban RARP szervert kell üzemeltetni. A BOOTP egy IP/UDP csomagformátumot alkalmazó protokoll, ahol az IP címet igénylő kliens és a kérését kiszolgáló szerver külön üzenetszórási tartományban is lehet. A folyamat működési váza lényegét tekintve azonos a RARP folyamat vázával.

Ha a kliens és a szerver különböző üzenetszórási tartományban van, akkor a kliens üzenetszórási tartományábn egy BOOTP ügynökre (BOOTP Relay Agent) van szükség. A BOOTP ügynök feladata, hogy a kliens kérését továbbítsa a szerverhez, ill. a szervertől jövő válaszokat továbbítsa a klienshez. Címösszerendelési táblázat nincs az ügynököknél.

A BOOTP ügynök feladata nem túl bonyolult, hiszen a kliens által üzenetszórással küldött keretben egy szabályos IP csomag szerepel; a BOOTP ügynöknek csak az IP csomag feladó és célcímét kell lecserélnie a saját ill. a BOOTP szerver IP címére, s a csomag már továbbítható is a másik üzenetszórási tartományban lévő szerver felé.

Dinamikus IP címmeghatározás (Dynamic Host Configuration Protocol, DHCP), RFC 1531: 

A DHCP egy IP címtartomány dinamikus kiosztását teszi lehetővé az igénylők között. A "dinamikus kiosztás" azt jelenti, hogy egy bizonyos kliens nem biztos, hogy mindig ugyanazt a címet kapja. Statikus (BOOTP-vel kompatibilis) kiosztásra is alkalmas, de ennek nagyon nehézkes és munkaigényes adminisztrációja miatt előszeretettel alkalmazzák a dinamikus (véletlenszerű) címkiosztást. A kliensek a DHCP esetén egy (megújítható) időszakra kapják az IP címet. Ha az időszak lejár (s nem sikerül a megújítás) a kliensnek kötelezően el kell engednie az IP címet (azaz, az ezzel az IP címmel folytatott kommunikációs viszonyai megszakadnak).

A folyamat működési váza módosult a BOOTP-hez képest, bár nagyon sok ötletet "örökölt" onnan (pl. Relay Agent, IP/UDP csomagszerkezet).

A DHCP működési vázlata:

  1. DHCP kérdés: Ki tud adni egy IP címet? (DHCPDISCOVER)

  2. A kérdés keretét üzenetszórásos küldéssel az alhálózat valamennyi csomópontja megkapja.

  3. A DHCP szerverek feldolgozzák a kérdést: Ha a kezelt címtartományukban még van szabad IP cím, akkor azzal megválaszolják a DHCP kérdést. (DHCPOFFER)

  4. A kliens a hozzá érkező DHCP válaszokból választ egyet, s visszajelzi a választását a megfelelő DHCP szervernek. (DHCPREQUEST)

  5. A DHCP szerver „könyveli” a címválasztást (foglalt lett a cím), s a könyvelésről megerősítést küld a kliensnek. (DHCPACK/DHCPNAK)

DHCPDECLINE: A szervertől kapott IP cím érvénytelen (használt).

DHCPRELEASE: A kliensnek nincs tovább szüksége az IP címre.

21.2.1. DHCP fejrész szerkezete

Szemléltetési célból (külön elemzés nélkül) mellékeljük a DHCP fejrész vázlatát:

DHCP fejrész szerkezete