Adres Çözümleme Protokolü

10.17, 4 Haziran 2015 tarihinde Srhat (mesaj | katkılar) tarafından oluşturulmuş 15608314 numaralı sürüm

Adres Çözümleme Protokolü (Address Resolution Protocol, ARP) ağ katmanı adreslerinin veri bağlantısı katmanı adreslerine çözümlenmesini sağlayan bir telekomünikasyon protokolüdür. 1982 yılında RFC 826 aracılığıyla tanımlanmıştır. STD 37 kodlu bir İnternet Standardıdır.

İnternet iletişim kuralları dizisi

OSI modeli

Katman İletişim kuralları
7. Uygulama katmanı HTTP, DNS, SMTP, FTP, TFTP, UUCP, NNTP, SSL, SSH, IRC, SNMP, SIP, RTP, Telnet, ...
6. Sunum katmanı ISO 8822, ISO 8823, ISO 8824, ITU-T T.73, ITU-T X.409, ...
5. Oturum katmanı NFS, SMB, ISO 8326, ISO 8327, ITU-T T.6299, ...
4. Ulaşım katmanı TCP, UDP, SCTP, DCCP, ...
3. Ağ katmanı IP, IPv4, IPv6, ICMP, ARP, İnternet Grup Yönetim Protokolü, IPX,...
2. Veri bağlantısı katmanı Ethernet, HDLC, Wi-Fi, Token ring, FDDI, PPP, L2TP...
1. Donanım katmanı ISDN, RS-232, EIA-422, RS-449, EIA-485, ...

Yerel ağların oluşturulmasında en çok kullanılan ağ arayüzü Ethernet'tir. Sistemlere Ethernet arayüzü görevi gören ağ kartları takılarak LAN'lara kolayca eklenmektedir. Ethernet arayüzleri birbirlerine veri paketi göndermeleri için, kendilerine üretim sırasında verilen fiziksel adresleri kullanırlar; 48 bit olan bu arayüzlerin ilk 24 biti üreticiyi belirtir kalan 24 bit de üreticiler tarafından ürettikleri ürünleri adreslendirmek için kullanılır. 48 bitlik bu adres her donanım için eşsizdir. TCP/IP protokolünün kullanıldığı ağlarda ise 32 bit olan IP adresi kullanılır. Ağ katmanından iletim için alt katmanlara aktarılan bir paketin doğru yere ulaştırılabilmesi için, paketteki ağ katmanı adresinin veri bağlantısı katmanında ve fiziksel katmanda fiziksel adrese çözümlenmesi gerekmektedir. Çünkü bu iki katmanda farklı adreslendirme yöntemleri kullanılmaktadır. Bu iki farklı adres uzayı arasındaki çözümleme sürecini düzenleyen protokol de Adres Çözümleme Protokolüdür. Veri bağlantısı katmanında Ethernet ve ağ katmanında IP protokollerinin arasında çalışması amacıyla yazılmasına karşın, tasarımı aşamasında bu protokolün ileride farklı ağ katmanı ve veri bağlantısı katmanı protokolleri arasında da kullanılabileceği göz önünde bulundurulmuştur. Dolayısıyla genel bir ifadeyle söylemek gerekirse, bu protokol, ağ katmanı adreslerinin bağlantı katmanı adreslerine çözümlenmesini sağlar. Ancak IPv6 ile çalışan ağlarda bu protokolün işlevini komşu saptama protokolü görmektedir.

ARP İstek Paketi Gönderilmesi

Bir paketin yerel ağda bir sisteme gönderilebilmesi için IP adresinin yanında donanım adresinin de bilinmesi gerekir. IP, bu fiziksel adresi öğrenebilmek için yerel ağdaki tüm bilgisayarlara özel bir sorgulama paketi yollar. ARP istek paketi ( İngilizce: ARP request packet ) olarak anılan bu pakette alıcı sistemin IP adresi vardır ve bunun karşılığı olan fiziksel adresin gönderilmesi istenir. Ağ üzerindeki ARP’ leri etkin olan tüm düğümler bu istek paketlerini görürler ve kendilerini ilgilendiriyorsa istek paketini gönderen yere fiziksel adreslerini gönderirler.

Bazı düğümler fiziksel adres öğrenme süreçlerini azaltmak için, diğer sistemlerin ARP sorgulamalarını sürekli dinleyerek kendi ARP tablolarını güncel tutabilirler. Böylece kendisi daha önce herhangi bir aktarım yapmasa bile, diğer sistemlerin IP-fiziksel adres dönüşüm bilgisine sahip olurlar.
Ayrıca ARP, IP adreslerini fiziksel adreslere haritalamasının dışında özel donanım tiplerinin tanımlanmasına da izin verir.

ARP Paket Formatı

Gerekli durumlardaki mesajlaşmalarda kolaylık sağlaması için bir ARP mesaj yapısı oluşturulmuştur. Bu mesaj yapısı herhangi bir protokol için fiziksel/donanım adres çözümlemesi amaçlasa da genelde IP ağlarında Ethernet adresine ulaşmak için kullanılır.
Donanım Adres Tipi
Her bir veri hattı katman protokolüne bu alanda kullanması için verilen numara. Örneğin Ethernet 1.
>Protokol Adres Tipi
Her bir protokole bu alanda kullanılması için verilen numara. Örneğin, IP 0x0800.
Donanım Adres Uzunluğu
Donanım adresinin byte cinsinden uzunluğunu gösterir. Ethernet adresi 6 byte uzunluğundadır.
Protokol Adres Uzunluğu
Logical Adresin byte cinsinden uzunluğu. IPv4 adresi 4 byte uzunluğundadır.
Operasyon
Gönderici belirli operasyonları sergiler: istek için 1, cevap için 2, RARP isteği için 3 ve RARP cevap için 4.
Gönderen Donanım Adresi
Donanım adres gönderici.
Gönderen Protokol Adresi
Protokol adres gönderici.
Varış Donanım Adresi
Alıcıya yönelik donanım adresi. Bu alanda istekler önemsenmez.Bir istek mesaji gönderilirken Varış Donanım Adresi’nin tamamı sıfır yapılır.
Varış Protokol Adresi
Alıcıya yönelik protokol adresi.

IPv4 üzerinde Ethernet ARP paket

8lik offset 0 1
0 Donanım tip (HTYPE)
2 Protokol tip (PTYPE)
4 Donanım adres uzunluğu (HLEN) Protokol adres uzunluğu (PLEN)
6 İşlem (OPER)
8 Gönderici donanım adresi (SHA) (ilk 2 bayt)
10 (sonraki 2 bayt)
12 (son 2 bayt)
14 Gönderici protokol adresi (SPA) (ilk 2 bayt)
16 (son 2 bayt)
18 Hedef Donanım adresi (THA) (ilk 2 bayt)
20 (sonraki 2 bayt)
22 (son 2 bayt)
24 Hedef protokol adresi (TPA) (ilk 2 bayt)
26 (son 2 bayt)

ARP Mesajının İşlenmesi

Bir IP paketi gönderilmeden önce Ethernet ağlarında iki paket daha aktarılır ve paketin gönderileceği düğümün fiziksel adresi bulunur. Bu işlemi aynı varış düğümüne gidecek paketler için tekrar tekrar yapmak anlamsızdır. Bu nedenle bir IP_adresi-Donanım_adresi eşlemesi yapıldığında bu bilgi bir süre ARP cep belleğinde tutulur. Belli bir süre kullanılmamış adresler, bellekte yer sorunu varsa silinir.

Bir ARP mesajı alan düğüm aşağıdaki işlemleri gerçekleştirir
1)Mesajın geldiği düğümün IP adresi ve MAC adresilerinin ARP cep belleğinde olup olmadığının testi yapılır. Varsa eski donanım adresinin yerine, gelen mesajdaki donanım adresi yazılır.
2)Mesajın operasyon bölümüne bakılır.
Bu bölüm istek mesajı ise bir cevap mesajı hazırlanır. Cevap mesajında, gelen mesajdaki gönderen ve varış adreslerinin yerleri değiştirilir. Gönderen donanım adresi bölümüne mesajı hazırlayan bilgisayarın donanım adresi yazılır. Operasyon alanına, 2 değeri verilir.
Bu bölüm cevap mesajı ise daha önce istek gönderilmiş olup gelen bilgiler cep belleğe eklenir.

Yayınlanan tüm ARP mesajlarındaki verilerin ARP cep belleğine konması, cep belleğin kısa sürede dolmasına neden olur. Bu nedenle, bilgisayarlar sadece kendilerini hedef alan ARP mesajları ile ilgilenirler.

Reverse Address Resolution Protocol - RARP

RARP, yeni çalıştırılmış (new-booted) bilgisayarların Ethernet adreslerini ağa duyurması ve kendi IP adresini sormasını sağlar. Bunlar disksiz bilgisayarlardır ve bu bilgisayarlar için RARP sunucusu bu sorulara cevap verir. IP adres istekleri, yerel alan ağı dışına çıkamadığı için isteklerin oluştuğu yerel alan ağlarında bir RARP sunucusu olması gerekir. Bu sorunu çözmek için alternatif bir başlangıç protokolü (bootstrap) önerilmiştir: BOOTP.

BOOTP, UDP mesajları ile haberleşir bu nedenle yerel alan ağlarını geçebilir. BOOTP’nin detayları RFC 951,RFC 1048 ve RFC 1084’te verilmiştir. BOOTP’nin dezavantajı IP ve Ethernet adres eşlemesinin manuel olarak yapılmasıdır.

ARP ve RARP birbirinden farklı işlemlerdir. ARP her sunucunun kendi donanım adresi ve protokol adresi arasındaki haritalamayı bildiğini farzeder. Diğer sunucular hakkında edinilen bilgi küçük bir bellekte tutulur. Bütün sunucular eşit statüdedir. İstemci ve sunucu arasında hiçbir ayrım yoktur. RARP' de ise durum farklıdır. İstemcilerden gelen istekleri cevaplamak ve protokol adresinden donanım adresine veritabanı haritalanması için daha fazla sunucuya gereksinim duyar.

Standartlar

Adres Çözümleme Protokolünün çalışma esaslarını düzenleyen standartlar şunlardır:

  • RFC 826 - Ethernet Address Resolution Protocol, Internet Standard STD 37. (Ethernet Adres Çözümleme Protokolü, İnternet Standartı STD 37)
  • RFC 903 - Reverse Address Resolution Protocol, Internet Standard STD 38.(Ters Adres Çözümleme Protokolü, İnternet Standardı STD 38)
  • RFC 2390 - Inverse Address Resolution Protocol, draft standard (Karşıt Ters Adres Çözümleme Protokolü, standart taslağı)
  • RFC 5227 - IPv4 Address Conflict Detection, proposed standard (IPv4 Adres Çakışması Saptama, standart teklifi)

Dış bağlantılar

uludağ