Sitelerin DNS kayıtlarını sorgulamak için kullanılan bu iki komut oldukça faydalıdır. Bu komutları karşılaştırmalı olarak kullanacağız. nslookup
‘ı OSX ve Windows işletim sistemlerinde de kullanabileceğimizi hatırlatırız. Eğer *nix tabanlı işletim sisteminizde nslookup
veya dig
bulunamadı derse bind-utils
ve dig
paketlerini kurmanız gerekir.
Örneğin bir sitenin A
(Alias) kaydını görüntülemek için:
# nslookup -q=A nbt.net.tr
Çıktı:
[root@server ~]# nslookup -q=A nbt.net.tr
Server: 192.168.1.2
Address: 192.168.1.2#53
Non-authoritative answer:
Name: nbt.net.tr
Address: 77.223.137.4
# dig A nbt.net.tr
Çıktı:
[root@server ~]# dig A nbt.net.tr
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6.3 <<>> A nbt.net.tr
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60575
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;nbt.net.tr. IN A
;; ANSWER SECTION:
nbt.net.tr. 3511 IN A 77.223.137.4
;; Query time: 96 msec
;; SERVER: 192.168.1.2#53(192.168.1.2)
;; WHEN: Wed Apr 3 10:30:22 2013
;; MSG SIZE rcvd: 44
Burada 3511 saniye (~58 dakika) olan TTL
süresini ve A kaydının baktığı IP adresi olan 77.223.137.4 'ü görüyoruz. dig
'in nslookup
'tan farkı TTL süresini göstermesidir.
MX kaydını sorgulamak için:
# nslookup -q=MX nbt.net.tr
# dig MX nbt.net.tr
Bu iki komutta eğer kaydın sorgulanacağı DNS sunucusunu belirtmezsek /etc/resolv.conf
altındaki kayıtlı DNS sunucuları üzerinden sorgular, bu durumda eğer kendi DNS sunucumuzu kullanıyorsak kayıt değişikliğinin yayılması (DNS propagation) zaman alacağından DNS hatalarını belirlemekte bizi yanılgıya düşürebilir zira kendi DNS sunucumuz üzerinde yapılan değişiklik TTL (Bkz. TTL süresi nedir?) süresi dolmadan diğer DNS sunuculara yayılmaz . Bu durumda genelde Google DNS'lerinden (8.8.8.8
veya 8.8.4.4
) sorgulamak faydalı olacaktır:
# nslookup -q=A nbt.net.tr 8.8.8.8
# dig A nbt.net.tr 8.8.8.8