DNS Nedir ?

Makale Dizini

İlk satırda görülen değer  daha önce açıklanan TTL değeridir. Bu sunucuya ulaşan istemcilerin sorguladıkları isimleri ne kadar süreyle belleklerinde tutacaklarını gösterir. Bu değerin bilinçsiz olarak değiştirilmesi önerilmez. Çoğu durum için 24 saat uygun bir değerdir. Çok küçük olması DNS trafiğini artıracaktır. Ayrıca 0 yapmaktan kaçınılması gerekir.

İkinci satırın başında görülen ‘@’ alan adını belirten bir kısa gösterimdir, örnekte ‘ulak.net.tr.’nin yerine geçmiştir.

‘@’in yanında görülen ‘IN’, tanımın Internet için bir tanım olduğunu gösterir (Internet haricinde tanımlar yapabilmek mümkün olsa da burada değinilmeyecektir)

SOA, ‘Start of Authority’ anlamına gelir ve alan adı ile ilgili genel tanımları gösterir. Daha sonra gelen ‘hornet.ulak.net.tr.’ sunucunun üzerinde çalıştığı bilgisayarın adı. 'root.hornet.ulak.net.tr.’ ise ilk ‘.’, ‘@’ ile değiştirilmek kaydıyla sunucudan sorumlu kişinin e-posta adresini gösteren tanımlardır.

Sırasıyla verilen serino, yenileme, tekrar ve süre sayısal değerleri sunucu için çeşitli sayaç ve zaman kıstaslarını gösterir. Zaman birimlerinin tamamı saniyedir. Ne anlama geldikleri daha sonra incelenecektir.

Daha sonra görülen ‘NS’ kaydı Name Server (alan adı sunucu) tanımıdır. Her alan adı için en az bir alan adı sunucusu bu şekilde tanımlanmalıdır.

Sonraki satırda ‘ulak.net.tr.’ için tanımlanmış olan ‘MX 10’ kaydı görülmektedir. MX, Mail Exchanger’ı temsil eder ve belirtilen alan adı için posta servisinin çalıştığı bilgisayarın ismini gösterir. 10 ise tercih değeridir. Farklı tercih değerleri içinde en düşük tercih değeri seçilecektir. Buradaki örnek, ‘ulak.net.tr’ alan adına giden mesajların ‘efe.ulak.net.tr’ bilgisayarına yönlendirilmesini sağlar.

Farklı isimlerin yanında olan ‘A’ kayıtları, adres kayıtlarını temsil eder. İsmin hangi IP numarasına karşılık geldiğini gösterir.

Son satırda görülen ‘CNAME’ tanımı ise Canonical Name’den gelir ve bilgisayarlara ikincil isim verilmesini sağlar. Örnekte görülen tanım ‘www.ulak.net.tr’ adresinin ‘efe.ulak.net.tr’ adresi ile aynı olmasını sağlar. ‘A’ kaydına tercih edilmesinin nedeni ‘efe.ulak.net.tr’ tanımı değiştiğinde onu gösteren ‘CNAME’ kayıtlarının da otomatik olarak değişmesidir. Kullanımda bazı problemler yaratabildiği için kullanılması önerilmez. ‘CNAME’ kullanmak yerine farklı ‘A’ tanımları yapmak daha uygundur.

rev.193.140.83: Bu dosya 193.140.83 ağına ait olan IP adreslerinin isim tanımlamalarını içermektedir. İçeriği aşağıda verilmiştir.

$TTL 86400

@       IN      SOA     hornet.ulak.net.tr. root.hornet.ulak.net.tr. (
2000042300 ; Serino
28800      ; Yenileme
14400      ; Tekrar
360000    ; Süre
86400 )   ; TTL
IN      NS      hornet.ulak.net.tr.

9          IN      PTR     efe.ulak.net.tr.
13         IN      PTR     truva.ulak.net.tr.
91         IN      PTR     hornet.ulak.net.tr.

Görüldüğü gibi alan adı tanımları hemen hemen standarttır ve bu dosyanın da içerik olarak az önce incelenen dosyadan çok farkı yoktur. Fark yalnızca yeni ortaya çıkan ‘PTR’ kaydıdır,  pointer (işaret) anlamına gelir. Örnekler sırasıyla ‘193.140.83.9’un ‘efe.ulak.net.tr’, ‘193.140.83.13’ün ‘truva.ulak.net.tr’ ve 193.140.83.91’in ‘hornet.ulak.net.tr’yi adreslediğini gösterir.

Sıklıkla kullanılan temel kayıtlar iki dosyanın içeriğinin incelenmesi  sırasında  açıklanmıştır. Ancak burada belirtilmeyen farklı kayıtlar da mevcuttur.  Bunların listesi ve açıklamaları daha sonra verilecektir.

SOA kaydında belirtilen parametreler aşağıda detaylı olarak incelenmişlerdir.

Serino:

Sunucudan bilgi alan ikincil isim sunucular tarafından kullanılır. Burada belirtilen değerin ne olduğu gerçekte çok önemli değildir. Önemli olan dosya içeriğinde değişiklik yapıldığında mutlaka artırılması gerektiğidir. İkincil isim sunucular bu değere bakarak alan adı içeriğinin değişip değişmediğine karar verirler.

Genellikle yıl, ay, gün ve gün içinde yapılan değişiklik sayısı şeklinde kullanılır.

Yenileme:

İkincil sunucular için birincil sunucuyu ne kadar aralıkla kontrol edeceğini gösteren değerdir. Örneğimizde bu değer 8 saattir. Her 8 saatte bir ikincil sunucu birincil sunucuda değişiklil yapılıp yapılmadığını kontrol edecektir.

Tekrar:

Eğer ikincil sunucu herhangi bir nedenle birinci sunucuya ulaşmakta sorun yaşarsa tekrar denemek için ne kadar bekleyeceğini gösteren değerdir. Genellikle ‘Refresh’ süresinden daha kısa bir süredir. Örneğimizde 4 saattir.

Süre:

Bu kısım oldukça önemlidir. İkincil sunucunun birincil sunucuya ulaşamadığı durumlarda kendisinde bulunan verinin ne kadar daha doğru kabul edildiğini gösterir. Bu süreden sonra ikincil sunucu çağrılara cevap vermeyi keser. 1 haftadan kısa olması kesinlikle önerilmez. ‘Refresh’ ve ‘Retry’ değerlerinden çok daha büyük olmalıdır.

TTL:

Daha önce açıklanan TTL (Time to live) değeridir. İlk satırda ‘$TTL’ ile belirtilenden farkı BIND 8.2.1 ile birlikte buradaki değerin yalnız negatif TTL olarak kullanılmasıdır. Negatif TTL hata veren sorgulamaların bellekte tutulması için geçerli süredir.


4 BIND’ın Çalıştırılması

Daha önce açıklanan konfigürasyon tamamlandıktan sonra, BIND root olarak login olunmuş durumdayken aşağıdaki şekilde çalıştırılır.

[root@hornet /root]#  /usr/sbin/ndc start
new pid is 9089
[root@hornet /root]#

Çalışıp çalışmadığını anlamak için aşağıdaki yol izlenebilir.

[root@hornet /root]# ps -aux |grep named
root      9089  0.0  1.4  2568 1808 ?        S    09:23   0:00 /usr/sbin/named
root      9131  1.0  0.5  1464  712 pts/2    S    09:23   0:00 grep named
[root@hornet /root]#

Görüldüğü gibi ‘named’ işlemi 9089 process ID'si ile çalışmaya başlamıştır. Herhangi bir hata verip vermediği loglardan kontrol edilmelidir.

[root@hornet /root]# tail /var/log/messages

Apr 24 15:15:30 hornet named[9088]: starting.  named 8.2.2-P5 Sun Apr 23 13:45:06 EEST 2000 ^Bu e-Posta adresi istenmeyen posta engelleyicileri tarafından korunuyor. Görüntülemek için JavaScript etkinleştirilmelidir.:/home/ilker/download/bind/src/bin/named
Apr 24 15:15:30 hornet named[9088]: hint zone "" (IN) loaded (serial 0)
Apr 24 15:15:30 hornet named[9088]: master zone "0.0.127.in-addr.arpa" (IN) loaded (serial 2000042300)
Apr 24 15:15:30 hornet named[9088]: master zone "ulak.net.tr" (IN) loaded (serial 2000042301)
Apr 24 15:15:30 hornet named[9088]: master zone "83.140.193.in-addr.arpa" (IN) loaded (serial 2000042301)
Apr 24 15:15:30 hornet named[9088]: listening on [127.0.0.1].53 (lo)
Apr 24 15:15:30 hornet named[9088]: listening on [193.140.83.91].53 (eth0)
Apr 24 15:15:30 hornet named[9088]: Forwarding source address is [0.0.0.0].1038
Apr 24 15:15:30 hornet named[9089]: Ready to answer queries.
[root@hornet /root]#

NOT: Sistem logları farklı unix turevlerinde farklı dizinlerde bulunabilir. /var/log/messages linux için geçerli log dosyasıdır.

Görüldüğü gibi loglarda bir sorunu gösteren herhangi bir belirti bulunmamaktadır.  Alan adı sunucusu sorunsuz olarak çalışmaktadır.