Esen;
DNS sorgusu yapmak, bir ağ betinin IP adresini öğrenmek istediğimizde kullanabileceğimiz bir çok yöntem vardır. Şimdi sizlere unix sistemlerde varolan uygulamalar olan “Dig“, “Host”, “Ping” ve “Whois” komutlarını açıklayacağım:
Dig (Domain Information Groper)
Dig komutu, alan adı sorgulamak, DNS bilgisine ulaşmak için kullanılabilen, parametreleriyle çok ayrıntılı bilgi verebilen bir araçtır. (Windows sistemlerde varsayılan olarak bulunmamakla beraber sonradan yüklenebilir.)
OS X ya da Linux makinenizin komut satırına:
dig -h
yazarak komutun ayrıntılarına ulaşabilirsiniz. Dig komutu en kısa yolda şu şekilde çalışır:
dig alanadi.com
$ dig linux.org.tr ; <<>> DiG 9.8.3-P1 <<>> linux.org.tr ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 61708 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;linux.org.tr. IN A ;; ANSWER SECTION: linux.org.tr. 0 IN A 139.179.139.181 ;; Query time: 80 msec ;; SERVER: 77.88.8.8#53(77.88.8.8) ;; WHEN: Sun Jun 5 20:48:19 2016 ;; MSG SIZE rcvd: 46
Yukarıda linux.org.tr alan adını arattık. Şimdi de sonuçları inceleyelim:
1.; <<>> DiG 9.8.3-P1 <<>> linux.org.tr
;; global options: +cmd
Bu giriş kısmında programın sürümünü ve hangi alan adını taradığımı görüyoruz. Yukarıdaki komuta +cmd yazsaydık da aynı çıktıyı alacaktık yani. Bu giriş kısmını +nocmd parametresini ekleyerek kaldırabiliriz.
Ayrıca sorgulamayı varsayılan sunucuya yaptırdık. Alan adını başka bir sunucuya @ karakterinden sonra bir sunucu yazarak da yapabiliriz:
dig linux.org.tr @144.122.199.93
2.
;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 61708 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
Burası yorum kısmı. +nocomments eklenerek kaldırılabilir. 1 sorgu(query) yapılmış 1 yanıt gelmiş(answer).
3.
;; QUESTION SECTION: ;linux.org.tr. IN A
Bu bölüm sorgu bölümü. Yapılan sorgunun A sınıfı bir internet sorgusu olduğunu anlıyoruz. dig komutundan sonra birden fazla alan adı yazarak sorgulama yapabiliriz. Mesela şunu deneyin:
dig google.com yahoo.com
Bu sefer iki tane sorgu(question) ve yanıt(answer) bölümü olacak.
Bu sorgu kısmını +noquestion parametresi ile kaldırabilirsiniz.
4.
;; ANSWER SECTION: linux.org.tr. 5439 IN A 139.179.139.181
Yanıt bölümünde dig komutunu kullanma amacımız olan IP adresini görüyoruz: 139.179.139.181
5.
;; Query time: 333 msec ;; SERVER: 77.88.8.8#53(77.88.8.8) ;; WHEN: Sun Jun 5 21:42:52 2016 ;; MSG SIZE rcvd: 46
Burada ise verilen bazı istatistikleri görüyorsunuz. tarih gibi, sunucu gibi. Bu bölümü de +nostats parametresi ile kaldırabilirsiniz.
Dig ile ilgili olarak en son ve en gerekli komutu veriyorum:
dig +short linux.org.tr
Bu komut ile kısaca hemen IP adresini öğrenebilirsiniz.
Ya da ayrtıntılı bilgi için:
dig linux.org.tr ANY
komutunu kullanabilirsiniz.
Eğer traceroute yapmak isteniyorsa:
dig linux.org.tr +trace
Sadece NS(Nameserver) kayıtlarını görmek için:
dig linux.org.tr NS +short
Şimdi de güzel bir örnek. Diyelim ki elinizde birden fazla alan adı var ve IP sorgulamak istiyorsunuz, önce b,r metin dosyası yaratıp içine tarama yapmak istediğiniz alan adlarını yazıp kaydediyorsunuz; gerisini komut başarıyor:
$dig -f digDeneme.txt +noall +answer linux.org.tr. 7200 IN A 139.179.139.181 pisilinux.org. 184 IN A 104.31.84.247 pisilinux.org. 184 IN A 104.31.85.247 manjaro.gen.tr. 7630 IN A 37.247.110.120 lkd.org.tr. 7103 IN A 139.179.139.181
Ve detaylı bilgi için:
man dig
Host
HOST komutu DNS sorgusu yapmak için basit bir araçtır. Temelde alan adlarını IP adreslerine çevirmek için kullanılır. Host komutunun aldığı birçok parametre vardır ancak eğer hiç parametre girilmezse sade ve anlaşılır bir DNS çıktısı verir:
$ host linux.org.tr linux.org.tr has address 139.179.139.181 linux.org.tr mail is handled by 10 postaci.linux.org.tr.
Bir başka örnek:
$ host google.com google.com has address 172.217.19.110 google.com has IPv6 address 2a00:1450:4016:804::200e google.com mail is handled by 50 alt4.aspmx.l.google.com. google.com mail is handled by 40 alt3.aspmx.l.google.com. google.com mail is handled by 20 alt1.aspmx.l.google.com. google.com mail is handled by 30 alt2.aspmx.l.google.com. google.com mail is handled by 10 aspmx.l.google.com.
Host komutu ters DNS sorgusu da yapabilir:
$ host 139.179.139.181 181.139.179.139.in-addr.arpa domain name pointer eti.linux.org.tr.
-t parametresine eklenecek bazı parametrelerle de sorguyu genişletebilirsiniz. Name server’ları sorgulamak için:
$ host -t ns google.com google.com name server ns2.google.com. google.com name server ns1.google.com. google.com name server ns3.google.com. google.com name server ns4.google.com.
Posta sunucusunu sorgulamak için:
$ host -t mx google.com google.com mail is handled by 50 alt4.aspmx.l.google.com. google.com mail is handled by 40 alt3.aspmx.l.google.com. google.com mail is handled by 30 alt2.aspmx.l.google.com. google.com mail is handled by 20 alt1.aspmx.l.google.com. google.com mail is handled by 10 aspmx.l.google.com.
Komut satırına “man host” yazarak daha çok ayrıntıta ulaşabilirsiniz.
Ping
Bu komut istemciden sunucuya “ECHO_REQUEST” gönderir. Bu komut ile sunucuyu uyarırız ve uyarılan sunucu bize geri paket gönderir. Bu sayede sunucunun etkin olup olmadığını anlayabiliriz. ping komutu sunucudan paketi komut satırına yazdırırken paketin geldiği IP adresini de ekrar yazdırır.
$ ping -c 5 yahoo.com PING yahoo.com (98.139.183.24): 56 data bytes 64 bytes from 98.139.183.24: icmp_seq=0 ttl=38 time=305.928 ms 64 bytes from 98.139.183.24: icmp_seq=1 ttl=38 time=529.739 ms 64 bytes from 98.139.183.24: icmp_seq=2 ttl=38 time=446.530 ms 64 bytes from 98.139.183.24: icmp_seq=3 ttl=38 time=374.029 ms 64 bytes from 98.139.183.24: icmp_seq=4 ttl=38 time=291.530 ms --- yahoo.com ping statistics --- 5 packets transmitted, 5 packets received, 0.0% packet loss round-trip min/avg/max/stddev = 291.530/389.551/529.739/89.153 ms
Ben her zaman -c parametresi ile kullanıyorum ping komutunu. Aksi durumda ping komutu sunucuya paket göndermeye siz “Ctrl+C” ile kesene kadar devam eder.
Whois
Bu komutu öğrendikten sonra bir ağ sayfasından whois sorgusu yapmanıza gerek kalmayacak. Whois, verilen alan adını çeşitli Ağ Bilgi Merkezleri veritabanlarından taratarak elde ettiği sonuçları kamot satırınıza getiren bir uygulamadır.
En basit haliyle şu şekilde kullanılır:
$ whois linux.org Domain Name: LINUX.ORG Domain ID: D2338975-LROR WHOIS Server: Referral URL: http://www.networksolutions.com Updated Date: 2012-11-23T22:47:33Z Creation Date: 1994-05-10T04:00:00Z Registry Expiry Date: 2018-05-11T04:00:00Z Sponsoring Registrar: Network Solutions, LLC Sponsoring Registrar IANA ID: 2 Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited Registrant ID: 22275688-NSI Registrant Name: Linux Online, Inc Registrant Organization: Linux Online, Inc Registrant Street: 314 Franklin Street #2 Registrant City: Ogdensburg Registrant State/Province: NY Registrant Postal Code: 13669 Registrant Country: US Registrant Phone: +1.3153931978 Registrant Phone Ext: Registrant Fax: +1.3153931978 Registrant Fax Ext: Registrant Email: [email protected] Admin ID: 15412138-NSI Admin Name: Michelle McLagan Admin Organization: Linux Online, Inc. Admin Street: P.O. Box 822 Admin City: OGDENSBURG Admin State/Province: NY Admin Postal Code: 13669 Admin Country: US Admin Phone: +1.3153931470 Admin Phone Ext: Admin Fax: Admin Fax Ext: Admin Email: [email protected] Tech ID: 15412138-NSI Tech Name: Michelle McLagan Tech Organization: Linux Online, Inc. Tech Street: P.O. Box 822 Tech City: OGDENSBURG Tech State/Province: NY Tech Postal Code: 13669 Tech Country: US Tech Phone: +1.3153931470 Tech Phone Ext: Tech Fax: Tech Fax Ext: Tech Email: miche[email protected] Name Server: NS1.IQNECTION.COM Name Server: NS2.IQNECTION.COM DNSSEC: unsigned >>> Last update of WHOIS database: 2016-06-14T17:06:56Z <<< For more information on Whois status codes, please visit https://icann.org/epp Access to Public Interest Registry WHOIS information is provided to assist persons in determining the contents of a domain name registration record in the Public Interest Registry registry database. The data in this record is provided by Public Interest Registry for informational purposes only, and Public Interest Registry does not guarantee its accuracy. This service is intended only for query-based access. You agree that you will use this data only for lawful purposes and that, under no circumstances will you use this data to(a) allow, enable, or otherwise support the transmission by e-mail, telephone, or facsimile of mass unsolicited, commercial advertising or solicitations to entities other than the data recipient's own existing customers; or (b) enable high volume, automated, electronic processes that send queries or data to the systems of Registry Operator, a Registrar, or Afilias except as reasonably necessary to register domain names or modify existing registrations. All rights reserved. Public Interest Registry reserves the right to modify these terms at any time. By submitting this query, you agree to abide by this policy.
Yeni bir yazıda görüşmek üzere =)
Comments of this post