Designed by barmel
 
Anasayfaby BaRMeLSSSAramaÜye ListesiKullanıcı GruplarıKayıt OlGiriş yap

Paylaş | 
 

 DNS Anlatımı [Ayrıntılı]

Aşağa gitmek 
YazarMesaj
DiAbLoOo
Co-Admin
Co-Admin
avatar

Mesaj Sayısı : 3003

Yaş : 29

Nerden : Derzulya-Kuraf
Lakap : HaBiS

İsim : Ümit

Kötü İtibar :
0 / 1000 / 100


Deneyim :
70 / 10070 / 100


Kayıt tarihi : 24/05/08

MesajKonu: DNS Anlatımı [Ayrıntılı]   Çarş. Eyl. 17, 2008 4:33 pm

DNS

Daha önceki dokümanlarda açıklandığı şekilde bir IP ağı
üzerinde çeşitli servislere ulaşmak için bu servislerin çalıştığı
sistemlerin 4 sayıdan oluşan akılda kalması zor ve son kullanıcılar
için hemen hiçbir şey ifade etmeyen adreslerinin bilinmesi
gerekmektedir. Bu sorunun nasıl aşıldığı bu dokümanda ele alınacaktır.

1 DNS’in Tarihçesi


Yukarıda bahsedilen isimlendirme sorunu ilk olarak Internetin babası
sayılan ArpaNet zamanında ortaya çıkmıştır. 1970’lerde ArpaNet günümüz
ağları ile karşılaştırılamayacak kadar küçük durumdaydı ve yalnızca
birkaç yüz ile ifade edilebilen sisteme hizmet veriyordu. Bu tarihlerde
isimlendirme için tek noktada tutulan bir dosyanın bulunması ve diğer
tüm sistemlerin bu dosyayı belli aralıklarla kendi taraflarında
güncellemesi isimlendirme sorununu çözmüştü.

Adres-isim
tanımlamalarını içeren HOSTS.TXT dosyası SRI tarafından SRI-NIC adında
bir bilgisayar üzerinde tutulmaktaydı. Bu dosya her adrese bir isim
karşılık gelecek şekilde düzenlenmişti. ArpaNet üzerindeki yeni isim
tanımlamaları ve değişiklikleri SRI’ya gönderilen e-postalar aracılığı
ile yapılıyor ve HOSTS.TXT’in kopyası ftp ile alınıyordu.


ArpaNet üzerinde TCP/IP kullanımına paralel olarak ortaya çıkan
bağlantı patlaması, isim çözümü için bir çok sorunu da beraberinde
getirdi. Öncelikle isim çakışmaları ortaya çıktı, sayı artmakta ve her
bilgisayara özgün bir isim atanmasında problemler yaşanmaktaydı. Ayrıca
yalnızca isim çözümlenmesi için oldukça yüksek miktarda bant genişliği
harcanmakta ve buna rağmen kullanılan isim veritabanlarının uyumlu
olması her zaman sağlanamamaktaydı.

Bu durumun ortaya
çıkmasından sonra ArpaNet daha ölçeklenebilir bir isim çözümleme yapısı
için araştırmalara başladı. Paul Mockapetris bu işle görevlendirildi.
Mockapetris 1984 yılında Domain Name System (DNS)’i tanımlayan RFC 882
ve 883’ü yayınladı. Bunlar daha sonra halen geçerli olan RFC 1034 ve
1035 tarafından güncellendiler.

2 DNS’in Yapısı


ArpaNet döneminde ortaya çıkan güçlükler nedeniyle DNS tasarlanırken
uçlardaki sistemlerin kendi bilgilerini kendilerinin güncelleyebileceği
bir yapı üzerinde durulmuştur. Ortaya çıkan yapı ise en üstten
başlayarak hiyerarşik bir şekilde uçlara doğru açılan dağıtık bir
varitabanı mimarisidir. Uçlar birbirleri ile istemci sunucu yöntemiyle
konuşurlar.

Farklı tablolar ile tek veritabanında
tanımlanmış bir alan adı sistemini icenlenirse yapısının hiyerarşik
olduğu görülür. Her alan adı bir başka alan adının altında
tanımlanmıştır. En üst seviyede bulunan bir tablo en üst seviye alan
adları olan ‘.com’, ‘net’ vb içerir ve bu alan adlarının detaylarını
içeren tabloları işaret eder. Aynı şekilde bu tablolar da kendi
altlarında bulunan alan adlarını içerir ve detaylarını gösteren
tablolara işaret eder.

Açıklana tablo yapısı Şekil 1 üzerinde gösterilmiştir.



Şekil 1


İlk tabloda en üst seviye alan adları tanımlanmış ve bu tabloda bulunan
alt alan adlarının bilgileri ilgili tablolara işaret edilmiştir. Bu tek
bir veritabanında gösterilmiş bir yapılanmadır. Bu yapıda tablolar
farklı veritabanları üzerinde tutularak yönetim kolaylaştırılabilir. Bu
durumda oldukça dinamik ve etkin bir mekanizma kurulmuş olur.

Dağıtık veritabanları arasında istemci-sunucu yöntemi ile bağlantı kurulur.


Az önce belirtilen en üst seviye alan adları arasında ‘com’, ‘net’,
‘gov’ vb yanında ülkelerin ISO tarafından belirlenen sembolleri de
tanımlanmıştır (tr, uk, fr, gr gibi).

Yukarıdaki açıklamaların paralelinde oluşan hiyerarşik alan adı ağacı Şekil 2’de gösterilmiştir.




Alan adı dağılımı en üst seviyeden başlar ve alt dallara doğru bölünür.
Bir alan adının okunuşu en alttan başlayarak en üste doğru yapılır.
Ağacın en altında bulunan alan adı ‘ankara.ulak.net.tr’ şeklinde
okunacaktır.

En üst seviye alan adlarının yönetimi InterNIC
tarafından yapılmaktadır. ISO kodları ile tanımlanmış ülke adlarının
yönetimi ülkelere göre değişiklik göstermektedir. Türkiye’nin ISO kodu
olan ‘tr’ üst seviye alan adının yönetimi Orta Doğu Teknik Üniversitesi
(ODTÜ) tarafından yapılmaktadır. Dolayısıyla ‘com’, ‘net’, ’gov’ gibi
alan adlarına kayıt InterNIC tarafından; ‘com.tr’, ‘net.tr’ gibi alan
adlarına kayıt ODTÜ tarafından yapılmaktadır. Alan adı kayıtlarıyla
ilgili daha fazla bilgi için http://www.internic.net ve http://dns.metu.edu.tr adresleri incelenebilir.


‘ankara.ulak.net.tr’ örneğinde, ‘ankara.ulak.net.tr’ alan adı UlakNet
sunucuları üzerinde, ‘ulak.net.tr’ alan adı ODTÜ sunucuları üzerinde,
‘net.tr’ alan adı yine ODTÜ sunucuları üzerinde, ‘tr’ alan adı ise root
server adı verilen en üst seviye alan adı sunucuları üzerinde
tanımlanmış durumdadır. Dikkat edilmesi gereken nokta alan adları
alındıktan sonra bu alan adındaki isimlendirmenin lokalde yapıldığıdır.
Bu daha önce de değinilen yönetimin dağıtık olarak yapılabilmesini
sağlar.

Bu bilgiler ışığında ‘xxx.ankara.ulak.net.tr’ ya da
‘yyy.ulak.net.tr’ şeklindeki bir tanımlama UlakNet’in kontrolünde,
benzer şekilde ‘abc.com.tr’ ya da ‘xyz.net.tr’ şeklindeki bir tanımlama
ise ODTÜ’nün kontrolündedir.

İncelenen alan adı ağacı maksimum 127 basamaktan oluşabilir ki bu da pratikte ulaşılması imkansıza yakın bir değerdir.


3 DNS Çözümlemesi


DNS’in yapısı anlatılırken dağıtık bir veritabanı şeklinde
oluşturulduğu ve uçların birbirbirleriyle istemci sunucu mantığı ile
konuştuğunu söylenmişti. Bu işlevi yerine getiren programlara alan adı
sunucu adı verilir (name server). Alan adı sunucularını alan adı ağacı
üzerinde nokta ile gösterilirler.

Her alan adı sunucu bir
veya birkaç alan adı bilgisini tutar ve bu alan adları için en yetkili
alan adı sunucudur. Diğer alan adları için sorgularda bu alan adları
için en yetkili alan adı sunucularını bulmaya çalışır.

Alan
adı sunucular yerine getirdikleri kritik işlev nedeniyle genellikle
yedekli olarak çalıştırılırlar. Bilgilerin tutulduğu ana veritabanı
birincil alan adı sunucu olarak adlandırılır. İkincil sunucualr
birincil alan adı sunucularının verilerini periyodik olarak kendi
veritabanına kopyalarlar. Birincil sunucuda herhangi bir problem
yaşandığında sorgulama ikinci sunucular üzerinde yapılır.

DNS çözümlemesi birkaç kademede incelenebilir. UlakNet alan adı sunucusunu kullanan bir istemcinin ‘www.ulak.net.tr’
adresini sorguladığı durumda sunucu kendi veritabanında tanımlı olan bu
adresi istemciye döndürecektir. Bu, UlakNet alan adı sunucusu
‘ulak.net.tr’ alan adı altında bulunan tanımlar için en yetkili sunucu
olduğu için bu şekilde gerçekleşmiştir.

Şekil 3’te bu sorgunun nasıl gerçekleştirildiği görülmektedir.



Şekil 3

Görüldüğü gibi istemci ‘www.ulak.net.tr’
adresini bu alan adı için en yetkili durumdaki alan adı sunucusunda
sorgulamış ve bu adrese tanımlanmış IP adresi cevap olarak
döndürülmüştür.

Benzer bir sorgulamayı Amerika kıtasında
‘ns.digex.net’ adlı alan adı sunucuyu kullanan bir istemcinin yaptığı
durum incelenebilir.

‘ns.digex.net’ kendisine sorulan ‘www.ulak.net.tr’
için herhangi bir bilgiye sahip değildir. Bu yüzden kendi veritabanında
tanımlı olan en üst seviye alan adı sunucularına (root-servers, daha
sonra detaylı olarak açıklanacaktır) bu adresi sorar. Bu sunucu
(a.root-servers.net) da ‘www.ulak.net.tr’
için kesin bilgiye sahip değildir. Ancak ‘.tr’ üst seviye alan adının
‘ns1.metu.edu.tr’ sunucusu tarafından kontrol edildiğini bilmektedir.
Bu yüzden, ‘ns.digex.net’e sorguyu ‘ns1.metu.edu.tr’ üzerinde yapması
bilgisini iletir. ‘ns.digex.net’ bu kez aynı adresi ‘ns1.metu.edu.tr’
üzerinde sorgulayacaktır. Ancak bu sunucu da ‘www.ulak.net.tr’
için kesin adresi bilemeyecek ve sorgunun ‘ulak.net.tr’ alan adı
sunucusu olan ‘ns.ulak.net.tr’ adresine yönlendirilmesini
bildirecektir. Son olarak ‘ns.digex.net’, ‘www.ulak.net.tr’ adresini ‘ns.ulak.ne.tr’ üzerinde sorgulayacak ve ‘ns.ulak.net.tr’ kendi veritabanında ‘www.ulak.net.tr’
için tanımlı olan 193.140.83.9 adresini döndürecektir. Bu bilgiye
ulaşan ‘ns.digex.net’ de kendi istemcisine bu bilgiyi iletecektir.

Bu sorgulama şekil 4’te gösterilmiştir.


_________________

Sayfa başına dön Aşağa gitmek
Kullanıcı profilini gör http://www.tiklayin.net
DiAbLoOo
Co-Admin
Co-Admin
avatar

Mesaj Sayısı : 3003

Yaş : 29

Nerden : Derzulya-Kuraf
Lakap : HaBiS

İsim : Ümit

Kötü İtibar :
0 / 1000 / 100


Deneyim :
70 / 10070 / 100


Kayıt tarihi : 24/05/08

MesajKonu: Geri: DNS Anlatımı [Ayrıntılı]   Çarş. Eyl. 17, 2008 4:34 pm

Bu analizde dikkati çekmesi gereken iki önemli nokta bulunmaktadır.


Öncelikle ‘.tr’ dan sorumlu gözüken
‘ns1.metu.edu.tr’nin ‘.net.tr’ için ayrı
bir alan adı sunucuya yönlendirme yapmadığı, doğrudan
‘ulak.net.tr’ alan adı sunucusuna yönlendirme
yaptığına dikkat edilmelidir. Bu ‘ns1.metu.edu.tr’ hem
‘.tr’ hem de ‘.net.tr’ için alan adı
sunucusu olduğu için bu şekilde gerçekleşmiştir. Eğer
‘.tr’ ve ‘.net.tr’ farklı sunucular
üzerinde tanımlı olsalardı ‘ns.digex.net’ ayrıca
‘.net.tr’den sorumlu sunucuyu da sorgulamak durumunda
kalacaktı.

Dikkat edilmesi gereken diğer nokta ise
istemcinin alan adı sunucuya yalnızca bir sorgu iletmesi ve tüm iş
sunucu tarafından yapıldıktan sonra yalnızca cevabı almasıdır. Aynı
durum ‘ns.digex.net’ diğer alan adı sunuculara ulaşırken
ortaya çıkmamış ve her biri ayrı ayrı sorgulanmıştır. Bunun
sebebi ‘ns.digex.net’ sunucusunun tekrarlı (recursive),
diğer alan adı sunucularının ise tekrarlı olmayan (iterative) bir
şekilde sorgulanmış olmasıdır.


4 IP’den İsim Çözümlemesi


Bölüm 3’te isimden adres çözümlemesi
incelenmiştir. Şu ana kadar anlatılan yapı tüm sistemin isimden
adres çözümü için tasarlandığı izlenimini
vermektedir. Ancak pratik ihtiyaçlar, IP adresinden isim
çözümünü de gerekli kılmaktadır.


Böyle bir sorgunun şu ana kadar incelenen yapı üzerinde nasıl
çalışabileceğine bakalım. İsimlerin indesklenmesine göre
oluşturulmuş hiyerarşik bir sistem görülmektedir. Ancak IP
adreslerin bu yapı üzerinde herhangi bir hiyerarşik yapısı
bulunmamaktadır. Örneğin ‘www.ulak.net.tr’
adresi 193.140.83.9 IP numarası ile adreslenmişken
‘truva.ulakbim.gov.tr’ adresi 193.140.83.13 IP numarası ile
adreslenmiş olabilir. Bu da 193.140.83. ile başlayan IP’lerin
teorik olarak tüm alan adı uzayına yayılmış olabileceğini
gösterir.

Görüldüğü gibi mevcut
yapıda bir IP adresinin isim karşılığını bulmak için
veritabanının tümünün taranması gerekmektedir. Bu ise
indeksi olmayan dağınık durumdaki milyonlarca kaydın taranması anlamına
gelir ki imkansıza yakın bir uğraştır. Bu sorunun
çözülebilmesi için IP adreslerine için
de hiyerarşik bir yapının kurulması gerektiği görülmektedir.


Bu yapıya geçmeden önce IP adreslemenin özelliklerinin
hatırlanması yararlı olacaktır. IP adresleri ilk oktetten son oktete
(soldan sağa doğru) en genelden en özele doğru sıralanırlar.
Örneğin ‘193.140’ hem
‘193.140.83.13’ü hem de ‘193.140.83.9’u
içine alır.

Alan adları ise buna ters olarak sağdan
sola doğru en genelden en özele doğru sıralanırlar. Örneğin
‘.tr’ hem ulak.net.tr’yi hem de
‘metu.edu.tr’yi içine alır.

İki
gösterim de genelden özele sıralanabildiğine göre mevcut
hiyerarşik yapılandırmaya IP numaraları için bir üst seviye
alan adı eklenmesi mümkündür. Bu alan adı
‘in-addr.arpa’ şeklinde ifade edilir. Bu üst seviye
alan adı 1’dan 255’e kadar çeşitli alt alanlara
bölünür. Bu bölümlemeye 4 okteti tamamlayacak
şekilde devam edilebilir. Bu durumda ortaya çıkan yapı şekil
5’te gösterilmiştir.



Şekil 5


Üst seviye alan adları arasına ‘arpa’ adında bir alan
adı eklenmiştir. Bu alan adının altında ‘in.addr’ şeklinde
bir alan daha tanımlanmıştır. Bu alan adının altında IP numarasının ilk
okteti alan adı olarak eklenmiş, bunu sırayla IP numarasının
ikinci,üçüncü ve dördüncü
oktetleri izlemiştir.

Görüldüğü gibi
artık 193.140.83.13 ve 193.140.83.9 IP numaralarının isim
karşılıklarını bulmak son derce kolaylaşmıştır. İncelene isim sorgusuna
benzer bir şekilde IP-isim sorguları da bu yapının yardımyıla
yapılabilmektedir. Ancak dikkat edilmesi gereken önemli
birkaç nokta bulunmaktadır.

Normal alan adı
isimlendirme sisteminde isimler ağacın en altından en üstüne
doğru okunulur. Bu durumda IP numaraları bilinenin aksine özelden
genele doğru okunacaklardır. Örneğin 193.140.83.13 IP numarasının
DNS ağacı üzerinde okunuşu 13.83.140.193.in-addr.arpa şeklinde
olacaktır.

Dikkat edilmesi gereken diğer bir nokta ise
isimden IP’ye yapılan tanımlama ile IP’den isime yapılan
tanımlama arasında herhangi bir bağlantı bulunmayışıdır. Örneğin
www.ulak.net.tr’
adresi DNS üzerinde 193.140.83.9 olarak tanımlıyken,
‘193.140.83.9’ IP adresinin ismi
‘efe.ulakbim.gov.tr’ şeklinde tanımlı olabilir.


5 DNS Cache


DNS çözümlemesinde anlatıldığı şekilde isim
çözümleme işlemi ardışıl olarak alan adı sunucularının
sorgulanmasını gerektirir. Bu işlem oldukça vakit alıcı bir
işlem olabilir ve karşılıklı olarak sistemler üzerinde yük
oluşturduğu gibi hatlar üzerinde yüksek miktarda bant
genişliği harcayabilir.

Bunun engellenmesi ve sorgunun
mümkün olan en kısa sürede sonuçlandırılabilmesi
için alan adı sunuculara cache özelliği eklenmiştir. Bu
sayede bir alan adı sunucu daha önce sorguladığı alan adlarını
kendi belleğinde tutarak yeni sorgularda diğer alan adı sunucularını
sorgulamadan doğrudan cevap verebilir. Bu yukarıda anlatılan
olumsuzlukları belli bir derecede önleyecektir. Ancak burada
önemli bir nokta gözden kaçırılmamalıdır.


Sorgulanan alan adında son sorgulamadan sonra değişiklik yapılmış
olabilir. Bu durumda bellekte tutulan bilgi güncelliğini
yitirmiştir ve istemciye hatalı bilgi geri
döndürülecektir.

Bu ancak belli bir noktaya
kadar kabul edilebilir bir durumdur. Alan adı tanımları normalde
çok sık değiştirilen tanımlamalar değillerdir. Nadiren
değitirildiklerinde de değişikliğin aktive olması için bir
gün gibi bir süre çoğu zaman yeterlidir. Şu halde
bellekte tutulan bilgilerin bir süre sonra güncelliğini
yitirdiği kabul edilmelidir. Bunu belirleyen değere daha önceki
konularda da değinildiği gibi TTL (Time To Live, Yaşam Süresi)
denilmektedir ve her alan adının tanımlanmasında bu alan adı
için geçerli TTL değeri belirtilir. Bu alan adından
sorgulanan bilgiler bellekte TTL süresince tutulduktan sonra
güncelliğini yitirdiği kabul edilir. TTL’in nasıl
tanımlandığı daha sonra incelenecektir.(ç)alıntıdır.

_________________

Sayfa başına dön Aşağa gitmek
Kullanıcı profilini gör http://www.tiklayin.net
 
DNS Anlatımı [Ayrıntılı]
Sayfa başına dön 
1 sayfadaki 1 sayfası

Bu forumun müsaadesi var:Bu forumdaki mesajlara cevap veremezsiniz
*+. KanKaların Mekanı.+* :: Teknoloji :: İnternet Ve Güvenlik-
Buraya geçin: