DHCP, ağa bağlanmak isteyen cihazlara dinamik olarak konfigürasyon sağlayan sistemdir. Büyük ağlarda cihazlara statik olarak konfigürasyon yapmak hem büyük zaman isteyen hem de yönetim ve takip açısından zorluk getiren bir şeydir. DHCP sayesinde, ağa bağlanan cihazlara otomatik olarak IP adresi, subnet adresi, default gateway adresi ve DNS adresi gibi bilgiler konfigüre edilir.
Peki bu süreç nasıl işler?
Ağa bağlanan cihazda, ağ ayarları otomatik durumundaysa; cihaz DHCP için broadcast yapar. DHCP, boşta olan adreslerden birini seçer ve ilgili cihaza broadcast yaparak teklifte bulunur (Böylece IP çakışmasının da önüne geçilmiş olunur). İlgili cihaz bunu kabul ettiğinde tekrar DHCP kabul mesajı gönderilir. DHCP bu ayarları onaylar ve süreç biter.
Tüm bu süreç DORA olarak kısaltılır.
Discovery – hostun DHCP isteğinde bulunması
Offer – DHCP tarafından hosta teklif sunulması (IP adresi vs ve bu konfigürasyonun ne kadar süre hostta kalacağı)
Request – Host tarafından DHCP’nin vermiş olduğu ayarların kabul edildiğinin belirtilmesi
Acknowledge – DHCP tarafından ayarların atanması
Router DHCP yapılandırması
DHCP işlemi için genelde server (sunucu) kullanılsa da, bu işlemi router (yönlendirici) üzerinden de yapabilmekte.(küçük ağlarda yapılabilir ama büyük ağlarda tercih edilmez). Router üzerinde birkaç komut ile kolay bir şekilde DHCP işlemi yapılabilmekte. Aşağıdaki gibi bir ağımız olsun ve yapılandırmamızı yapalım.
Havuzdan IP’leri çıkartmak:
Bazı IP adreslerini statik olarak girmek isteyebiliriz. Bu yüzden bu IP adreslerinin havuzdan çıkartmak gerekir.
Bunun yapılması gereken komut şudur:
config terminaldeyken;
#ip dhcp excluded-address [IP başlangıç adresi] [IP bitiş adresi]
ip dhcp excluded-address 192.168.10.1 192.168.10.11 (192.168.10.1 ve 10.11 arasındaki IP adreslerini IP havuzunun dışarısına almış olduk)
Router yapılandırması
Öncelikle IP havuzu oluşturmamız gerekecek. Bunun için
#ip dhcp pool [havuz için isim] komutunu kullanacağız.
Router1(config)#ip dhcp pool SLH (SLH adında havuz oluşturdum.)
soru işaretine basarak kullanabileceğim komutları görebilirim.
Router1(dhcp-config)#network 192.168.10.0 255.255.255.0 (networkü tanımladım)
Router1(dhcp-config)#default-router 192.168.10.1 (gatewayi tanımladık)
Router1(dhcp-config)#dns-server 8.8.8.8 (DNS adresini tanımladık)
Her ne kadar Packet Tracer’da görünmese de konfigürasyon ayarlarında bir de “lease” ayarı bulunmaktadır. Lease (kiralama) ayarı ise şuna yaramaktadır: Ayarların kiralama günü/saat kadar kalmasını sağlar. Daha sonra verdiği Ip’yi havuza geri çağırır. Tabii genelde verilen IP’ler kolay kolay havuza çağrılmaz.
Kullanımı ise şu şekilde;
#lease [gün] [saat]
örneğin ; #lease 5 (5 günü kapsar) #lease 0 5 (5 saati kapsar)
Konfigürasyonlar tamamlandıktan sonra bilgisayarlara otomatik ayarlar gidecektir.
İlk bilgisayar 192.168.10.12 adresinin almış. Zaten 10.1-10.11 arasıdnaki adresleri havuz dışına almıştık.
DHCP’nin dağıtmış olduğu IP’leri görmek için #show ip dhcp binding komutu kullanılır.
Oluşturulan havuzları görmek için #show ip dhcp pool komutu kullanılır.
IP çakışması var mı yok mu bakmak için #show ip dhcp conflict komutu kullanılır.
Farklı Networkte bulunan DHCP sunucusundan yapılandırma alma
Bir önceki örneğimizde aynı networkte bulunan hostlarımıza router üzerinden yapılandırma almıştık. Şimdi ise farklı bir networkte bulunan DHCP sunucusundan yapılandırma alacağız.
Yukarıda örneğe göre yapılandırmamızı yapalım.
Sunucuda DHCP servisini açıp aşağıdaki gibi bir ayarlama yaptım. (Sunucu için statik olarak şu değerleri verdim; IP :192.168.10.25/24)
Bu yapılandırmaya göre 192.168.10.0 networkunde bulunan hostlar otomatik olarak sunucudan IP alacaktır. Fakat 192.168.20.0 networkunde bulunan hostlar alamayacaktır. Çünkü DHCP için hostlar broadcast yapacaktır ama router broadcastı geçirmeyeceği için bu istek geçersiz kalacak ve hostlar APIPA IP alacaktır.
Yapılması gereken tek şey routerda networkun bağlı olduğu intefacede yapılandırma yapmak.
Router(config)#interface gigabitEthernet 0/0/1
Router(config-if)#ip helper-address 192.168.10.25 (DHCP sunucunun IP adresini yazılacak)
Tek satır komut ile işlemleri tamamlamış olduk. Artık 192.168.20.0 networkunde bulunan hostlarda DHCP sunucusundan yapılandırma alabilecekler.