Membuka halaman beberapa saat selepas terowong naik bukan bukti bahawa DNS kini berfungsi, walaupun tiket biasanya berkata demikian. Tiada apa dalam pemerhatian itu yang memerlukan carian: nama mungkin telah diselesaikan sebelum perubahan dan digunakan semula daripada cache yang tidak pernah disentuh terowong. Dua ujian berbeza menghasilkan skrin yang sama.

Bandingkan apa yang sebenarnya diuji oleh setiap ujian sebelum mengaitkan perubahan itu.

Memuatkan halaman bukan carian

Setiap lapisan antara aplikasi dan penyelesai dibenarkan mengingati jawapan sepanjang hayatnya. Sistem pengendalian menyimpan satu, pelayar menyimpan miliknya sendiri, dan aplikasi dengan sambungan jangka panjang mungkin tidak menyelesaikan apa-apa lagi sepanjang sesi. Oleh itu, pemuatan yang berjaya selepas perubahan terowong boleh menjadi demonstrasi memori dan bukan penghalaan. Ketiadaan kegagalan bukan bermakna kehadiran carian.

Perbezaan ini mengubah apa yang perlu anda uji seterusnya. Jika matlamatnya adalah menunjukkan penyelesai baharu menjawab, anda memerlukan carian yang tidak boleh dilayan daripada cache yang belum anda kosongkan.

Membaca kejayaan cache sebagai bukti bahawa pelayan yang sebelum ini tidak dapat dicapai telah pulih ialah versi kesilapan ini yang paling mahal, kerana ia menutup insiden atas premis yang salah.

Kira cache sebelum membuat kesimpulan

Empat wajar dinamakan: penyelesaian aplikasi itu sendiri, cache klien sistem pengendalian, keadaan dalaman pelayar, dan mana-mana penyelesai rekursif yang akhirnya dicapai oleh carian. Setiap satu mempunyai jangka hayat berasingan dan cara mengosongkan yang berasingan. Mengosongkan satu dan menguji yang lain ialah cara orang membuat kesimpulan bahawa pengosongan tidak melakukan apa-apa. Satu arahan pengosongan tidak pernah menyelesaikan persoalan itu.

Jawapan negatif juga dicache. Nama yang dilaporkan sebagai tiada boleh kekal tiada selepas rangkaian diperbaiki, yang dibaca sebagai terowong rosak sedangkan ia ialah TTL yang belum tamat. Spesifikasi DNS menerangkan cara data ini sepatutnya disimpan dan digunakan semula.

Catat peristiwa, bukan tanggapan

Tuliskan yang mana antara tiga perkara yang berubah: rekod, laluan ke penyelesai, atau tetapan klien. Suntingan rekod merebak mengikut jadualnya sendiri, perubahan laluan berkuat kuasa semasa menyambung semula, dan tetapan pelayar hanya terpakai kepada pelayar itu. Meruntuhkan semuanya menjadi satu sebelum-dan-selepas menghasilkan garis masa yang tiada siapa dapat mengaudit.

Catat masa, penyelesai yang digunakan dan jawapan yang diterima, termasuk kes apabila jawapannya negatif. Itu fakta yang boleh disemak oleh orang lain.

Lakukan perbandingan dua kali dengan cara yang sama

Kosongkan cache yang ingin anda uji, kekalkan pemerhatian asal, kemudian buat carian dengan cara yang memintas sebanyak mungkin memori. Menamakan penyelesai secara jelas memberitahu anda apa yang penyelesai itu tahu; ia tidak memberitahu anda penyelesai mana yang aplikasi akan pilih.

resolvectl flush-caches
ipconfig /flushdns
dig +noall +answer internal.example @10.44.0.53
dig +short internal.example

Di Windows, pengosongan cache klien mengosongkan cache klien DNS dan tiada yang lain. Ia tidak menerangkan keadaan peribadi pelayar dan tidak mengosongkan pelayan huluan, jadi ujian yang dibina di atasnya hanya boleh ditafsirkan secara sempit. Katakan cache mana yang anda kosongkan setiap kali anda melaporkan hasilnya.

Kemudian uji semula aplikasi sebenar dengan permintaan baharu dan dasar penyelesai yang dimaksudkan aktif. Hasil yang dihasilkan di bawah dasar yang berbeza tidak berpindah.

Artikel berkaitan