OpenVPN Connect دستور fragment را رد میکند: منبع پروفایل را درست کنید
OpenVPN Connect از fragment پشتیبانی نمیکند، بنابراین پروفایلی که تجزیه میشود باز هم ممکن است شکست بخورد. یکی ساختهشده برای همان کلاینت بگیرید، یا آگاهانه سمت سرور را تغییر دهید.
خطا هنگام درونریزی، پیش از هر مذاکرهای، ظاهر میشود و دستوری را نام میبرد که کلاینت از پذیرش آن خودداری میکند. 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 در همان شبکه مقایسه کنید پیش از آنکه درباره سرور نتیجهای بگیرید.
پروفایل کارآمد و نسخه کلاینت را کنار یادداشت نگه دارید. نسخه آینده کلاینت ممکن است پشتیبانی از یک دستور را اضافه کند، و این پاسخ را بدون دستزدن کسی به سرور تغییر میدهد.