BLACK SEA HACKERS CLUP

Kısa yoldan hacker olmaya çalışmak lamer'lık kavramını doğurur. Onun için teknik bilgileri bilmeniz gerekiyor. İşte bunlardan birincisi. Bu yazıyı mutlaka okuyun ve anlayın. Eğer birinci bölümü okumadıysanız geri dönüp birinci bölümü okumanız gerekiyor..
     Şekil 1' de iki ayrı ağ, yönlendirici yardımıyla birbirlerine bağlanmış. SATIS bilgisayarı
 MEHMET bilgisayarına bilgi göndermek isterse, daha önce anlatılan işlemleri yaparak MEHMET
 bilgisayarının kendi ağında olmadığını anlar. ileteceği bilgiyi G bilgisayarına gönderir.
G bilgisayarında iki adet ağ kartı (Ethernet) bulunmaktadır. Kartların birisi 220.107.2.0 ağına,
 diğeri 131.107.2.0 ağına bağlıdır. G'de çalışmakta olan işletim sistemi (Windows NT ya da
Novell Netware gibi) bu iki kart arasındaki bağlantıyı sağlar.
     G bilgisayarında bulunan ağ kartlarının her birinin ayrı bir IP adresi vardır. Şekil 1 'de
bu adresler 220.107.2.150 ve 131.107.2.30 şeklindedir. Bilgisayarlar karşıdaki ağda bulunan bir
bilgisayara bilgi gönderecekleri zaman bilgiyi, G'nin kendi taraflarında bulunan IP adreslerine
gönderirler. G bilgisayarı bu adrese gelen bilgiyi alır ve 131.107.2.0 ağına geçirir.
     Peki, 220.107.2.0 ağındaki bilgisayarlar kendi ağlarında bulunmayan bir bilgisayara bilgi
 gönderecekleri zaman yönlendiricinin adresini nereden buluyorlar ? Eğer bilgisayarınızda
 bulunan TCP/IP konfigürasyon bilgilerine bakarsanız, orada "Default Gateway" şeklinde bir
 adres alanı görürsünüz. Default Gateway varsayılan geçit demektir ve yönlendiricinin adresini
 gösterir. 220.107.2.0 adresi ile tanımlanan ağdaki bilgisayarlar Default Gateway olarak
yönlendiricinin kendi taraflarındaki adresini, yani, 131.107.2.30 adresini verirler.
     Yukarıda her şey IP adresleri ile oluyor bitiyor gibi görünüyor. Gerçekte ise iletişimden
 hemen önce, IP adreslerinin MAC adreslerine çevrilmesi gerekir. Ağ üzerinde iletişim aslında
yalnızca MAC adresleri ile gerçekleşir. Çünkü IP adresleri TCP/IP protokolüne özeldir. Başka
bir protokolde, örneğin, Novell'in kullandığı IPX/SPX protokolünde IP adresi diye bir şey yoktur.
 Her protokol. kendine göre bir adresleme şeması kullanır ama, bu şemalarda yer alan adreslerin
 dönüp dolaşıp MAC adreslerine çevrilmesi gerekir ki, bilgisayarlar birbirleriyle iletişime
 geçe bilsinler.
     Bir bilgisayar bir başka bilgisayarın IP adresine sahip ama, MAC adresine sahip değilse
 Adres Çözümleme Protokolü (Adress Resolution Protocol, ARP) adı verilen bir protokol kullanarak
 IP adresini MAC adresine çevirir. TCP/IP'nin bir protokol kümesi olduğunu söylemiştik. İşte
ARP bu kümenin üyesi.
     İletişime geçeceği bilgisayarın IP adresini bilen bilgisayar, ARP protokolü ile "Bu IP
adresi kiminse bana MAC adresini söylesin" şeklinde bir mesaj oluşturur ve bu mesajı broadcast
 yapar, yani ağdaki tüm bilgisayarlara gönderir. Ağdaki bilgisayarların tümü bu mesajları
alırlar, eğer söz konusu IP adresi kendilerine ait değilse mesajı çöpe atarlar. Mesajdaki
IP adresinin sahibi olan bilgisayar ise kendi IP adresini tanır ve hemen "Bu IP adresi bana
 ait, benim MAC adresim şu" şeklinde bir mesaj ile yanıt verir. İlk bilgisayar artık diğer
bilgisayarın MAC adresini bildiği için asıl mesajını doğrudan (broadcast yapmadan) gönderebilir.
     IP adresini bildiğimiz bilgisayarın MAC adresini öğrendik, ona bilgi gönderdik. Peki,
o bilgisayara tekrar bilgi göndermek istesek ne olacak? Tekrar bir ARP broadcast mesajı mı
yayınlanacak? Bu sorunun yanıtı hayır, çünkü ARP ile elde edilen bilgiler bir kaşe bellekte
(ARP kaşe belleği) saklanır ve bir MAC adresi gerekli olduğu zaman, ilk önce bu tampon belleğe
 bakılır. Eğer IP adresine karşılık gelen MAC adresi bulunuyorsa, broadcast yapmadan bu adres
 kullanılarak iletişime geçilebilir. Ama TCP/IP'nin her bölümünde göreceğiniz gibi, bu ARP
 kaşesinde tutulan bilgilerin bir ömrü vardır. ARP kaşesine eklenen kayıtların ömrü en çok
 10 dakikadır. Kaşeye kayıt eklenirken ekleme zamanı da belirtilir. ve eğer eklenen adres
 bilgisi 2 dakika içinde yeniden kullanılmazsa otomatik olarak silinir. Adres yeniden
 kullanılırsa yine silinir ama 10 dakika sonra. Ayrıca ARP kaşesine ayrılan yer kısıtlı
 olduğu için bu süreler dolmadan eski kayıtlar silinebilir.
     IP adresi bilinen bir bilgisayarın MAC adresini bulmak için broadcast mesajı oluşturulur
demiştik. Yani mesaj, ağ üzerindeki bütün bilgisayarlara gönderiliyor, yayın yapılıyor. Eğer
Şekil 2'deki gibi birden fazla ağ söz konusu ise, yerel ağlarda kalması gereken broadcast
mesajları ağdaki trafiği etkiler, ağ performansını düşürür. Çünkü yalnızca ağın bir bölümünde
 anlamlı olan bir mesaj tüm ağa yayılarak bütün bilgisayarları meşgul eder. Bu durumu engellemek
 için yönlendiriciler, broadcast mesajlarını bir koldan bir kola aktarmazlar. Mantıklı, değil
 mi?
     Broadcast mesajları gibi, herhangi bir şekilde yerine ulaşmayan ama serseri mayın gibi
oradan oraya gidip gelen bir mesajı engelleme işini, yine yönlendiriciler yapar. Bir TCP/IP
veri paketi oluşturulduğunda, pakete ilk değeri 128 olan bir yaşam süresi (ya da oyunlarda
olduğu gibi "can". İngilizce'si Time-To-Live, TTL) verilir. Mesaj paketi herhangi bir
 yönlendiriciden geçerken "can" ı bir eksilir. Aynen oyunlarda olduğu gibi de, can değeri
 0 olduğunda oyun sona erer; paket iletilemez, çöpe atılır.
     Peki, bir bilgisayar IP adresini nasıl alır? Bunun iki yolu var: Ya siz bu adresi ele
 girersiniz ya da bir bilgisayar, belli bir adres havuzundan aldığı diğer bilgisayarlara
 dağıtır. Adresleri elle girmenin en büyük sakıncası adreslerin, Subnet Mask değerinin
 Default Gateway gibi diğer bazı bilgilerin yanlış girilmesidir. Eğer ağınızdaki bilgisayar
sayısı onu aşıyorsa, adresleri elle girmek pek akıllıca değildir. Bu adresleri otomatik olarak
 dağıtmanın bir yolu vardır ve bu yolun adı Dinamik Bilgisayar Kontrolü (Dynamic Host
Configuration Protocol, DHCP)'dür. Bu protokol ile bilgisayar DHCP sunucu (server) olarak
 tanımlanır ve IP adres dağıtımı bu sunucu üzerinden yapılır. DHCP'den alacağı belirtilmişse,
açıldığında "Ben yeni açıldım, henüz bir IP adresim yok, eğer ortamda bir DHCP sunucu tanımlı
 varsa bana bir IP adresi göndersin" anlamında bir mesaj yayınlar. (broadcast eder). Eğer
ortamda bir DHCP sunucu tanımlı ise bu mesajı alır "Ben bir DHCP sunucu olduğuma göre, bu
 mesaja yanıt vermek bana yakışır" şeklinde düşünüp kendisinde tanımlı olan IP adreslerinden
 boşta olanlardan birisini seçerek bilgisayara gönderir. IP adresi akan bilgisayarda artık
diğer bilgisayarlar iletişim kurarken bu adresi kullanır.
     DHCP sunucu ile IP adresi alan istemci bilgisayar arasındaki ilişki, bir satın alma
 işleminden kiralama işlemidir. İstemci bilgisayar, bir IP adresini DHCP sunucudan belli bir
suretliğine "kiralar". Kira süresinin varsayılan süresi 72 saattir. Nasıl bir ev kiraladığınızda
kira süresinin bitiminden önce kontrat tazeliyorsak, DHCP sunucudan alınan adresin de, bu süre
 bitmeden tazelenmesi gerekir.
     Bütün DHCP istemcileri, kıta sürelerinin %50'sine ulaştığında adreslerini tazelemek
 zorundadırlar. Kirasını tazelemek isteyen istemci, istediğini DHCP sunucusuna gönderir.
 Eğer DHCP sunucu ayakta ise kirayı tazeler ve bu durumu bir onay mesajı ile istemciye
bildirir. İstemci onayı aldığında konfigürasyonunu günceller. Eğer istemci kirasını tazelemek
 istiyor da DHCP sunucusuna ulaşamıyorsa kiranın tazelenmediğine ilişkin bir mesaj alır ama,
 adresini kullanmaya da devam eder. Çünkü daha kira süresinin ancak yarısı geçmiştir. İstemci
 kira tazeleme isteğini kira süresinin yüzde %87.5'u tamamlandığında tekrarlar. Eğer bu kez
de yanıt alamaz ve süresi biterse istemci, IP adresini kullanmaya son verir ve yeni bir IP
adres edinme sürecini başlatır.
     Bir IP adresinin nasıl aldığını gördük, IP adresinin MAC adresine nasıl çevrildiğine de
gördük. Şimdi "İyi ama, biz Windows 95'te ya da Windows NT'de Ağ komşuları (Network Neigborhood) 'na tıkladığımızda karşımıza IP adresleri ya da MAC adresleri gelmiyor ki, yalnızca bilgisayar adları geliyor" diyebilirsiniz, haklısınız. Başta söylediklerimizi anımsayalım:
 TCP/IP dünyasında bir bilgisayarı 3 şey belirler:
 Bilgisayarın adı, IP adresi, MAC adresi.
     Bir bilgisayarın MAC adresini ya da IP adresini değil de adını kullanmak daha kolay değil
 mi? Aksi takdirde, bilgisayarların IP adreslerini, daha da kötüsü MAC adreslerini ezberlemek
zorunda kalabilirdik.
     Bilgisayar adını kullanmak kolayımıza geliyor ama, ağ üzerinde iletişim gerçekte MAC
adresleri üzerinden gerçekleştiriliyor. O zaman bilgisayar adını önce IP adresine çeviren
 sonra da MAC adresine çeviren mekanizmalar, protokoller olmalı değil mi? IP adresini MAC
adresine çeviren protokolü görmüştük (belleği zayıf olanlara anımsatalım; bu protokolün adı
 ARP idi). Peki, bilgisayar adları IP adreslerine nasıl çevriliyor? Burada çeşitli seçenekler
 var. Microsoft'un önerdiği şey WINS (Windows Internet Adlandırma Servisi, Windows Internet
 Naming Service). Bu servis ile bir makineyi WINS sunucusu olarak tanımlıyoruz, bütün
 bilgisayarlar girip adlarını ve IP adreslerini bu sunucuya bildiriyorlar. (aynen yeni
eve taşındığımızda hane halkının mahallenin muhtarına kaydolması gibi). Bir bilgisayar,
adını bildiği bir bilgisayarın IP adresini bulmak istediği zaman, broadcast yapmak yerine bu
 sunucuya gidiyor "Şu addaki bilgisayarın IP adresi ne ola ki?" şeklinde bir soru soruyor. WINS
sunucu da kendi veritabanına bakıp soruyu yanıtlıyor. Bu aşamadan sonrasını biliyoruz. (ARP ile
 IP adresi MAC adresine çevriliyor).
     İyi güzel de, bilgisayarlar ortamda bir WINS sunucunun var olup olmadığını ve varsa adresini
 nereden bilebiliyorlar?
     Yukarıda DHCP'yi anlatırken, DHCP sunucunun IP adreslerinin yanı sıra başka bilgileri
gönderebileceğini söylemiştik. İşte bu bilgilerden birisi de WINS sunucunun adresi. Eğer biz
tanımlarsak, DHCP sunucudan IP adresi alan bilgisayarlar ortamdaki WINS sunucunun adresini de
 öğreniyorlar ve gidip kendilerini kaydettiriyorlar. Bu işlem otomatik olarak, el değmeden,
son derece fenni yöntemlerle gerçekleşiyor.
     Son cümleyi biraz abarttık değil mi? Ama bunun da bir nedeni var: WINS, Microsoft tarafından
 bulunan ve kullanılan bir yöntem. Internet'te ad IP eşleştirmeleri başka bir yöntem
kullanılıyor: DNS (Domain Name System). Bu sistemde bilgisayar adları ve IP adresleri DNS
sunucu olarak konumlandırılan bilgisayarlara "elle" kaydediliyor. Bir bilgisayar, adını
bildiği bir bilgisayarın IP adresini öğrenmek isterse DNS sunucuya gidiyor ve adresi soruyor.
     DNS sisteminin kötülüğü, bilgilerin elle girilmesinde ve statik olmasında. Bilgisayar
adlarının ve IP adreslerinin elle girilmesi ve değiştirilmesi gerekiyor.
    Windows NT 4.0 versiyonuna kadar bir DNS sunucu fonksiyonu bulunmuyordu. 4.0 ile birlikte
 DNS sunucu fonksiyonu da eklendi. Üstelik Microsoft DNS'i WINS'e bağlamayı başardı. 4.0'da
DNS sunucu bir kaydı kendi veritabanında bulamazsa ortamdaki bir WINS sunucuya sorabilir ve
 ondan aldığı yanıtı iletebilir. Güzel bir olanak; hem Microsoft'un çözümünü görüyor hem
 de DNS sunucu isteklerini karşılıyor.
     Evet birazcık karmaşa gibi görünse de aslında kolay bir mantığı olan yerel ağların ve
 internetin çalışma prensibi de böyle..
 
 Ana Sayfaya ön
Hosted by www.Geocities.ws

1