DNS المشفّر دون VPN يخفي الاستعلام، لا عنوانك
يحمي DNS المشفّر تبادلاً واحداً مع مُحلِّل واحد. وهو لا يخفي عنوانك ولا يعمي المُحلِّل، لذا حدّد الهدف قبل قراءة اختبار التسريب.
اختبار تسريب DNS الذي يُظهر شبكتك المنزلية ليس دليلاً على فشل DNS المشفّر، وليس دليلاً على نجاح أي شيء أيضاً. يجيب الاختبار عن سؤال واحد: أي مُحلِّل وصل إليه هذا الاستعلام، من هذه الشبكة. وما إذا كان ذلك مشكلة يعتمد على ما كنت تحميه وممّن.
اكتب الهدف قبل تشغيل أي اختبار.
الخطوة 1: سمِّ الحماية التي تريدها فعلاً
ثلاثة أهداف تختلط معاً. قد تريد أن يتوقف مراقب على المسار عن قراءة الاستعلامات. وقد تريد أن يتوقف مُحلِّل معيّن عن استقبالها. وقد تريد أن تتوقف المواقع التي تزورها عن رؤية عنوانك المنزلي. يخدم DNS المشفّر الهدف الأول، ويغيّر من يحقق الثاني، ولا يفعل شيئاً ألبتة للثالث.
يخدم VPN الهدف الثالث، وربما الأول بحسب المزوّد. ولا أداة منهما مجموعة شاملة للأخرى.
الخطوة 2: اختر مُحلِّلاً وتحقق من هويته
يُغلِّف DNS over TLS الاستعلام في جلسة TLS مع المُحلِّل، ويُغلِّف DNS over HTTPS في طلب HTTP؛ ويصف RFC 7858 وRFC 8484 كليهما، ولا يحتاج أيّ منهما إلى نفق. المهم عملياً أن تُتحقّق الشهادة مقابل الاسم الذي أعددته، لأن جلسة مشفّرة مع الطرف الخاطئ أسوأ من نص صريح مع الطرف الصحيح. وهذا يعني الوضع الصارم حيث توفره المنصة، لا وضعاً انتهازياً يتراجع عند فشل التحقق. افحص الجلسة مباشرة قبل الوثوق بالإعداد: openssl s_client -connect 9.9.9.9:853 -servername dns.quad9.net -brief.
ينبغي أن يذكر المصافحة المُحلِّل الذي أعددته وأن يعيد سلسلة يمكنك التحقق منها.
الخطوة 3: قرّر سلوك الفشل
لكل تطبيق سياسة تجاه مُحلِّل مشفّر لا يمكن الوصول إليه، وتلك السياسة هي قرار الخصوصية. الوضع الصارم يُفشل البحث، وهو أمر ظاهر ومزعج. الوضع الانتهازي يعيد المحاولة بنص صريح، وهو أمر غير مرئي ويُبطل الغاية في اليوم الذي تكون فيه الغاية مهمة بالضبط. اختر عن قصد، ثم سجّل الاختيار بجانب المتطلب.
على systemd-resolved يعني ذلك DNSOverTLS=yes بدلاً من opportunistic؛ وعلى Android يعني وضع اسم مضيف Private DNS بدلاً من الوضع التلقائي.
افحص ما هو نافذ فعلاً باستخدام resolvectl status | grep -i -A1 "dns over tls"، لأن ملف drop-in لم يُعَد تحميله قط لا يغيّر شيئاً.
الخطوة 4: تحقق من أن التطبيقات تتبع مُحلِّل النظام
المتصفح الذي لديه إعداد DNS آمن خاص به يتجاوز تهيئة النظام بالكامل، وكذلك وقت تشغيل الحاويات الذي يحتوي مُحلِّلاً مضمّناً، أو وقت تشغيل لغة يقرأ قائمة مثبّتة في الشيفرة. اجعل تلك تتبع النظام أو اضبطها صراحة وسجّل ذلك. ثم انظر إلى سلوك التراجع لدى كل واحد منها، لأنها لا تفشل كلها مغلقة. الجرد قصير عملياً: المتصفح، ووقت تشغيل الحاويات، وأي عميل VPN تشغّله أيضاً.
تبقى أسماء المؤسسة الخاصة على المُحلِّل الداخلي المعتمد. وإرسالها إلى خدمة عامة كي يبدو الاختبار مرتباً يخلق مشكلة أخرى عن قصد.
الخطوة 5: اقرأ اختبار التسريب مقابل المتطلب
الاختبار الذي يبلّغ عن مُحلِّل غير متوقع هو إشارة، لا حكم. ربما لاحظ مُحلِّلك المشفّر المقصود، أو إعداداً خاصاً بتطبيق، أو تراجعاً إلى نص صريح لم تكن تعرفه. قارن المُحلِّل المبلّغ عنه بما أعدّه الخطوة 2، وقارن النتيجة بالهدف من الخطوة 1.
إذا كان الهدف إبعاد الاستعلامات عن الشبكة المحلية، فإن اختباراً يُظهر مُحلِّلك العادي نتيجة حقيقية. وإذا كان الهدف إخفاء الهوية أثناء التصفح، فلم يكن أي إعداد DNS سيوفر ذلك قط.
اكتب سطر القبول بلغة الهدف: هذه الاستعلامات تستخدم هذا المُحلِّل المتحقّق منه في هذه الظروف. وأي شيء أوسع من ذلك ادعاء لا يمكنك اختباره.