IRC Dns ve Cache
Dns (Domain Name System), dağınık yapıda bir veritabınıdr.
Bu IPv4 adresileri makina isimlerine yada makina isimlerini IPv4(veya IPv6) adreslerine çevirmeye yaramaktadır.
IRC ile olan bağı nedir?
Dns IRC’de her kullanıcı için aktif bir rol oynamaktadır.
Bilindiği üzere kullanıcıların gerçek ip numaralarını gizlemek için host özelliği bulunmaktadır. Bu sayede kişilerin ip adresleri yerine belirli/belirsiz bir düzende algorit bir yapıya sayesinde kişilerin ip bilgileri gizlenir.
IRCd sistemi kişilere ait olan gerçek ip adreslerini yine bu algoritma sayesinde ters mantık gidişi ile görmemizi sağlayan komutlar içermektedir.
En çok bilinen komut ” Userip ” komutudur fakat burada anlatılan DNS olduğu için biz ” DNS ” komutunu anlatmış olacağız.
Kullanım Şekli : /Raw DNS
Not: Raw’lı bir kullanım gösterim sebebini zaten herkes biliyordur yinede kısaca açıklayalım; Eğer Raw ekli şekilde kullanmaz isek mIRC programına ait ” dns ” komutu öncelikli olduğundan yanlış komutu kullanmış olacağızdır.
Açıklama: Bu komut belirtilen hedefin Ip bilgilerini bizlere aktarmaktadır. Ayrıca Cache Resolve hakkında bilgiler vermektedir.
Burada dikkat edilmesi gereken en önemli husus ise +x modesidir. Bu modenin aktif edildiği sunucularda kişilere ait ip adresini görmeniz mümkün değildir.
Örneğin ; /Raw Dns KafKef komutuna aldığımız cevap,
-irc.sohbet.net- Ca 0 Cd 0 Ce 0 Cl 0 Ch 0:0 Cu 0
–
-irc.sohbet.net- Re 38 Rl 42/28 Rp 104 Rq 70
–
-irc.sohbet.net- Ru 0 Rsh 0 Rs 104(17) Rt 0
Bu sunucuda +x modesinin etkin olmasından ötürü, görmemiz gereken kişinin ip adresi iken sunucunun Cache Resolvesi (IP veritabanı) olmuştur.
Nedir bu Cache ve bu terimler?
Cache, DNS sistemi ile kullanılan hostnameleri kendi veri tabanına saklayarak bu adresleri ip’e çeviren bellektir.
Tabi Cache’nin genel açıklaması bu değildir. Ben sadece IRCd mantığında cache kullanımını anlatacağım.
Cache, çalıştığı esnada sistem (DNS) domain name server taraması gerçekleştirir. Bu DNS’ler sistemin kendi belleğine ait serverler içindir yani şöyleki;
oper.sohbet.net admin.sohbet.net
znet.sohbet.net znet6.sohbet.net
znet8.sohbet.net system.sohbet.net
Yukarıda yazı olan sohbet.netağını göz önüne alacak olursak, Cache taramasında öncelik hedef belirten linkten (Yani komutu uygulayan kişinin link’i) olmak üzere bir başlangıç sergiler.
Akabinde ise sunucudaki bütün linkler(Subdomainler) incelenerek ulaşılan adreslerler gözden geçirilir.
NOT: Eğer ki 2 tane aynı bilgi elde edilmesi durumunda ilk DNS bilgisi öncelik taşıdığından bize o bilgi yansıtılacaktır.
Asıl önemli nokta Cache belleğine geldik; yukarıda anlatmış olduğum işlemi her dns komutunda uygulamak çok yorucu bir işlem olacağından Cache bellek kullanılmaktadır.
Cache bu taramayı yapıp, gelen bilgileri belirli bir süre kendi belleğinde tutarak tekrar sorulması durumunda daha kısa bir tarama yapısı kullanıp, bilgileri karşı tarafa aktarmaktadır.
Dip Not: Aslında bu taramaları tam anlamıyla cacheninde yaptığı söylenemez. Payı vardır fakat asıl yapı DNS’e aittir.
Örnek bir Cache Resolve ;
-irc.sohbet.net- Ca 0 Cd 0 Ce 0 Cl 0 Ch 0:0 Cu 0
–
-irc.sohbet.net- Re 39 Rl 43/29 Rp 106 Rq 72
–
-irc.sohbet.net- Ru 0 Rsh 0 Rs 106(17) Rt 0
Buradaki terimlerin açıklayacak olursak;
Ca: Cacheye yapılan ekleme sayısını yansıtmaktadır.
Açıklama Notu : +x olduğu için cacheye ekleme yapılamaması gayet normaldir. O nedenle sonuç 0 olarak karşımıza çıkmakta.
Cd: Silinmiş olan cache resolve sayısını belirtmektedir.
Açıklama Notu : Ekleyemediğimiz şeyi silemeyeceğimiz için sonuç yine 0 olacaktır.
Ce: Taramadan sonra uzun süre bellekte tutulan ve zaman aşımına neden olan değerleri yansıtmaktadır.
Cl: Taramalarda bulunan isimlerin sayısını vermektedir.
Ch: Cachede bulunan kayıt sayısı/Cachede bulunmayan kayıt sayısıdır.
Cu: Cache’nin daha önce kayıt edip sildiği ve tekrar hafızaya aldığı kayıt sayısıdır.
Re: Resolve hatala sayısını bildirmektedir.
Açıklama Notu: Bu cache tabanına girmemiş fakat sunucuda bulunan yani barındırılan sayıyı vermektedir.
Rl: Resolve edilenlerin sayısı/Resolve edilmeyenlerin sayısı
Açıklama Notu: Bu ise sunucunun daha önce barındırdığı / barındırmaya devam ettiği adres sayısı
Rp: Resolve edilmek istenen adreslere gönderilen talep cevabı sayısı
Rq: Resolve talebi gönderilen adres sayısı
Ru: Ikinci Resolve işleminden sonra da yanıtsız kalanlar
Rsh: TTL (Time To Live) süresi yetersiz görünüp tekrar bilgi istenen adres sayısı
Rs: (Tekrar bilgi alınanlar)
Rt: Bilgi talebinde zaman aşımına uğrayıp bilgi alınamayan sonuçlar.
Şimdi tekrar DNS komutumuza dönecek olursak, (i) parametresi gözümüze çarpacaktır.
Bu parametrenin amacı ise bulunduğunuz sunucuya ait DNS (Domain Name Server) bilgilerini vermektedir.
Örneğin ; Sohbet.net
****** DNS Configuration Information ******
c-ares version: 1.4.0
timeout: 3
tries: 2
# of servers: 2
server #1: 91.191.170.20
server #2: 91.191.170.21
****** End of DNS Configuration Info ******
SiberNET’e ait C-Ares ile düzenleme yapılmış bilgiler.
C-Ares bir modül tarzı dns info su için düzenleme yapmaktadır. ( Belkide modüldür hakkında bilgiye sahip olduğumu söylemek doğru olmaz. )
Burada C-Ares versionu, Timeout(zaman aşımı) süresi, çalışır durumdaki ip resolve, name server ait 2 ip adresini vermektedir.
Orjinal hali ( Yani C-Ares kullanılmayan sunucu için ) ;
-irc.Sohbet.net- Nameserver list has 2 server(s):
–
-irc.Sohbet.net- 0. 8.8.8.8
–
-irc.Sohbet.net- 1. 8.8.4.4
–
-irc.Sohbet.net- retrans=5 s, retry=4 times
–
-irc.Sohbet.net- Default domain name: shellcim.net
–
-irc.Sohbet.net- End of info.
Bu cevabı almaktayız. Burada belirtilen Default domain name sunucunun barındırıldığı cihaza ait host diyebiliriz. Neticede cihazda bir ip üzerinden işlem görmektedir.