Kayıt
6 Temmuz 2007
Mesajlar
727
Beğeniler
0
Şehir
....
DHCP (Dynamic Host Configuration Protokol=Dinamik Bilgisayar Konfigurasyon Protokolü)

TCP/IP protokolü üzerinde çalışan her bilgisayar için bir IP adresi ve bilgisayarı tanımlayacak bir isim verilmelidir. IP adresi bilgisayarın kendisini ve alt ağ maskesi (subnet mask) ile bilgisayarın bulunduğu ağ adresini tanımlar. Bilgisayar farklı ağlara taşındığı zaman IP adresinin ve diğer parametrelerinin değiştirilmesi gerekir (alt ağ maskesi, varsayılan ağ geçidi (default gateway)).

Microsoft DHCP sunucusu elle TCP/IP yapılandırmasına bir alternatiftir. Microsoft DHCP bu yapılandırmanın sağlanması için grafik bir arayüz sunar. İstemci durumunda bulunan makineler çalışmaya başlayınca DHCP sunucusundan otomatik olarak TCP/IP yapılandırma parametrelerini alırlar. DHCP sunucusu bu makinelere şu parametreleri gönderir:

* Ağ ortamındaki her bir network kartı için bir IP numarası
* Makinelerin bulundukları ağı anlamaları için alt ağ maskesi
* Makinelerin diğer ağlara bağlanabilmesi için varsayılan ağ geçidi(default gateway)
* Diğer bazı parametreler (WINS, DNS v.b.)


DHCP sunucusunun veritabanı otomatik olarak DHCP yüklendiği zaman kurulur. DHCP yüklendiği zaman Yönetimsel Araçlar(Administrator Tools)'da otomatik olarak DHCP Manager oluşturulur. DHCP Manager kullanılarak bu veritabanına yeni veri girişleri yapılabilir. DHCP sunucu üzerinde adres alanları yaratılabilir. Bu alanlar üzerinde hepsi için evrensel (global) ya da seçili olan için özel tanımlar yapılabilir. Bir DHCP alanı yaratıldığı zaman şunlara dikkat etmek gerekir:

* Evrensel olarak yapılan tanımlamalar bu sunucu üzerinden IP yapılandırması alan tüm istemciler için geçerli olur.
* Alan ismi yaratıldığı zaman yönetici tarafından verilmelidir.
* Her alan için tek bir alt ağ maskesi kullanılmalıdır.

Bir DHCP alanında özel IP (WINS ve IIS için) adresleri tahsis edilebilir. Böylece bu adreslerin başka istemciler tarafından kullanılması engellenmiş olur. Bir IP adresinin bir makineye tahsis edilebilmesi için o makinenin MAC adresinin DHCP sunucusuna tanıtılması gerekir.


DHCP Sunucu ile İstemci Durumundaki Bir Makinenin Haberleşmesi

Bir istemci makine TCP/IP ağı üzerinde çalışmaya başlayınca, DHCP sunucu ile haberleşerek ondan TCP/IP parametrelerini alır. Sunucu ve istemci aralarında şu paketlerle haberleşirler:

Dhcpdiscover: DHCP istemci bilgisayar tarafından ağa gönderilen ilk pakettir. Bu paket genel yayım (broadcast) olarak tüm ağa gönderilir. Bu paketin kaynak IP adresi kısmında istemci henüz bir IP adresine sahip olmadığı için 0.0.0.0 adresi bulunur. Hedef IP adresinde ise 255.255.255.255 bulunur. Bu pakette istemci makinenin MAC adresi, kaynak MAC adresi kısmında bulunur. İstemci makine bu mesaja gerekli cevabı alamadığı zaman periyodik olarak bu mesajı yayınlamaya devam eder.

Bu mesaj 342 veya 590 byte uzunluğunda olabilir (eski sürümlerinde 590 baytdır). İlk 14 bayt Ethernet başlık bölümünü içerir. Daha sonraki 20 bayt'ta ise kaynak ve hedef IP adresleri bulunur. Sonraki 8 bayt ise UDP başlık kısmıdır. Burada UDP kaynak ve hedef port adresleri bulunur. Daha sonra ise "Dhcpdiscover" mesajının parametreleri gelir. Bu mesajda MAC adresi bulunduğundan eğer istemci makine için bir IP adresi tahsis edilmiş ise bu MAC adresini tanıyarak önceden tanımlı bu adresi gönderir.

Dhcpoffer: DHCP sunucu "discover" mesajını alınca adres alanında kullanılmamış bir IP adresi seçerek bunu bu mesaj ile istemci makineye gönderir. Bu pakette henüz istemci makinenin IP adresi bulunmadığından broadcast olarak yayınlanır. Bu mesajda ayrıca alt ağ maskesi, varsayılan ağ geçidi gibi parametreler de bulunur. Bu mesajın hedef MAC adresi kısmında istemci makinenin MAC adresi bulunur.

Bu mesaj 342 bayt uzunluğundadır. İlk 14 bayt ethernet başlık kısmıdır. Daha sonraki 20 bayt IP başlık kısmıdır. Bu mesaj da broadcast olarak yayınlandığından hedef IP adresi 255.255.255.255'dir. Burada dikkat edilecek husus kaynak makine IP adresi kısmında DHCP sunucusunun IP adresinin bulunmasıdır. Daha sonra ise 8 baytlık UDP başlık kısmı gelir. Geri kalan 300 baytlık kısımda ise "Dhcpoffer" paketinin parametreleri gelir.

Dhcprequest: İstemci makine "Dhcpoffer" mesajını alınca gerekli parametreleri kabul ettiğini gösteren bu mesajı broadcast olarak yayınlar. DHCP, istemci makine "Dhcpoffer" mesajını alamazsa 2., 4., 8. ve 16. saniyelerde birer "Dhcpdiscover" mesajı daha gönderir. Yine cevap alamazsa her 5 dakikada periyodik olarak birer tane daha gönderir.

Bu mesajda "Dhcpdiscover" mesajı gibi 342 veya 590 bayt uzunluğundadır. Bu mesaj istemci makinenin sunucu makine IP'sini bilmesine rağmen yine broadcast olarak yayınlanır. Bu pakette yine kaynak makinenin IP adresi kısmında 0.0.0.0 bulunur; çünkü istemci makine gönderilen IP adresini kabul ettiğini söyler; fakat bu IP adresini kullanabilmesi için DHCP sunucusundan "Dhcpnack" paketini alması gerekir.

Dhcpnack: IP adres önerisini kabul eden istemci makineye DHCP sunucusu tarafından gönderilir. İstemci bu mesajı alamadan makine TCP/IP protokolünü kullanamaz.

Bu mesaj 342 bayt uzunluğundadır. Bu mesaj da broadcast olarak yayınlanır. Hedef IP adresi kısmında 255.255.255.255 bulunur. Kaynak adresi olarak da DHCP sunucunun IP adresi bulunur. UDP başlık kısmından sonra ise bu mesajın parametreleri gelir. IP adresinin ne kadar süre ile bu istemci tarafından kullanılacağı gibi bilgiler bu mesaj içerisinde bulunur.

IP adresinin kullanım süresi bittiği zaman son iki paket yine sunucu ile istemci arasında haberleşmeyi sağlar. Tek bir fark vardır. Bu da bu iki mesaj bu sefer broadcast olarak yayınlanmaz. İstemci ve sunucu makine birbirlerinin IP adreslerini bildiğinden bu mesajları doğrudan birbirlerine yollarlar.

Tüm bu işlemler yapıldıktan sonra ipconfig komutu ile makinenin TCP/IP yapılandırması görülebilir. Bu komut all parametresi ile çalıştırıldığında network kartı ile ilgili bilgiler de görülebilir
.

Microsoft DHCP Servisinin Kurulması

DHCP'nin yüklenmesi için Denetim Masası (Control Panel) -> Ağ Servisleri (Network Services) seçilir. Buradan Ekle (Add) butonuna tıklandığında Microsoft DHCP Servisi seçilerek kurum tamamlanır. DHCP servisi kurulduktan sonra Başlat (Start) -> Programlar (Programs) -> Yönetimsel Araçlar (Administrator Tools) altında DHCP Manager oluşturulur. Bu program kullanılarak DHCP sunucu üzerinde istenilen ayarlar yapılır. DHCP sunucu için özel parametre ayarları yapılabilir.

Bu servis kurulduktan sonra kayıt parametrelerini System -> Current -> CurrentControlSet -> Services -> DHCP Server -> Parameters anahtarında saklar. DHCP Manager programı kullanılarak DHCP Servisine erişilemiyorsa Denetim Masası Servisleri'nde bu servisin çalışıp çalışmadığı kontrol edilmelidir. DHCP Manager kullanılarak bu servise erişilemiyorsa "The RPC server is unavailable" mesajı ile karşılaşılır. Bu servisi çalıştırmanın başka bir yolunda komut satırında net start dhcp komutunu çalıştırmaktır.

DHCP istemci makinelerin yapılandırması oldukça basittir. Bu makinelerde yapılması gereken şudur. Denetim Masası(Control Panel) -> Ağ(Network) -> Protokoller(Protocols) -> TCP/IP -> Özellikler(Properties) de DHCP kullanarak bir IP adresi al(Obtain an IP adress from a DHCP server) seçili durumda olmalıdır. Eğer bu parametre seçili değilse istemci makine sabit bir IP adresi girmemizi bekleyecektir.


DHCP Sunucusunun Veritabanı Dosyaları

DHCP sunucu kurulduktan sonra bu servisin veritabanı dosyaları, otomatik olarak oluşturulan systemroot -> System32 -> Dhcp dizini altına kopyalanır. Bu veritabanı dosyaları şunlardır:

* Dhcp.mdb: DHCP sunucunun veritabanı dosyasıdır.
* Dhcp.tmp: Bu geçici dosya DHCP sunucusu tarafından takas dosyası olarak kullanılır.
* Dhcp.log: DHCP sunucusunun yaptığı işlerin log dosyasıdır.

DHCP sunucunun veritabanı dosyaları dinamiktir. İstemcilere IP adresi atandıkça ya da bu istemciler sahip oldukları IP adreslerini bıraktıkça kendini günceller.


DHCP Sunucusunun Güncellenmesi

Kullanılan işletim sisteminin sürümü değiştiği zaman DHCP veritabanı da yeni formatına çevrilmelidir. Yeni servis ilk çalıştığında sistem yöneticisinin onayı alınarak çevirme işlemi başlar(jetconv.exe). Bu işleyiş, başka servisler tarafından ilk çevirme işleminde başlatılır, ikinci kez başlatılamaz. Bütün yüklenmiş servislerin (DHCP, WINS) veritabanı çevirme işlemini yapar. Çevirme işlemi bittikten sonra eski veritabanı dosyaları mevcut dizin altında 351db alt dizini açılarak oraya kopyalanır. Bu dizin DHCP sunucu için şu biçimdedir: systemroot -> System32 -> dhcp -> 351db'dir. Bu işlemi komut satırından yapmak için upg351db komutu kullanılabilir.

DHCP sunucu veritabanı yeniden onarılabilir. Bu veritabanını yeniden düzenlemek için ilk adımda DHCP sunucu veritabanı dosyalarının birer kopyası alınır. Daha sonra orijinal rehberde dhcp.mdb dosyası dışındaki dosyalar silinir. Alınan yedeklerden bozulmamış bir dhcp.mdb dosyası buraya kopyalanır. En son olarak DHCP servisi yeniden başlatılır.


Farklı alt ağlar olduğunda

Söz konusu ağda, farklı ağlar var ise her bir alt ağ için farklı bir DHCP sunucu kurmak bir çözüm olabilir. Diğer bir çözüm de şudur: Alt ağlardan birine bir DHCP sunucusu, diğer alt ağlara ise DHCP Röle Ajanı (Relay Agent) servisi kurulur. Bu servisin kurulmasında yine Denetim Masası (Control panel) -> Ağ (Network) -> Servisler(Services) seçilip buradan DHCP Röle Ajanı (Relay Agent) servisi seçilerek yapılır. DHCP Röle Ajanı (Relay Agent) servisinin kurulu olduğu makineler DHCP servisinin kurulu olduğu makinenin IP adresini bilmek zorundadır. Aynı zamanda DHCP Röle Ajanı (Relay Agent) kurulu olan makine de sabit bir IP adresi olmak zorundadır. DHCP sunucusu da her bir subnet için ayrı bir adres alanı tanımlanır. DHCP Relay Agent, makineye IP adresi için bir istek geldiği zaman bu isteği DHCP Server makineye gönderir (DHCP Server, makinenin IP adresini bilmektedir.). DHCP sunucu gelen istekte kaynak (DHCP Röle Ajanı) makinenin IP adresine bakarak uygun olan adres alanından bir IP adresi verir.
 
Yukarı Alt