مهام VPN التي تستعيد ملف hosts تمحو التعديلات اللاحقة
خُذ نسخة من ملف hosts عند الاتصال واستعدها عند قطع الاتصال، وستضيع كل تعديل جرى في الأثناء. امنح كل تعيين مالكًا بدلًا من لقطة.
تنسخ مهمة الاتصال ملف hosts في Windows، وتضيف عنوانًا خاصًا واحدًا، ثم تنسخ مهمة قطع الاتصال النسخة المحفوظة إلى مكانها. تعمل على هذا النحو أسابيع، ثم في ظهيرة ما لا تستطيع الآلة الوصول إلى موقع داخلي لا علاقة له بالـVPN. فعلت الاستعادة بالضبط ما أُمرت به: أعادت ملفًا من قبل تعديل شخص آخر. الخلل في النموذج، لا في أمر النسخ.
أي سير عمل يلتقط ملفًا مشتركًا ثم يستعيده لاحقًا يَرث كل تغيير جرى في الأثناء بوصفه خسارة.
نسخة احتياطية تُستعاد لاحقًا ليست نسخة احتياطية للحاضر
تأمّل تسلسلًا عاديًا. تحفظ المهمة الملف وتضيف مدخلًا للنفق. لاحقًا يضيف مسؤول تصحيحًا غير ذي صلة، ويضيف ملف تعريف ثانٍ مدخله الخاص. عند قطع الاتصال تعيد الاستعادة اللقطة الأصلية، فتُزيل مدخل ملف التعريف الثاني وتصحيح المسؤول معًا. لا هذا ولا ذاك يخص الـVPN، وكلاهما مفقود الآن.
اسم ملف احتياطي واحد ثابت يزيد الأمر سوءًا. قد ينسخ حدث اتصال لاحق الملف المعدَّل أصلًا فوق الأصل المفترض، فتنجرف قاعدة الاستعادة نحو صورة الملف عند الحدث الأخير.
كل حدث إشعار، لا معاملة
المهمة التي تُطلقها الأحداث إشعارٌ لا معاملة. قد يعيد اتصال أو إطفاء مبتور أو ملف تعريف ثانٍ تشكيل الحالة المطلوبة بينما مهمة سابقة ما زالت في منتصف الكتابة. لا شيء يُسلسِل الاثنين، ولا شيء يتراجع عن تغيير نصف مكتمل. كما أن معرّف الحدث وحده لا يقول لأي ملف تعريف ينتمي دون المزوّد وبياناته. التعامل مع المهمة كمعاملة هو الافتراض الذي يفشل.
أحداث الاتصال المتكررة هي النصف الآخر: الإضافة دون فحص تُنشئ مدخلًا ثانيًا مطابقًا، فيرى بعض المُحلِّلات عندئذ جوابين لاسم واحد.
امنح كل تعيين مالكًا
كل سطر في ملف hosts يعيّن اسم مضيف إلى عنوان ولا يقول شيئًا عن أي نفق قائم. إذا كانت الأتمتة لا مفر منها، فخصّص مالكًا واحدًا للتعيينات التي تديرها الـVPN. وعلى ذلك المالك أن يحدّث مدخلاته فقط، ويحفظ المحتوى الحالي غير ذي الصلة، ويتجنب التكرار عند حدث متكرر، ويوفّق مع الاتصالات النشطة فعلًا لا مع قائمة محفوظة في الذاكرة.
عندما يحتاج نفقان حيّان التعيين نفسه، يجب ألا يزيله قطع اتصال واحد بينما المالك الآخر ما زال بحاجة إليه. يتطلب ذلك عدًّا مرجعيًا أو سجل ملكية صريحًا، لا قيمة ثنائية.
لا تزال للنسخة الاحتياطية قيمة في الاستعادة المدروسة. لكنها لا ينبغي أن تكون إجراء قطع الاتصال المعتاد، ولا السجل الوحيد لما احتواه الملف.
عندما تكون DNS الشرطية هي الحاجة الحقيقية
إذا كان المطلب الفعلي فضاء أسماء خاصًا لا يُحلّ إلا والنفق قائم، فإن hosts هو الآلية الخطأ. تستطيع Windows NRPT اختيار مُحلِّل لفضاء أسماء، وهي لا تنشئ سجل العنوان بنفسها؛ إذ يبقى على المُحلِّل أن يجيب. هذا تصميم مختلف بمالك مختلف، وهو يزيل تحرير الملف عند كل انتقال بالكامل.
إذا أُبقي hosts عمدًا لخدمة ثابتة واحدة، فتأكد من بقاء عنوانها قابلًا للوصول عبر المسار المقصود ومن بقاء اسم مضيفها مستقرًا كي تستمر فحوص هوية التطبيق في العمل. لا يمكن لمسح ذاكرة DNS المؤقتة أن يصلح مدخلًا قديمًا يقرأه البحث التالي مرة أخرى.
اختبر اتصالات متكررة، وملفَي تعريف متزامنين، وقطع اتصال بعد تعديل غير ذي صلة. وينبغي أن تكون النتيجة أن تعيين الـVPN يتبع مالكه دون إرجاع بقية الآلة إلى الوراء.