Dig melakukan pencarian DNS dan menampilkan jawaban yang dikembalikan dari server nama yang ditanyakan. Dig adalah kependekan dari 'Domain Information Groper'.
Alat ini adalah alat pencarian DNS alternatif, nslookup. Kecuali jika diminta untuk menanyakan server nama tertentu, Dig akan mencoba setiap server yang terdaftar di '/etc/resolv.conf'.
Dalam tutorial ini, saya akan menjelaskan cara menggunakan perintah dig di Linux beserta contohnya.
perintah gali
Jalankan dig tanpa opsi apa pun (secara default)
Tanpa opsi apa pun, Dig akan melakukan kueri NS untuk "." (akar).
Ini contoh keluarannya.
$ dig
; <> DiG 9.9.2-P1 <> linux.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21655
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 3
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;linux.com. IN A
;; ANSWER SECTION:
linux.com. 1786 IN A 140.211.167.51
linux.com. 1786 IN A 140.211.167.50
;; AUTHORITY SECTION:
linux.com. 86386 IN NS ns1.linux-foundation.org.
linux.com. 86386 IN NS ns2.linux-foundation.org.
;; ADDITIONAL SECTION:
ns1.linux-foundation.org. 261 IN A 140.211.169.10
ns2.linux-foundation.org. 262 IN A 140.211.169.11
;; Query time: 258 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Sat Feb 8 21:35:35 2014
;; MSG SIZE rcvd: 158
Sekarang kita akan membaca outputnya :
; <> DiG 9.9.2-P1 <> linux.com
;; global options: +cmd
Bagian ini memberitahu kita tentang penggalian itu sendiri. Kami tahu versi penggalian yang kami gunakan adalah 9.9.2 dan opsi global yang kami gunakan adalah +cmd.
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21655
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 3
Bagian ini akan memberi tahu kami tentang jawaban teknis dari DNS.
;; QUESTION SECTION:
;linux.com. IN A
Bagian ini memberi tahu kami tentang kueri apa yang kami minta untuk digali
.;; ANSWER SECTION:
linux.com. 1786 IN A 140.211.167.51
linux.com. 1786 IN A 140.211.167.50
Bagian ini memberitahu kita tentang jawaban dari query yang kita lakukan. 'Linux.com' memiliki dua alamat. IP 140.211.167.51 dan 140.211.167.50.
;; AUTHORITY SECTION:
linux.com. 86386 IN NS ns1.linux-foundation.org.
linux.com. 86386 IN NS ns2.linux-foundation.org.
Bagian ini memberi tahu kita tentang DNS (atau siapa) yang memiliki kewenangan untuk menjawab pertanyaan “apa Alamat IP Linux.com?”
;; ADDITIONAL SECTION:
ns1.linux-foundation.org. 261 IN A 140.211.169.10
ns2.linux-foundation.org. 262 IN A 140.211.169.11
Bagian ini memberi tahu kita tentang Alamat IP dari DNS otoritas di atas. Kami dapat menonaktifkan informasi ini dengan +[no]opsi tambahan.
;; Query time: 258 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Sat Feb 8 21:35:35 2014
;; MSG SIZE rcvd: 158
Bagian ini memberi tahu kita tentang beberapa informasi statistik. Kami dapat menonaktifkan informasi ini dengan menggunakan opsi +[‘no]stats.
Kueri perintah gali (Paling umum)
Menggali halaman manual akan menunjukkan banyak pertanyaan yang valid. Namun dalam praktiknya, ada 5 pertanyaan umum.
1) Minta NS
NS adalah kependekan dari Name Server. Ini akan menunjukkan kepada Anda nama server yang bertanggung jawab atas domain linux.com
$ dig linux.com NS
2) Minta MX
MX adalah singkatan dari Mail Exchanger. Menanyakan MX akan menampilkan nama SMTP dari linux.com
$ dig linux.com MX
3) Minta Alamatnya
Untuk menampilkan IP Address dari linux.com, kita dapat menggunakan A kata kunci. A adalah kependekan dari Alamat
$ dig linux.com A
4) TXT Kueri
TXT adalah anotasi teks.
$ dig linux.com TXT
5) Query semuanya
Jika Anda tidak yakin tentang apa yang Anda cari, Anda dapat APAPUN kata kunci.
Opsi permintaan perintah Dig
Saat menjalankan kueri, Dig memberikan opsi untuk menyesuaikan output. Berikut beberapa kasus populer setiap hari.
6) Hanya tampilkan jawaban kueri
$ dig linux.com +noall +answer
7) Tampilkan jawaban dan pertanyaan
$ dig ubuntu.com MX +noall +answer +question
8) Tampilan dalam mode singkat
Opsi ini akan digunakan jika Anda ingin jawaban cepat
$ dig linux.com +short
9) Hanya tampilkan jawaban dan otoritas
Untuk melakukan ini, kita dapat menggabungkan opsi ini :
$ dig ubuntu.com MX +noall +answer +authority
10) Menampilkan kueri multibaris
+multibaris . ini opsi akan menunjukkan kepada Anda catatan seperti catatan SOA dalam format multi-baris verbose dengan komentar yang dapat dibaca manusia. Ini contohnya.
$ dig ibm.com +multiline +noall +answer
Lakukan pencarian terbalik
Dig tidak hanya untuk menanyakan nama ke Alamat IP. Dig dapat melakukan pencarian terbalik yang menanyakan Alamat IP menjadi sebuah nama. Untuk melakukannya, gunakan -x pilihan.
$ dig -x 140.211.167.51 +noall +answer
Output menunjukkan kepada kita bahwa IP '140.211.167.51' adalah milik 'load2d.linux-foundation.org'
Gunakan DNS khusus untuk melakukan kueri
Secara default, Dig akan menggunakan server DNS yang ditentukan di /etc/resolv.conf . Anda
Jika Anda ingin menggunakan server DNS lain untuk melakukan kueri, Anda dapat menggunakan kata kunci @name_of_DNS_server. Ini contohnya.
$ dig @ns2.google.com gmail.com +nostat
Lakukan pencarian massal
Untuk melakukan ini, kita dapat melakukannya dengan 2 cara. Pertama, menggunakan baris perintah.
$ dig linux.com +noall +answer ubuntu.com +noall +answer
Kedua , kita dapat memasukkan nama host atau domain ke dalam file teks. Kemudian gunakan -f opsi untuk menyertakan file.
$ dig -f hostnames.txt +noall +answer
File hostnames.txt berisi baris ini :
linux.com
ubuntu.com
Jika ada baris kosong setelah ubuntu.com, maka Dig akan menanyakan NS untuk "." (root) juga.
Kesimpulan
Dig adalah salah satu alat yang tersedia di sistem operasi Linux untuk menginterogasi server DNS. Dengan fleksibilitas penggalian, administrator dapat menggunakannya untuk menyesuaikan keluaran penggalian. Seperti biasa, kita selalu dapat mengetik man dig atau dig -h untuk mengeksplorasi lebih detail tentang perintah dig.