يظهر الخطأ عند الاستيراد، قبل أي تفاوض، ويسمّي توجيهًا يرفض العميل قبوله. يشغّل OpenVPN Connect شيفرة مكتبة OpenVPN 3، وهي لا تنفّذ إطلاقًا خيار fragment الخاص بعميل المجتمع. وهذا يجعل المسألة مسألة توافق بين طرفين لا مسألة ضبط حجم الحزمة.

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

أين يتوقف الاستيراد

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

إذا ذكرت الرسالة fragment، يبقى السؤال هل يعتمد الخادم عليه أيضًا. أجيبوا عن ذلك قبل لمس الملف الشخصي الذي أُعطي لكم.

ما يغيّره fragment في عميل المجتمع

في عميل المجتمع يفعّل التوجيه تقسيم حزم البيانات الخاص بـ OpenVPN نفسه، وهو يقسّم الحمولة قبل أن تصل إلى طبقة IP الخارجية. وهو موجود ليتجاوز المسارات التي تُسقط حزم UDP الكبيرة وليبقي النفق صالحًا للاستخدام حيث لا يمكن الوثوق باكتشاف وحدة MTU للمسار. وهو ليس مرادفًا لخفض وحدة MTU للواجهة، وليس تقسيمًا على مستوى IP تقوم به نظام التشغيل. العميل الذي يفتقر إلى هذه الآلية لا يحصل عليها بخفض رقم.

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

اطلبوا ملفًا شخصيًا مبنيًا لهذا العميل

الطريق النظيف هو ملف شخصي ثانٍ موثَّق لـ OpenVPN Connect، إذا كانت الخدمة تنشر واحدًا. كثير من المزوّدين يفعلون ذلك، والفرق عادة في التوجيهات التي يحذفونها لا في الطرف الذي يشيرون إليه. اطلبوه باسم العميل بدلًا من وصف الخطأ، لأن مكتب الدعم يستطيع مطابقة ملف شخصي بعميل أسرع بكثير من تشخيص ملف منزوع.

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

تحقّقوا من الاتصال، لا من الاستيراد فقط

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

openvpn --config client.ovpn --verb 3
ip -4 addr show tun0
curl -sS --interface tun0 -o /dev/null -w '%{http_code}\n' --max-time 8 https://example.com/

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

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

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