Apa yang memicu penggunaan waktu negatif untuk menjalankan nilai catatan SOA DNS?

8

Saya membaca tutorial dns berikut dan memiliki contoh di dalamnya:

domain.com.  IN SOA ns1.domain.com. admin.domain.com. (
                                        12083   ; serial number
                                        3h      ; refresh interval
                                        30m     ; retry interval
                                        3w      ; expiry period
                                        1h      ; negative TTL
)

Deskripsi untuk negative TTLnilai mengatakan ini:

1h: Ini adalah jumlah waktu server nama akan men-cache kesalahan nama jika tidak dapat menemukan nama yang diminta dalam file ini.

Apa kondisi yang dapat memicu server untuk menyimpan kesalahan nama seperti ini? Contoh akan sangat membantu.

Ole
sumber

Jawaban:

11

Interval caching negatif SOAmulai berlaku ketika server yang berwenang menunjukkan bahwa catatan yang diminta tidak ada. Kasus spesifik adalah:

  • Balasan dengan kode respons dari NXDOMAIN.
  • Membalas dengan NODATAkeadaan sintetis, tetapi hanya berupa di mana SOAcatatan hadir. ( NOERRORrcode, 0 jawaban, 1 SOAcatatan di bagian otoritas + NScatatan opsional )

Ini umum untuk perangkat lunak server untuk menegakkan maksimum yang dikonfigurasi secara lokal pada nilai ini, jadi bahkan jika Anda memiliki TTL negatif dari 86400tidak adanya tidak harus di-cache selama itu oleh server rekursif jarak jauh.

Kasing dicakup oleh bagian RFC 2308 jika Anda ingin membaca lebih lanjut. Baca bagian 2 sebagai primer, lalu 5-6.

Andrew B
sumber
IIUC jika saya meminta "not.available.example.com" dari server otoritatif maka akan di-cache untuk waktu negatif untuk hidup?
Ole
Benar. Server rekursif penuh andal akan men-cache-non-eksistensi, tetapi perilaku resolver stub (seperti pustaka resolver OS) akan bervariasi. Windows melakukannya, misalnya. Anda akan menemukan "Nama tidak ada." dalam output dari ipconfig /displaydns, yang mewakili NXDOMAIN. Anda akan menemukan contoh "Tidak ada catatan tipe X" di output itu juga, yang sesuai dengan NODATA. Sebagian besar sistem berbasis UNIX tidak , karena mereka tidak melakukan cache sama sekali tanpa konfigurasi tambahan. ( nscddengan caching diaktifkan, server rekursif lokal dan menggunakan 127.0.0.1 untuk pencarian DNS, dll.)
Andrew B
Jadi jika saya membayangkan tujuannya dengan benar, apakah ini dapat memeriksa ulang bahwa "not.available.example.com" benar-benar tidak tersedia sesuai dengan server rekursif penuh? Dengan kata lain jika saya tidak mendapatkan alamat ip, saya dapat meminta server pada sesuatu seperti titik akhir / displaydns, dan hasilnya harus berisi konfirmasi bahwa alamat tersebut memang tidak ada?
Ole
ipconfig /displaydnsada untuk memberi tahu Anda isi dari cache resolver rintisan lokal. Tidak lebih, tidak kurang. Apa yang mungkin ingin dilakukan admin dengan info itu terbuka berakhir.
Andrew B
@Ole Tujuannya adalah untuk mencegah kueri berulang untuk nama, setelah server telah mengatakan kepada resolver bahwa itu tidak ada. Sama seperti caching lainnya.
Barmar