الافتراض أن إضافة remote-random تحوّل الملف الشخصي إلى مجموعة متغيرة، بحيث يخرج كل اتصال من عنوان مختلف. لكن ما يفعله التوجيه فعليًا هو خلط قائمة الخوادم البعيدة مرة واحدة عند بدء العميل بالاتصال، ثم تجربتها بذلك الترتيب الجديد. والنفق الذي ينشأ في النهاية يظل منتهيًا عند نقطة واحدة ويبقى هناك طوال عمر الجلسة.

هذا الفرق مهم لاختبارات الأداء ولمزاعم الخصوصية على حد سواء.

ما يغيّره الخيار عند وقت الاتصال

يمكن أن يحتوي الملف الشخصي للعميل على عدة أسطر remote، لكل منها اسم مضيف ومنفذ خاص به. وبدون التوجيه تُجرَّب بترتيب الملف؛ ومعه تُبدَّل القائمة مرة واحدة عند بدء الجلسة ويفوز أول عنوان يستجيب. أما البقية فتبقى بدائل لهذه المحاولة، لا مسارات متوازية. والملف الذي يحمل خادمًا بعيدًا واحدًا لا يمنح التوجيه شيئًا يخلطه، وهذه أسرع طريقة لمعرفة ما إذا كان يمكن أن يهم.

يوثّق دليل OpenVPN هذا الخيار بأنه يؤثر في ترتيب محاولات الاتصال، وهذا هو نطاق التأثير المتوقع في السلوك بالضبط.

إعادة الاتصال تبدأ دورة اختيار جديدة، لذا قد تنتهي جلسة لاحقة في مكان آخر. أما النفق القائم فلا يتحرك أثناء عمله.

خرافة: كل طلب يحصل على خادم جديد

بعد إنشائه، ينقل النفق كل حركة تلك الجلسة إلى القرين المختار. لا يوجد إعادة اختيار لكل طلب، والتوجيه ليس موازن أحمال للاتصالات الفردية: فهو يخلط المرشحين ولا يوزّع الحزم. وكل تطبيق يشارك ذلك النفق يشارك القرين نفسه. وأي شيء يبلغ عنه المتصفح بشأن مخرجه يخص الجلسة لا الطلب الفردي.

إذا أظهر اختبار مخرجين مختلفين، فابحث عن جلستين منفصلتين بدلًا من خيار واحد ذكي. وهذا التمييز يفسر أيضًا لماذا قد يختلف اختبار المتصفح واختبار التنزيل عندما تحدث إعادة اتصال بينهما.

ما الغرض من remote-random-hostname

هناك توجيه ثانٍ باسم مشابه يغيّر اسم المضيف المستخدم في الاستبانة، لا ترتيب قائمة الخوادم البعيدة. وهو موجود في عمليات النشر التي يُحل فيها اسم إلى عدة عناوين عبر DNS بنظام الدوران، ولا ينبغي استخدامه إلا عندما تكون الخدمة مبنية له. وتتغير خطوة الاستبانة وحدها؛ أما ترتيب قائمة المرشحين فلا.

تفعيله لأن الأسماء تبدو مترابطة خطأ شائع. فشهادة عامة أو تخطيط DNS لا يتوقع الاسم المعدل سيفشل ببساطة في الحل أو في التحقق.

اقرأ نقطة النهاية المختارة من السجل

سجّل أي قرين استخدمته الجلسة فعليًا قبل استخلاص النتائج. فالمخرجات المفصلة تذكر العنوان الذي تُجرَّب، والملف الشخصي نفسه يوضح عدد المرشحين الموجودين. قارن ذلك العدد بالعنوان في السجل قبل أن تلوم الخلط.

grep -c '^remote ' client.ovpn
openvpn --config client.ovpn --verb 4 2>&1 | grep -i -E 'attempting|peer connection'
openvpn --help | grep -A2 remote-random
head -20 client.ovpn

للمقارنة في الأداء، ثبّت نقطة النهاية بتعليق الخوادم البعيدة الأخرى كي يكون المتغير موضوع الاختبار هو البروتوكول أو العميل لا المسار. وللسؤال عن الخصوصية، قيّم هوية الخدمة وتسجيلها ككل؛ فالاختيار الأول المخلوط لا يمسح ملفات تعريف الارتباط ولا يزيل تسجيل الدخول إلى حساب ولا يجعل مشغلين اثنين متكافئين.

أبقِ مواد الثقة المرفقة ومجموعة نقاط النهاية المدعومة معًا. فإعادة الخلط تغيّر فقط الترتيب الذي تُجرَّب به تلك المجموعة.

مقالات ذات صلة