سرور بازی شما روی VPN است و هیچکس نمیتواند وصل شود
یک تونل مسیر ورودی نیست. ورودیای را که بازیکنان استفاده میکنند انتخاب کنید و کاری کنید که پاسخ از همان مسیر برگردد، پیش از آنکه به نشانی اتصال دست بزنید.
سرور روشن است، VPN وصل است و هیچکس از بیرون نمیتواند وصل شود. همهٔ داخل تونل میتوانند، و همین آن را شبیه یک قاعدهٔ دسترسی میکند. آنچه کم است اجازه نیست بلکه مسیر است: نشانی و پورتی که بازیکنان به آن برسند، و مسیری که پاسخها از همان راه برگردند. نشانی خروج VPN یک قابلیت میزبانی ورودی نیست.
چهار راه که بازیکنان به سرور برسند
انتخاب واقعی این است که مخاطب شما کیست و بستههایش چگونه وارد میشوند، و چهار شکل هست که ارزش نام بردن دارد.
| Design | Who can join | What it costs |
|---|---|---|
| Private VPN players | Only members of the tunnel | Every player needs a profile and identity |
| Provider public mapping | Anyone with the assigned address and port | Depends on supported protocol and mapping lifetime |
| Your own public relay | Anyone who can reach the relay | You run and secure the relay |
| Deliberate direct entry | Anyone who can reach your line | Split routing has to stay coherent |
طرح خصوصی سادهترین و کمراحتترین است: بازیکنان مجاز به شبکهای محدود میپیوندند و بازی را روی نشانی خصوصی آن مییابند. به آنها دسترسی به سرویس بازی بدهید، نه هویتی مشترک که بتواند در هر میزبان شما بچرخد.
طرح رله همان است که مردم دستکم میگیرند. یک دروازهٔ دردسترس ترافیک عمومی را میپذیرد و آن را از تونلی خصوصی به میزبان میفرستد، پس بازیکنان هرگز به VPN پشتی نمیپیوندند. رله باید انتقال بازی را حمل کند، و یک پروکسی HTTP رلهٔ عمومی UDP نیست.
پاسخ را به همان دقت ورود دنبال کنید
برای هر ورودی ترجمهشده چهار چیز را ثبت کنید: نشانی بیرونی، پروتکل، پورت و هدف درونی. مرجع هدایت پورت همان تمایزی را میسازد که مردم در آن میلغزند: ترجمهٔ مقصد را از قاعدهٔ دیوار آتش که عبور ترافیک را مجاز میکند جدا میکند. یکی را بدون دیگری پیکربندی کنید و نگاشتی میگیرید که درست به نظر میرسد و هیچ چیز را عبور نمیدهد.
سپس بازگشت را بررسی کنید. درخواست هدایتشده میتواند بیعیب برسد و شکست بخورد چون میزبان از خروجی دیگری پاسخ میدهد. رله میتواند منبع جریان پشتی را ترجمه کند، یا منبع را نگه دارد و به مسیریابی تکیه کند؛ اینها طرحهای متفاوتی هستند و تغییر میدهند که میزبان بازی چه چیزی را نشانی بازیکن ببیند.
رمزنگاری مسیر بازگشت شکسته را نجات نمیدهد. یک قطعه را محافظت میکند، نه یک توپولوژی.
چیزی که تونل خصوصی نمیکند
احراز هویت بازی، بهروزرسانیها و سیاست پذیرش هنوز کار خودشان را میکنند. تونل پشتی خصوصی یک ورودی عامدانه عمومی را خصوصی نمیکند و بخش بازیکن تا ورودی عمومی را اصلاً رمزنگاری نمیکند. اینها دو جهش متفاوت با دو مواجههٔ متفاوتاند، و یادداشت طراحیای که میگوید بازی روی VPN اجرا میشود دقیقاً یکی از آن دو را توصیف میکند.
پیش از آنکه نشانی را به کسی اعلام کنید، بنویسید کدام بخش محافظتشده است و کدام نه.
مخاطب را پیش از نشانی انتخاب کنید
تصمیم بگیرید چه کسی باید بتواند وصل شود، سپس طرحی را که میخواند انتخاب کنید. فقط دوستان یعنی تونل خصوصی، یا رلهای با فهرست مجاز. یک جامعهٔ عمومی یعنی رله یا ورودی مستقیم با مواجههٔ واقعی، بههمراه مدیریت. وقتی این روشن شد، از پورتهای مستند بازی و رفتار نشانی اعلامشدهٔ آن درون طرح انتخابشده استفاده کنید.
آداپتورهای VPN را بازچینش نکنید تا آزمونی بگذرد. این کار سروری کارآمد با مسیری مستندنشده میسازد که هیچکس پس از بهروزرسانی بعدی نمیتواند بازسازی کند.
آزمون دو بازیکن است، یکی درون تونل و یکی بیرون، هر دو یک پیوستن و یک دور ترافیک را کامل میکنند. کمتر از این ثابت نمیکند که ورودی کار میکند.