Bilgisayar ağlarının temelinde, cihazlar arasında veri iletişimi sağlamak için kullanılan birçok protokol bulunmaktadır. Bu protokoller, ağ cihazlarının birbirlerini tanımasını, adreslerini çözümlemesini ve veri paketlerini doğru hedeflere iletmesini sağlar. ARP (Adres Çözümleme Protokolü), Ethernet ve diğer ağ türlerinde kullanılan önemli bir protokoldür. Bu makalede, ARP’nin ne olduğunu, nasıl çalıştığını ve hangi bileşenlerden oluştuğunu inceleyeceğiz.
ARP’nin Tanımı
ARP, ağ cihazlarının IP adreslerini (Internet Protokol) fiziksel MAC adresleriyle (Media Access Control) eşleştiren bir protokoldür. İki ana görevi vardır:
a. IP adreslerini MAC adreslerine çözümleme (resolution)
b. Çözümlenen bu eşleştirmeyi bir süre boyunca önbellekte tutma (caching)
Bu işlevleri sayesinde, bir cihaz belirli bir IP adresine veri göndermek istediğinde, hedef cihazın MAC adresini öğrenir ve veri paketini doğru hedefe iletebilir.
ARP Nasıl Çalışır?
ARP, ağ katmanı protokolüdür ve genellikle IP üzerinden çalışır. Bir bilgisayar ağında bir cihaz, diğer bir cihaza veri paketini göndermek istediğinde, hedef cihazın MAC adresini bilmelidir. İşte ARP’nin çalışma süreci:
a. IP Adresini Belirleme: Veri paketini alıcı cihaza göndermek isteyen kaynak cihaz, hedefin IP adresine sahip olmalıdır. Eğer bu IP adresi kaynak cihazın yerel ağında değilse, kaynak cihaz IP adresini belirlemek için bir DNS sorgusu yapar.
b. ARP İsteği (ARP Request): Kaynak cihaz, hedefin IP adresini bildiğinde, yerel ağında bu IP adresine sahip bir cihazın MAC adresini öğrenmek için bir ARP isteği yayınlar. ARP isteği yayınlanan MAC adresi “tümü-bir-arada” adresine (broadcast address) yönlendirilir, böylece bu istek tüm ağdaki cihazlar tarafından duyulur.
c. ARP Yanıtı (ARP Reply): Hedef cihaz, ARP isteğini alır ve kendi IP ve MAC adresini içeren bir ARP yanıtı yayınlar. Bu yanıt, kaynak cihaza doğrudan gönderilir ve kaynak cihaz tarafından önbellekte saklanır.
d. Önbelleğe Alma: Kaynak cihaz, aldığı ARP yanıtını önbelleğe alır. Bu sayede, aynı IP adresine veri göndermek gerektiğinde ARP sürecini tekrarlamak zorunda kalmaz. ARP önbelleğinde saklanan çözümlenmiş IP-MAC eşlemesi belirli bir süre boyunca geçerlidir.
e. Veri Gönderme: Kaynak cihaz, hedefin MAC adresini elde ettikten sonra veri paketini hedef cihaza yönlendirir. Veri paketi, hedef cihazın MAC adresini kullanarak ağ arayüzünden gönderilir.
ARP Paket Yapısı
ARP paketleri, ARP isteği ve ARP yanıtı olmak üzere iki türde gelir ve genellikle Ethernet çerçevesi içinde taşınır. Her ARP paketi aşağıdaki temel alanları içerir:
a. Donanım Tipi (Hardware Type): Bu alan, ağ arabirimini tanımlamak için kullanılan protokol numarasını içerir. Örneğin, Ethernet için bu alanın değeri 1’dir.
b. Protokol Tipi (Protocol Type): Bu alan, IP adreslerini tanımlamak için kullanılan protokol numarasını içerir. ARP’nin çoğu durumda IP protokolüyle çalıştığını belirtmek için değeri 0x0800’dür.
c. Donanım Adresi Uzunluğu (Hardware Address Length): Bu alan, ağ arabirimini temsil eden MAC adresinin uzunluğunu belirtir. Ethernet için bu alan genellikle 6’dır (6 bayt, yani 48 bit).
d. Protokol Adresi Uzunluğu (Protocol Address Length): Bu alan, IP adresinin uzunluğunu belirtir. IPv4 için bu alan 4’tür (4 bayt, yani 32 bit).
e. İşlem Kodu (Opcode): Bu alan, ARP paketinin bir istek mi yoksa yanıt mı olduğunu belirtir. İstek için değeri 1, yanıt için değeri 2’dir.
f. Kaynak Donanım Adresi (Source Hardware Address): Bu alan, ARP paketini gönderen cihazın MAC adresini içerir.
g. Kaynak Protokol Adresi (Source Protocol Address): Bu alan, ARP paketini gönderen cihazın IP adresini içerir.
h. Hedef Donanım Adresi (Target Hardware Address): Bu alan, ARP paketinin hedef cihazın MAC adresini içerir. ARP isteğinde bu alan genellikle boştur.
i. Hedef Protokol Adresi (Target Protocol Address): Bu alan, ARP paketinin hedef cihazın IP adresini içerir.
ARP (Adres Çözümleme Protokolü), ağ cihazları arasında veri iletişimi için temel bir protokoldür. IP adreslerini fiziksel MAC adresleriyle eşleştirmek ve bu eşlemeyi önbellekte saklamak suretiyle, ARP, veri paketlerini doğru hedeflere yönlendirerek ağ trafiğini düzenler. Bu sayede, ağ verimliliği artar ve iletişim hatası riski azalır. ARP, modern bilgisayar ağlarının temel yapı taşlarından biri olarak, günümüzde de yaygın olarak kullanılmaya devam etmektedir.