Welcome to My Blog 👋

Java, Spring Framework, Microservices, Docker, Kubernetes, AWS and Others 🚀
Follow Me

Bİlgisayar Ağları - Ders 4 - DHCP



  October 10, 2017    Labels:,,,,,, 

DHCP, ağdaki cihazlara ip adresi, ağ maskesi, ağ geçidi ve dns adresleri gibi bilgileri otomatik olarak atamak için kullanılan bir protokoldür. Bir ağda bulunan cihazlara tek tek gezip benzer ip parametrelerinin defalarca elle girilmesini engelleyerek zamandan tasarruf etmeye yarar. Bu sayede sistem yöneticisinin işini kolaylaştırır.

DHCP Sunucusunun Sağladığı Bilgiler
  • IP Adresi
  • Alt Ağ Maskesi (Subnet Mask)
  • Ağ Geçidi (Getaway)
  • DNS Sunucu Adresi
  • Wins Sunucu Adresi

DHCP Nasıl Çalışır?

DHCP protokolü için network üzerinde bir DHCP sunucusuna ihtiyaç vardır. Bu sunucuda dağıtılmak istenilen IP adresi, alt ağ maskesi, ağ geçidi adresi, DNS sunucu adresi ve WINS sunucu adresi havuzları (pool) tanımlanmalıdır. IP adresini öğrenmek isteyen bir bilgisayar DHCP sunucusu‘na başvurmalıdır.
  1. İstemci (bilgisayar) DHCP sunucusu‘nun adresini bilmediği için istek mesajını (DHCP discover message) broadcast olarak herkese gönderir.
  2. Bu mesajı alan DHCP sunucusu öneri mesajı (DHCP offer message) ile bir IP adresini istemciye sunar. Bu öneri mesajının içerisinde kiralama bilgisi de vardır.
  3. Öneriyi kabul eden istemci, sunucuya istek mesajını (DHCP request message) gönderir.
  4. Bunun üzerine DHCP sunucusu istemciye işlemin tamamlandığını bildiren onay mesajını (DHCP acknowledgment message) gönderir. Artık istemci bir IP adresi almıştır ve iletişime geçebilir.
  5. Kiralama süresi dolduğunda ise DHCP sunucusu‘na IP adresini başka bir cihaz için kullanabilmesi için bırakma mesajını (DHCP release message) gönderir.
DHCP sunucusu IP adresleri‘ni istemcilere kiralık olarak verdiği için çok ekonomiktir. DHCP farklı şekillerde uygulanabilir. 

DHCP'nin Çalışma Prensipleri

DHCP discover

Bilgisayar ilk defa açıldığında öncelikle tüm ağa DHCPDISCOVER mesajını yollar. Bu mesajın içeriği “Sistemde herhangi bir DHCP server bulunuyor mu? Eğer var ise bir IP adresi istiyorum” olarak özetlenebilir. Ağa gönderilen DHCP istek paketinin içeriği, istekte bulunulan IP adresi, MAC adresi ve paketi gönderen makinenin IP adresi bilinmediğinden aşağıdaki şekilde olacaktır:

1-Hedef IP adresi (Bilinmiyor): 255.255.255.255 (broadcast)
2-Hedef MAC adresi(Bilinmiyor): FF.FF.FF.FF.FF.FF (broadcast)
3-Kaynak IP Adresi(Bilinmiyor): 0.0.0.0
4-Kaynak MAC Adresi:00-A0-CC-66-73-1F (Kendi makinemizin MAC adresi)

DHCP offer

DHCP istemci tarafından sisteme atılan yayın paketi (broadcast packet), DHCP sunucu tarafından alınır. IP veritabanı sorgulanır, istemciye verilecek IP adresi ve kira süresi belirlenir. Sunucudan çıkan isteğin onaylanması için istemciye bu belirlenen bilgiler geri yollanır.
Sistemde birden fazla DHCP sunucu bulunabilir. Bu durumda istemci ağa bir istek gönderdiği zaman en hızlı DHCP offer mesajı yollayanın IP bilgilerini benimseyecek ve bu tanımlarla ağa bağlanacaktır.

1-Hedef IP adresi (Henüz onaylanmadı): 0.0.0.0
2-Hedef MAC adresi (Biliniyor, istemci makina):00-A0-CC-66-73-1F
3-Kaynak IP Adresi (Biliniyor, DHCP sunucusu): 10.0.0.1
4-Kaynak MAC Adresi (Biliniyor, DHCP sunucusu):00-A0-C0-B6-12-6F

DHCP request

DHCP OFFER mesajını alan DHCP istemci kendisine tahsis edilmiş IP adresini kiraladığına dair sunucuya bir yayın mesajı yollar, eğer DHCP istemci birden fazla DHCP OFFER mesajı almış ise ikinci bir broadcast mesajı daha yollar ve diğer DHCP sunuculara teşekkür edip artık bir IP adresine sahip olduğunu belirtir.

DHCP acknowledgement

DHCP Request mesajını alana DHCP server artık DHCP istemci için gerekli kayıtları gerçekleştirip ona gerekli olan IP, ağ maskesi, DNS adres veya adreslerini yollayacaktır.

DHCP Sunucusunun Yeniden Başlatılması

DHCP sunucusu yeniden başladığında (server restart) daha önce atadığı IP leri ve bilgilerini korur. Bunu dhcp.leases dosyası ile gerçekleştirir. Sunucu dhcpd.leases dosyasının güncelliğini kontrol eder.

İstemcinin Yeniden Başlatılması

Daha önceden DHCP sunucu tarafından verilmiş bir IP adresine sahip istemci yeniden başlatıldığında (system reboot), sunucu dhcpd.leases dosyasındaki mac adreslerine bakar. dhcpd.leases dosyasından istemci makinenin mac adresini bulur. DHCP sunucu, istemcinin eski adres bilgilerini aynen gönderir.

No comments:

Post a Comment