30 Temmuz 2014

DNS (Domain Name System) Nedir?

DNS, Domain Name System’in kısaltılmış halidir ve Türkçe karşılığı Alan Adı'dır. 256 karaktere kadar uzanabilen alan adı isimlerini IP’ye çevirmek için kullanılan bir sistemdir.

DNS ‘in çalışma mantığına bakacak olursak aslında arkada ip adresi vardır. DNS’in çıkış sebebi ise ip adreslerini bilmek yerine alan adları şeklinde gözükmesini sağlamaktır.  Bu şekilde her sitenin ip adreslerini ezberlemek zor olacağından sitelerin domain adreslerini bilmek daha kolay olacaktır.


Örn: 173.194.70.121 yerine blog.btrisk.com  domain adresini yazmak gibi.

Alan adı sistemi aradığınız alan adına karşılık gelen ip adresini arka planda kendisi tanımlıyor ve siz o alan adı ile ilişkilenen bilgisayar hizmetlerini, cihazlarını ve servislerini bulabileceğiniz şekilde ip adreslerine dönüştüyor. Kısaca  her alan adına karşılık gelen bir IP adresi bulunmaktadır  ve siz blog.btrisk.com  yazdığınızda bu adrese karşılık gelen ip adresi bulunur. DNS ( Domain Name Server ) sizi o adrese yönlendirecek şekilde ulaşmanızı sağlayan yapıdır.


Dns ne işe yarar?

DNS, host isimleri ile IP adresleri arasında çift taraflı dönüşüm sağlayan dağıtık bir database yapısına sahiptir. DNS veritabanı sistemi en tepede root sunucularının yer aldığı ağaç yapısındadır. Ağaç yapısındaki dallanma maksimum 127 basamaktır. Her nokta maksimum 63 karakterden oluşabilmektedir. DNS sisteminde root nokta (.) ile gösterilir. Veritabanı üzerindeki her bir alt nokta “domain”; bu domainden kollara ayrılan her bir parça ise “subdomain” olarak adlandırılır. Bir adres en alttan root’a gelecek şekilde gösterilir. Aynı düğüm (parent node) altındaki düğümlerin (children node) farklı isimde olması gerekir. Böylelikle domain adları tek olması sağlanmış ve olası çakışmalar önlenmiş olur.

1. DNS TARİHÇESİ


1960’ların sonlarına doğru Amerika’da ilk geniş alan bilgisayar ağı olan ARPAnet kuruldu. Amerika’da bulunan araştırma şirketleri arasında dosya, yazılım ve mail haberleşmesi ile birlikte isim-IP çözümlemesi için sürekli güncel tutulması gereken HOSTS.TXT dosyası oluşturuldu. HOSTS.TXT dosyası SRI-NIC ismi verilen bir bilgisayarda tutuluyordu. Ağa bağlanan her yeni bilgisayar ile bu dosya büyümekteydi. Ayrıca ağda bulunan bilgisayarların çözümleme işlemi için SRI-NIC’ e bağlanmaları gerekti. 1970 lerin sonlarına doğru HOSTS.TXT dosyası sistemin ihtiyaçlarına yetersiz kalmaya başlamıştı.

Bir bilgisayar üzerinden bütün isim-IP eşleştirmelerini çekme işlemi sistemin ihtiyaçlarına gerekli cevabı veremeyince DNS sistemi ortaya çıktı. 1984 te yayımlanan RFC 882 ve 883 e göre DNS sistemi global olarak geçerli olmakla birlikte yerel olarak ta yönetilebilir hale geldi. Yönetimin dağıtık yapıda olması internet trafiğini hafifletirken yerel olarak yönetilebilmesi sistemin daima güncel olmasına imkan sağlamış oldu.


2. DNS MİMARİSİ


2.1. Root Sunucular


Host isimleri-ip dönüşümü ilk olarak root sunucularında başlar. Root sunucuları Top-Level Domain(Üst Düzey Alan ) sunucularının adresini bilirler ve gelen istekleri gerekli TLD(Top Level Domain-Üst Düzey Etki Alanı) sunucularına yönlendirirler. Internet üzerindeki isim çözümlemesinin doğru, güvenli ve devamlı olması için root sunucular gereklidir. Dünya üzerinde isim bazında 13 tane root sunucu bulunmaktadır.

2.2.  Top-Level Domain Sunucular


DNS domain uzayında ilk görev paylaşımı TLD’ler seviyesinde gerçekleşir. 20 adet jenerik TLD (gTLD) ve 248 adet ülke kodlu ccTLD (country code TLD ) bulunmaktadır. Belli başlı TLD’ler ve açıklamaları şunlardır:


com

Ticari Kuruluşlar

tr

Türkiye

org

Ticari Olmayan Kuruluşlar

us

Amerika

mil

Askeri Kurumlar

gb

İngiltere

net

Network Organizasyonları

de

Almanya

edu

Eğitim Kurumları

au

Avustralya

gov

Devlet Kurumları

fr

Fransa

int

Uluslararası Kurumlar

it

İtalya

info

Bilgi Servisleri

ca

Kanada

name

Bireysel Kullanım

ru

Rusya

tel

İnternet İletişim Servisleri

es

İspanya


2.3. İkinci Seviye Domain Sunucuları


İnternette kullanılması için kişi ya da kurumlara verilen değişken uzunluktaki domain adlarıdır. Örneğin: example.com; test.com …

2.4. Altdomainler


İkinci seviye domainlerden türetilen ilave domianlerdir. Altdomainler DNS ağacının büyüterek istenildiğinde bölümlere ayrılmasına yardımcı olur.

2.5. Sunucu Adı (Host Name)


DNS ağacında bir yaprağa karşı gelen isimler ve kaynak kayıtlarıdır. DNS alan adlandırmasında en sonda yer alırlar. “Sunucu Adı - Host Name” terimi bilgisayar ağlarında bir makine adına karşılık gelir. Bu makine basit bir bilgisayar olabileceği gibi bir ağ yazıcısı, fax makinası, modem, depolama ünitesi, sunucu vb. ağa bağlanabilen herhangi bir araç olabilir. Bu makinaların her birine özgün bir sunucu adı atanabilir.

DNS sisteminde ağ üzerindeki makinalar sunucu adı ve alan adı birleşmesiyle adlandırılırlar. FQDN(Fully Qualified Domain Name) denen bu yapıda her domain ismi maksimum 63 karakterden oluşabilir ve toplamda da 255 karakteri aşamaz.

3. DNS YETKİLENDİRME


DNS'te bir çok organizasyon içersinde bulundurur. Her organizasyon da farklı alt domainlere bölerek yönetimde bulunur. Böylece yönetim bir merkezden yönetilmesi engellenmiş olur. DNS sisteminin temel amaçlarından biri olan yönetimin dağıtılması yetkilendirme (delegation) aracılığı ile gerçekleştirilir.

Yetkilendirme ile birçok subdomain’e bölünebilir. Subdomain’lerden herhangi birinin sorumluğunun başka bir organizasyona verilmesi “delegation” olarak adlandırılır. Her bir subdomain için farklı kurumlar yetkilendirilebilir. Tüm top-level domain’ler ile second-level ve daha alt seviyedeki domain’ler delegation ile daha küçük birçok yönetilebilir birime ayrılabilirler. Bir DNS server tarafından yönetilen, isim cözümlemesi yapılan bu kücük birimlere zone adı verilir. Bu birimlere ait bilgilerin tutulduğu name server’lara da o zone için “authority – yetkili” denilir.

4. ZONE TİPLERİ


Tek bir DNS domain’i ile ilgili kayıtları tutan veritabanıdır. (text file). test.com bir  zone dur. example.test.com başka bir  zone’dur.

Birincil (Primary) Zone(Master Server):  Üzerindeki kayıtların doğrudan güncellenebildiği zone türüdür. Manuel kayıt güncellemesi ya da IP’si değişen bir bilgisayar tarafından otomatik kayıt güncellemesi doğrudan yapılabilir.

İkincil (Secondary) Zone(Slave Server): Diğer bir secondary zone türüdür. Secondary zone’dan farkı Primary zone üzerindeki tüm kayıtlar buraya kopyalanmaz. Sıklıkla iki farklı domaine sahip yapıların ya da şirketlerin birleşmeleri ve birbirlerine doğru isim çözümlemeleri ihtiyacı oluştuğunda kullanılır. A, NS ve SOA tipi kayıtlar buraya kopyalanır.

Kalıntı (Stub) Zone: Primary zone’un kısayolunu belirten zone tipidir.Yalnızca NS, SOA ve A kayıtlarını içeren zondur. Stub zone içeren sunucu o zondan sorumlu (authoritative) değildir.

Active directory Integrated Zone : Active Directory yapısına uygun Primary,Secondary veya Stub zone türüdür.

Conditional forwarding:  Şartlı yönlendirmedir. Amaç belli bir zone için yapılacak sorguları doğrudan o zone’u barındıran DNS sunucuya yönlendirmektir. Böylece hem doğru, hem hızlı, hem de güncel bilgi almamızı sağlanır. Bu yüzden oluştururken domain adı ve o domaini barındıran dns sunucu bilgisi girilir.

Birincil zone ile ikincil zone bilgilerinin eşitliği SOA kaydı içindeki seri numarasıyla belirlenir. Seri numarasının eşit olması zone transferinin gerekli olmadığını belirtir. Master sunucudaki seri numarasının daha büyük olması zone’un güncellendiğini ve zone transferinin gerekli olduğunu gösterir. Domain ağdaki bütün bilgisayarları içerirken, Zone DNS’te her bir domain ya da subdomain için oluşturulan kayıtların tutulduğu bölümün tamamına verilen isimdir.

5. DNS SORGU TİPLERİ


Dns sorguları bir istemci dns sunucuya ya da dns sunucudan başka bir dns sunucuya olabilir. Recursive Query ve İterative Query olmak üzere iki tip sorgu tipi vardır.

5.1. Özyinelemeli (Recursive) Sorgu

İstemcinin, ağ üzerinde bir kaynağa veya bir internet sitesine bağlanmak üzere ip adresini DNS sunucusuna sorarken yaptığı sorgu tipidir. Bu sorgu olumlu ya da olumsuz cevaplanmak zorundadır. İstemci sorgusunu dns sunucuya recursive sorgu olarak yapar, dns sunucu da istemcinin yaptığı sorguyu alır ve cevabı iletir. Eğer dns sunucu cevabı bilmiyorsa diğer dns sunucu ya da sunuculara sorarak öğrenir ve sorguyu yapan istemciye cevabı olumlu ya da olumsuz olarak yapar.

5.2. Tekrarlamalı (Iterative) Sorgu


Dns sunucuların kendi aralarında yaptıkları sorgulara denir. İstemcinin dns sunucuya ulaşmak istediği ip adresini sorduğunda dns sunucu bu ip adresini biliyorsa cevap verir. Eğer dns sunucu istemcinin istediği isim cözümlemesini kendi database'inden ya da cache'inden karşılayamıyorsa internette ya da localde bulunan diğer dns sunuculardan ip adresini ister. Bu işlemi istenilen ip adresini bulana kadar sürdürür. İterative sorgu ile sorgu yapılan sunucudan sahip olduğu en sağlıklı cevabı ister.

6. DNS İSİM ÇÖZÜMLEMESİ


DNS sunucuları sorumlu olduğu ve de başka yollar ile öğrendiği bütün FQDN’leri ve IP adreslerinin listesini belleğinde saklar. İstemcilerin öğrenmek istediği IP ve FQDN’leri öğrenebilmesi için sorgusunda FQDN/IP, sorgu çeşidini (Kaynak Kaydı(Resource Record)) belirtmesi gerekir.

İstemci tarafından yapılan bir DNS sorgusunun işleyişi şu şekilde gerçekleşir:
  1. DNS Name Cache: Önce cache adı verilen önbelleğe bakılır. Eğer erişmek isteyen bilgisayar, sunucuya daha önce eriştiyse bunu cache’de tutar ve burada tuttuğu bilgiyi kullanarak bu bilgisayara erişir. DNS cache’i ipconfig /displaydns komutu ile öğrenilebilir.
  2.  Host file: C:\Windows\system32\drivers\etc altında bulunan host dosyası notepad ile açılırsa çözülmesi istenen adresin karşılığındaki IP adresinin tutulduğunu göreceksiniz. Bu dosyayı değiştirip adresin istediğiniz IP’ye gitmesini sağlamak mümkündür.
  3. Eğer DNS sunucusu sorguyu host dosyasından cevap bulamazsa, belleğinde kayıtlı Root(Kök) DNS sunucularına sorguyu yönlendirir.
  4. Kök sunucuları sorguyu ilgili TLD sunucularına yönlendirir.
  5. TLD sunucuları sorguyu ilgili sunuculara yönlendirerek istemciye cevap dönülmesi sağlanır.

Dns çözümleme

6.1. Caching


DNS sunucuları ve istemciler bir kere öğrendikleri bilgiyi belli bir TTL(Time-To-Live) değeri süresince belleklerinde tutarlar. Böylece yapılacak sonraki aynı sorgular için işlem süresi azalır. Caching ile Root sunucuların sürekli sorgulanması önlenir aynı zamanda da veri trafiğinden tasarruf edilmiş olur. TTL değerinin az olması ağ trafiğini arttırır ancak sorguların taze tutulabilmesini sağlar. DNS Server Caching-Only Server olarak kullanılarak sadece cache amaçlı kullanılabilir.

6.2. TTL(Time-To-Live Yaşam Süresi)


Diğer DNS sunucuları/istemcileri tarafından bilginin ne kadar süre ile cache’te tutulacağını belirtir. Aksi halde authoritative server’lardaki değişiklik network üzerinde geçerli olmaz, böylece istemcilere yanlış cevap dönülmüş olur. Bu kısım elle belirtilebileceği gibi SOA kaydı üzerinden de türetilebilir. Eğer bu kısma bir değer girilmezse SOA kaydı üzerindeki ttl değerini alır.

6.3. Ters DNS Çözümlemesi


IP adresinden isim çözümlemesi yapılmasıdır. Ters sorgulama için “btrisk.com” adında özel bir domain bulunmaktadır. Örneğin, 31.210.54.27 adresine karşılık gelen bilgisayar ismini bulmak için DNS sunucuya “btrisk.com” kayıtı sorulur.
Buradan da bu sorguyu yapabileceğiz adresi bulabilirsiniz.

7. DNS SUNUCULARINDA YÜK DENGELEMESİ (ROUND-ROBIN)


Yük dağılımının yapılması ve yedekleme amacıyla domain birden fazla server’da tutulur. Yani aynı host ismine birden fazla IP adresi atanır.

Örneğin, 192.168.23.1, 192.168.23..2, 192.168.23..3 IP’li 3 tane web sunucunuz varsa, aşağıdaki kayıtlar ile istemcilerin her birine sırası ile bağlanmasını sağlayabilirsiniz:


Name
TTL
CLASS
TYPE
Resource Record (RR) Data
www
3600
IN
A
192.168.23.1
www
3600
IN
A
192.168.23.2
www
3600
IN
A
192.168.23.3


Bir resolver bu kayıtları sorguladığında, BIND bunları döndürecektir ve sorgulara farklı sıralarda yanıtlar verecektir. Yukarıdaki örnekte, istemciler kayıtları rasgele olarak 1,2,3; 2,3,1; ve 3,1,2 sırasında alacaklardır. Tüm istemciler döndürülen ilk kaydı kullanacaklar ve diğerlerini dikkate almayacaklardır.

8. DNS Kayıt Türleri


Kaynak kayıtları bir domain isim uzayının yapısını ve içeriğini belirten veri elemanlarıdır. Bütün DNS tanımlama işlemleri kaynak kayıtları cinsinden yapılmaktadır. Yani DNS sunucularının asıl görevi olan isim-ip dönüşümleri Kaynak Kayıtları aracılığıyla yapılır. Kaynak kayıtları formatı RFC 1035 3.2.1. de belirtilmiştir. Kaynak kayıtları genel olarak

“Alan Adı    ttl   Sınıf   Kaynak Kaydı    Kayda Özgü Veriler”   şeklindedir.

Alan Adı: Kaynak kaydı yapılacak adresi belirtir.

ttl(time to live): Diğer DNS sunucuları/istemcileri tarafından bilginin ne kadar süre ile cache’te tutulacağını belirtir. Bu kısım elle belirtilebileceği gibi SOA kaydı üzerinden de türetilebilir. Eğer bu kısma bir değer girilmezse SOA kaydı üzerindeki ttl değerini alır. Burada dikkat edilecek husus sunucun üzerindeki verilerin durumuna göre optimum seviyede bir ttl süresi belirlemektir.

Sınıf: Kaynak kaydın sınıfını belirten anımsatıcı bir değer içerir
0                      Rezerve
1                      İnternet (IN) 
2                      Atanmamış 
3                      Chaos (CH) 
4                      Hesiod (HS) 
5-65534          Atanmamış
65535             Rezerve


A KAYDI


Adres kaydıdır. Bu kayıt host kayıtlarını ilişkili ip adresiyle eşleştirir. 32 bitlik IPV4 adresini DNS domain ismine eşler.


Alan Adı

TYPE

IP

Sınıf

TTL

btrisk.com

A

31.210.54.27

IN

3600


AAAA KAYDI


A kaydı ile aynı işi yapar yani hostname leri ip adresleri ile eşler ama ip V6 ile kullanılmak üzere tasarlanmış bir kayıttır. 128 bitlik IPV6 adresini DNS domain ismine eşler.


Alan Adı

TYPE

IP

Sınıf

TTL

google.com

AAAA

2a00:1450:400d:804:0:0:0:1005

IN

299 (4 min 59 sec)


ATMA KAYDI


ATM(Asynchronous Transfer Mode) adres kaydıdır. Alan adı alanında geçen DNS adresini atm address alanında geçen ATM adresine eşler.


Alan Adı

Atm Adres

Sınıf

TTL

atm-host  

36.0074.10010200000000000009.00a45b000002.00

ATMA

3600


CNAME KAYDI


Canonical name kaydıdır. Alan adı kısmındaki alternatif domain ismini canonical name alanındaki birincil DNS domain ismine eşler. Mevcut bir A ya da AAAA kaydını farklı bir isim ile çözmeye yarar. Herhangi bir sunucuya gerçek isminden başka bir isimle erişmek istendiğinde bu kayıt tipi kullanılır.


Alan Adı

Canonical Name

Sınıf

TTL

bim.btrisk.com

cit.btrisk.com.

CNAME

3600


HINFO KAYDI


Host Information kaydıdır.  Alan adı kısmındaki DNS adresinin bulunduğu bilgisayar üzerindeki işlemci ve işletim sistemlerine ait bilgileri verir. Bu bilgi ftp gibi bilgisayarlar arası iletişimde özel prosedürler gerektiren bazı uygulama protokolleri tarafından kullanılabilmektedir.


Alan Adı

CPU/OS type

Sınıf

TTL

btrisk.com

INTEL-386 WIN32

HINFO

3600


ISDN KAYDI


ISDN (Integrated Services Digital Network) kaydıdır.   DNS domain ismini bir telefon numarasına eşler.



Alan Adı

ISDN adres

Sınıf

TTL

cc_tbtrisk.com

009012345678913

ISDN

3600


MX KAYDI


Mail Exchanger kaydıdır. Alan adı alanındaki domain’e gönderilmek istenen e-postaların mail exchanger host’ta belirtilen adrese yönlendirilmesini sağlar.  Eğer birden fazla exchanger belirtilmiş ise her MX kaydına bir öncelik değeri  verilir. Değeri düşük olan kayıt önce tercih edilir.


Exchange

Alan Adı

Type

Sınıf

TTL

ASPMX.L.GOOGLE.com

btrisk.com

MX

IN

3600


NS KAYDI


Name server kaydıdır. Networkte bulunan ve kullanılan DNS serverlerin tutulduğu kayıt türüdür. Yani bir DNS server networkte bulunan başka bir DNS server ile bu kayıt sayesinde daha kolay ve hızlı bir şekilde haberleşir.


Alan Adı

Type

Sınıf

Name Server Domain Name

TTL

example.btrisk.com

NS

IN

nameserver1.btrisk.test.com

 

3600


OPT KAYDI


Option kaydıdır. OPT kaydı transport katmanı mesajlarına(örneğin UDP) ait bir kayıttır. Bir DNS sorgusu ya da cevabında additional data kısmına bir OPT kaydı eklenebilir. Fakat her mesaj için gerekli değildir.


İsim

Type

Sınıf

TTL

Rdlen

Rdata

test

OPT

IN

1280

0

0


PTR KAYDI


Pointer kaydıdır. in-addr.arpa domaininde kullanılır. IP’den isim çözmek için gerekli kayıt türüdür.  Ters DNS sorgularında verilen; bir ip adresine karşı düşen DNS adresini bulmak amacıyla kullanılır.


Alan Adı

Type

Target Domain Name

TTL

1.0.0.10.in-addr.arpa

PTR

pc.test.com

3600


RP KAYDI


Responsible Person kaydıdır. Alan adı kısmında belirtilen domaine ait sorumlu adres bilgisini belirtir.


Alan Adı

Type

MailBox Name

Text Record Name

TTL

deneme.btrisk.com

RP

ns1.btrisk.com

hostmaster.btrisk.com

3600


SIG KAYDI


İmza kaydıdır. Kaynak kayıt kümesini,  domain ismine ve geçerli olduğu aralığa enkripte eder.



Alan Adı

Sınıf

TTL

Signature Expiration

Signature İnception

Key İdentifier

Signer Name{Dijital Signature}

widgets. btrisk.com

 

SIG

86400

19700101000000

19700101000000

49292

widgets.btrisk.com.{

AIYADP8d3zYNyQwW2EM4wXVFdslE

JcUx/fxkfBeH1El4ixPFhpfHFElxbvKoW

mvjDTCmfiYy2X+8XpFjwICHc398kzW

sTMKlxovpz2FnCTM=

}


SOA KAYDI


Bir DNS zone ile ilgili Name Server, domain administrator’un e-mail adresi, replikasyon bilgisi ve diğer birkaç sayaç bilgisinin tutulduğu kayıt türüdür.


Name Server

Type

Responsible( Serial Number, Refresh İnterval, Retry İnterval, Expiration, Min. Time to Live)

nameserver.example.btrisk.com.

 

SOA

postmaster.btrisk.microsoft.com. (

                               1               ; serial number

                               3600         ; refresh   [1h]

                               600           ; retry     [10m]

                               86400       ; expire    [1d]

                               3600 )       ; min TTL   [1h]

 


serial number: Seri numarasını belirtir. Yapılan her değişiklikte bu numara artar. Zone transferleri bu numaraya bakılaraktan yapılır.
refresh interval: İkincil DNS sunucusunda zone bilgisinin yenilenmesi gereken süreyi belirtir. Bu sure dolduğunda zone bilgisinin yenilenmesi gerekir.(saniye)
retry interval: Bir şekilde tamamlanamamış zone yenileme denemesinden sonar beklenen süredir.(saniye)
expiration: Zone bilgisinin yenilenemediği durumlarda ikincil sunucunun sorgulara yetkili olarak cevap vermeyi kesmesi için geçmesi gereken süredir.(saniye)
minimum time_to_live: İkincil sunucunun zone dosyasını önbellekte tutma süresidir. (saniye)


SRV KAYDI


Özel bir servisin hangi port ve hangi IP’den verildiğinin bilgisini tutan kayıttır. Örnek olarak KMS (Key Management Service) için DNS’e SRV kaydı girilir ve windows sistemler ürün anahtarı doğrulamasını otomatik olarak gerçekleştirir.


Service.Protocol.Name

Type

Preference

Weight

Port

Target

_ldap._tcp._msdcs

 

SVR

10

0

389

dc2.example.btrisk.com

 



servis: Kullanılan servisin sembolik adıdır.  smtp gibi…
protokol: İletişimprotokolüdür.TCP, UDP gibi…
isim: Kayda ait domain ismi. Bu kaynak kaydıi sorgulanmaması yönüyle diğer kayıtlardan ayrılır.
öncelik: hedefte belirtilen bilgisayar için öncelik değeri belirtir.
ağırlık: hedefte birden fazla sunucu belirtilmesi durumunda öncelik değerine ek olarak kullanılabilen yük dengeleme(load-balancing) için kullanılır.
port: sunucuya ulaşılacak bağlantı noktası
hedef: İstenilen servisi sağlayan sunucunun DNS domain adıdır. Burada belirtilecek hedeflerin mutlaka A kaydı yapılmış olmalıdır.

TXT KAYDI


Belirli bir kaynak hakkında, nerde bulunduğu ve sahipliği gibi açıklayıcı bilgileri içeren bir kayıttır. Bir text dosyadan ibarettir.


Alan Adı

Type

Record

TTL

btrisk.com

TXT

v=spf1 a mx ip4:77.92.152.20 ip4:77.92.152.15 ip4:77.92.152.0/24 ip4:77.92.153.0/24 ip4:188.132.128.0/21 ~all

3600


WKS KAYDI


Well-known servis kaydıdır. Bir ip adresinde bulunan ve  bir protocol tarafından desteklenen belli başlı TCP/IP  servislerini belirtir.


Alan Adı

Type

Protocol

Adres

Servis List

TTL

deneme.btrisk.com

WKS

TCP

172.16.1.2

Telnet Smtp Ftp

3600


X.25 KAYDI


X.25 kaydıdır. Bir domain ismini PSDN(Public Switched Data Network) adresine eşler.



Alan Adı

Type

Psdn Number

TTL

deneme.btrisk.com

X.25

1234567890

3600


9.   DNS Commandlar


ipconfig registerdns => Bilgisayarı adını ve ipsini DNS e kaydetmek için kullanılır.
ipconfig flushdns => Dns clientların cache belleklerinde tuttukları isim ve ip adres eşleşmelerine ait bilgileri siler,Cache belleği boşaltır.(Sorun Çözmek için kullanılır)
ipconfig displaydns ipconfig displaydns => Eğer kullandığınız bilgisayar aynı zamanda bir DNS client'ı ise, DNS Cache belleğinde bulunan IP adresleri ve onlara ait olan DNS isimlerinin gösterilmesini sağlar.

Nslookup Komutu
Nslookup komutu DNS'in düzgün çalışıp çalışmadığını  kontrol eder. En basit kullanım alanı makine isminden makine IP adresinin bulunmasıdır.Komutun temel kullanım şekli aşağıdaki gibidir:

nslookup [seçenek] [sorgu]

Tracert
Tracert komutu ile uzaktaki makinaye giden yoldaki geçilen yönlendiriciler hakkında bilgi alınır. Networkde nerde hata var gönderdiğimiz paket nerede takılıyor bunun detaylı bilgisini verir müdahale daha kısa zamanda olur ve saglıklı bilgi edinmis oluruz.

Tracert  www.google.com

DIG Komutu
Dig(domain information groper)Linux sistemlerde DNS kayıtlarına bakmak için kullanılır. DNS adreslerine bakmak istediğiniz siteyi dig komutu ile aratma yapmanız mümkün ve sitede kullanılan tüm DNS kayıtları karşınıza çıkacaktır.

Dig komutu kullanımı
  • "dig <alanadi>"  olarak kullanıldığında size domaine bağlı olan A Kaydını göstermektedir.
  • "dig <alanadi> -t NS" olarak kullanıldığı zaman NS kayıtlarını listelemektedir.
  • "dig <alanadi> -t MX"  olarak kullanıldığı zaman MX kayıtlarını listelemektedir.
  • "dig <alanadi> -t txt" olarak kullanıldığı zaman TXT kayıtlarını listelemektedir.
  • "dig -x <ipadresi> +short" olarak kullanıldığı zaman eskiden kullanılan kayıtları listelemektedir.
  • "dig <dns adresi> <alanadi> -t <aratmak istediğiniz kayıt tipi>" şeklindeki aramalarda /etc/resolv.conf da kayıtlı dns yi kullanmadan bilgi almanızı sağlar
  • "dig <alanadi> +nocomments +noquestion +noauthority +noadditional +nostats"
    • +nocomments bilgileri kapatır
    • +noauthority  yetki alanını kapatır
    • +noadditional ek bölümleri kapatır
    • +nostats istatistikleri kapatır.
Bunlarla uğraşmak istemiyorsanız size uzun geliyorsa
  • "dig -f kayit1.txt -t   MX +noall +answer " olarak kullanıldığında txt dosyasındaki MX kayıtlarını tek tek bakarak komut dizininde size listeleyecektir.
  • “dig -h” komutu ile dig’in yardım menüsüne erişilebilir.
  • " dig @ns1.example.com example.com axfr"  zone transfer işleminde kullanılır.

dig <alanadi>  +noall   +answer komutunu kullanarak +noall yani yukarıda yazılanların kapatılması işlemi cevap içinde + answer yazıyoruz.

10. Zone Transferi


 Zone Transferi; Belirli bir işlem sonucunda DNS veritabanının bir sunucudan başka bir sunucuya aktarılmasına denir.

Zone transfer işlemlerinin amacı, network ortamında bulunan bilgisayarların, IP adresleri ve isim çözümlemelerinde meydana gelen değişiklikler durumunda ve DNS server içerisindeki zone veritabanının da meydana gelen değişiklik sonucunda, bu değişikliklerin diğer DNS server sunucuları arasında güncelleştirmesini sağlar. Eğer bunun üzerinde değişiklik herkese açıksa buraya saldırgan tarafından kayıtlar atanır.

10.1. Dns Hijacking


Dns hijacking merkez dns'ler, kök dns sunucularda, name serverı yönettiğiniz domain paneli üzerinde, host üzerinde name serverlarin tanımlı olduğu alanda değişiklik yapılmasını sağlayan hacking türüdür. Böylece Dns çözümleme işlemi sırasında bir yerlerde bizi doğru sunucuya yönlendirme yerine önceden planlanan ve gerçek olmayan bir sunucuya yönlendirmektedir.

Bir site yasaklamak istiyorsunuz. Sitenin IP kaydını değiştirerek gerçekten girmek istediğiniz site yerine bu site şu anda yasaklıdır sayfasının olduğu bir sunucuya yönlendirebilirsiniz.

Eğer siz her hangi bir websitesinin name server larının yönetimini ele geçirirseniz bu alan adının yönetiminin tamamen ele geçirildiği anlamına gelir. Önceleri Domain Hacking ismi verilen domain haklarının illegal yollarla üzerine geçirilmesi işleminin, günümüzde hak sahipliği anlaşmaları ile garantiye alınarak domainin asıl sahibinin geri alması üzerinde birçok kolaylıklar sağlanmaktadır. Dns hijacking işleminde siz domain hak sahipliğini geçici süre alsanız bile bu kısmi domain hack olur ve domainin yönetimini kısa süreli de olsa elinizde bulundurmuş olursunuz.

Burada dikkat edilmesi gereken şeylerden bir tanesi de şudur. Dns Hijacking işlemi Dns Spoofing ile kesinlikle karıştırılmamalıdır. Arp saldırılarından olan Dns spoofing işleminde olay yerel dns lerle alakalıdır ve genelde yerel networkü ilgilendiren bir konudur.

10.2. DNS spoofing


DNS spoofing, DNS ön bellek zehirlenmesi, ya da domain adı sistemi (DNS) zehirlenmesi, bir Domain Ad Sistemi (DNS) ad sunucusunun ön bellek veritabanına veri eklenerek, ya da oradaki veriler değiştirilerek ad sunucunun yanlış IP adresleri dönmesine ve trafiğin başka bir bilgisayara (sıklıkla da saldırıyı gerçekleştirenin bilgisayarına) yönlendirilmesine neden olan bir saldırıdır. 

Bu saldırıya maruz kalan bilgisayarınıza kullanıcı bir sayfaya (İnternet adresine) gitmeye çalıştığı zaman, isteği farklı bir adrese yönlendirilir. O noktada kullanıcının bilgisayarına kurt, casus yazılım, Web tarayıcı korsan programı veya başka türlü zararlı yazılımlar yüklenebilir, ya da kullanıcı gitmeye çalıştığı siteye benzer, ama sahte bir siteye çekilerek tuzağa düşürülebilir. İnternet üzerinde kullandığınız tüm bilgilerize sahip olabilir. Buna banka şifreleriniz ve Facabook, mail vb. gibi internet şifreleriniz de dahildir.

10.3. Örnek Bir Saldırı


10.3.1. DNS Sorgulama Yapısı

  1. 192.168.163.132 IP adresli saldırgan hedef DNS sunucu üzerinden facebook.com sayfasını sorgular.
  2. DNS sunucuda facebook.com  alan adı bulunmadığından facebook.com  alan adından sorumlu olan a.ns.facebook.com sunucusundan alan adını sorgular.
  3.  a.ns.facebook.com  sunucusu, facebook.com alan adı için geçerli olan 173.252.11.27 IP adresini yanıt olarak hedef DNS sunucusuna döndürür.
  4. DNS sunucusu da saldırgana facebook.com alan adının IP adresi olan 173.252.11.27 adresini döndürür. Burada dikkat edilmesi gereken hedef DNS sunucusunun saldırgan ile haberleşirken istek ve cevaplarda aynı kaynak portu (63) kullanması ve tahmin edilebilir TXID (0x5774) değerini kullanmasıdır. Hedef DNS sunucusundan gelen cevabın geçerli olması için istekte bulunurken kullanılan TXID değerinin cevap kısmında da aynı değerde dönmesi gerekmektedir.
Normal bir sorgulama adımlarında bunlar gerçekleşir. Ancak "Hedef DNS sunucu" un gönderdiği TXID değerini tahmin edebilirsek facebook.com DNS sorgulaması saldırgan saldırganın IP adresini vererek gerçek olamayan bir facebook adresine yönledirecektir.


 


10.3.2. DNS Spoofing Saldırı Örneği

1.Saldırgan Hedef DNS sunucuya facebook.com alanına ait bir çok alt alan ismi (a.ns.facebook.com, b.ns.facebook.com … z.ns.facebook.com) için DNS sorgusu göndermektedir. facebook.com alan adı için Hedef DNS sunucu üzerinde sorgulama yaparak DNS sunucunun bir çok cevaplar beklemesini sağlamaktır. 


Dns spofing saldırısını önleme

 

2. Hedef DNS sunucusu facebook.com sunucularından IP çözümlemesini beklemektedir. DNS sunucu tüm alt alan isimleri için a.ns.facebook.com sunucusuna istekte bulunmaktadır. a.ns.facebook.com sunucusu da tüm alanlar için geri cevaplar vermektedir. Fakat aynı zamanda saldırgan da Hedef DNS sunucuya sanki a.ns.facebok.com sunucusundan geliyormuş gibi cevaplar göndermektedir. Bu cevaplar,  facebook.com  alan adı için IP adresini kendisi göstermektedir ve kendi aralarında bilinen TXID alanını tahmin etmeye çalışmaktadır. 
Domain Name System nedir?




Deneme sonrası a.ns.facebook.com alan adı için k.ns.facebook.com adlan adı için saldırganın gönderdiği cevap paketi TXID alanını doğru tahmin etmesi sonucu hedef DNS sunucu bu cevabın ns.facebook.com'dan geldiğini kabul ederek aslında saldırgana yönlendirmektedir. Böylece saldırgan Hedef DNS sunucusunun belleğini zehirlemiş olmaktadır.

Sonrasında kurban facebook.com adresine gitmek istediğinde Hedef DNS sunucu saldırganın adresine yönlendirdiğinden, saldırganın kurmuş olabileceği sahte bir facebook.com sayfasına erişecektir.