Tugas VPN yang memulihkan file hosts menghapus suntingan berikutnya
Ambil cuplikan file hosts saat tersambung dan pulihkan saat terputus, dan setiap suntingan yang dibuat di antaranya hilang. Beri setiap pemetaan satu pemilik alih-alih cuplikan.
Tugas penyambungan menyalin file hosts Windows, menambahkan satu alamat privat, dan tugas pemutusan menyalin kembali versi yang disimpan. Ini berjalan berminggu-minggu dan lalu suatu sore mesin tidak dapat menjangkau situs internal yang tidak ada hubungannya dengan VPN. Pemulihan melakukan tepat apa yang diperintahkan: ia mengembalikan file dari sebelum suntingan orang lain. Kegagalannya ada pada model, bukan pada perintah salin.
Alur kerja apa pun yang mengambil cuplikan file bersama lalu memulihkannya kemudian mewarisi setiap perubahan yang dibuat di antaranya sebagai kerugian.
Cadangan yang dipulihkan belakangan bukan cadangan saat ini
Telusuri urutan biasa. Tugas menyimpan file dan menambahkan entri untuk terowongan. Belakangan seorang administrator menambahkan koreksi tak terkait, dan profil kedua menambahkan entrinya sendiri. Saat terputus, pemulihan mengembalikan cuplikan asli, menghapus entri profil kedua dan koreksi administrator sekaligus. Keduanya bukan milik VPN, dan keduanya kini hilang.
Satu nama file cadangan tetap memperburuknya. Peristiwa penyambungan berikutnya dapat menyalin file yang sudah diubah ke atas yang dianggap asli, sehingga dasar pemulihan bergeser ke arah seperti apa file itu pada peristiwa terakhir.
Setiap peristiwa adalah pemberitahuan, bukan transaksi
Tugas yang dipicu peristiwa adalah pemberitahuan. Penyambungan ulang, penonaktifan yang terpotong, atau profil kedua dapat membentuk ulang keadaan yang diperlukan sementara tugas sebelumnya masih menulis. Tidak ada yang menyerialkan keduanya, dan tidak ada yang mengembalikan perubahan setengah jadi. Pengenal peristiwa saja juga tidak menyatakan profil mana pemiliknya tanpa penyedia dan datanya. Memperlakukan tugas sebagai transaksi adalah asumsi yang gagal.
Peristiwa penyambungan berulang adalah separuh lainnya: penambahan tanpa pemeriksaan membuat entri kedua yang identik, dan sebagian resolver lalu melihat dua jawaban untuk satu nama.
Beri setiap pemetaan satu pemilik
Setiap baris dalam file hosts memetakan nama host ke alamat dan tidak mengatakan apa pun tentang terowongan mana yang aktif. Jika otomasi tak terhindarkan, tetapkan satu pemilik untuk pemetaan yang dikelola VPN. Pemilik itu sebaiknya hanya memperbarui entrinya sendiri, mempertahankan isi terkini yang tak terkait, menghindari duplikat pada peristiwa berulang, dan menyelaraskan diri dengan koneksi yang benar-benar aktif dan bukan dengan daftar yang diingat.
Ketika dua terowongan hidup membutuhkan pemetaan yang sama, satu pemutusan tidak boleh menghapusnya selagi pemilik lain masih membutuhkannya. Itu menuntut penghitungan referensi atau catatan kepemilikan eksplisit, bukan boolean.
Cadangan tetap bernilai untuk pemulihan yang ditinjau. Itu seharusnya bukan tindakan pemutusan normal, dan seharusnya bukan satu-satunya catatan tentang apa yang dikandung file.
Ketika DNS bersyarat adalah kebutuhan sebenarnya
Jika kebutuhan sebenarnya adalah ruang nama privat yang hanya diselesaikan selagi terowongan aktif, hosts adalah mekanisme yang salah. Windows NRPT dapat memilih resolver untuk suatu ruang nama, dan itu tidak membuat catatan alamatnya sendiri; resolver tetap harus menjawab. Itu rancangan berbeda dengan pemilik berbeda, dan itu menghapus penyuntingan file per transisi sepenuhnya.
Jika hosts sengaja dipertahankan untuk satu layanan tetap, pastikan alamatnya tetap terjangkau melalui rute yang dimaksud dan nama hostnya tetap stabil agar pemeriksaan identitas aplikasi terus bekerja. Membersihkan tembolok DNS tidak dapat memperbaiki entri basi yang akan dibaca lagi oleh pencarian berikutnya.
Uji penyambungan berulang, dua profil bersamaan, dan pemutusan setelah suntingan tak terkait. Hasilnya seharusnya pemetaan VPN mengikuti pemiliknya tanpa memundurkan bagian mesin lainnya.