Bagaimana Anda memeriksa apakah server nama merespons kueri rekursif?

18

Saya hanya ingin tahu apakah Anda dapat menggunakan menggali untuk memeriksa apakah server nama tertentu menanggapi kueri rekursif.

Terima kasih!

Mikko
sumber

Jawaban:

20

Gunakan digdan periksa status RDdan RAbit dalam respons.

Secara default digakan mengirim kueri rekursif ( RDdiatur dalam header kueri) kecuali jika Anda menetapkan +norecursebendera baris perintah.

Jika server mendukung kueri rekursif, respons akan RAmenetapkan bit "rekursi tersedia" di header respons.

The RAbit adalah yang tes diagnostik untuk dukungan permintaan rekursif.

Alnitak
sumber
11

Lihat apakah Anda dapat meminta entri DNS yang tidak otoritatif, misalnya, coba host www.cnn.com ns.example.com:, di mana ns.example.com adalah server nama yang Anda uji. Jika tidak menanggapi kueri rekursif, Anda akan mendapatkan REFUSED.

$ host www.cnn.com. ns1.example.com
Using domain server:
Name: ns1.example.com
Address: 192.168.183.130#53
Aliases:

Host www.cnn.com not found: 5(REFUSED)

sedangkan server DNS yang melakukan kueri rekursif:

$ host www.cnn.com. 8.8.8.8
Using domain server:
Name: 8.8.8.8
Address: 8.8.8.8#53
Aliases:

www.cnn.com has address 157.166.255.18
www.cnn.com has address 157.166.255.19
www.cnn.com has address 157.166.226.25
www.cnn.com has address 157.166.226.26
cjc
sumber
Terima kasih banyak @cjc. Saya juga menemukan metode lain tetapi menggunakan dig. Cobalah mencari domain ke server nama yang tidak otoritatif untuk domain tersebut. Jika tidak mengembalikan apa pun, maka itu tidak menanggapi permintaan rekursif.
Mikko
@Mikko, ya, keduanya digdan host(dan sekarang sudah tidak digunakan lagi nslookup) adalah alat permintaan DNS. Semuanya cukup untuk menentukan apakah server DNS memungkinkan kueri rekursif dari alamat IP Anda.
cjc
ini salah - REFUSEDjuga kode respons yang Anda dapatkan jika Anda meminta server nama otoritatif untuk informasi tentang domain yang tidak memiliki file zona.
Alnitak