خطای General failure هنگام ping به یک آدرس LAN با روشن بودن کلاینت VPN
ویندوز میگوید اصلاً به هیچ آداپتوری دسترسی ندارد، در حالی که جدول مسیریابی درست به نظر میرسد. مشخص کنید که مسدودسازی از مسیریابی است، از فیلتر کردن یا از کلاینت.
یک مسیر میزبان، یک آدرس، و ping بلافاصله با General failure شکست میخورد، نه با تمام شدن مهلت درخواست. همین تفاوت، تمام تشخیص است. تمام شدن مهلت یعنی بسته خارج شده و چیزی آن را نادیده گرفته است. اما General failure یعنی ویندوز از همان ابتدا نتوانسته بسته را به هیچ واسطی تحویل دهد.
پس وقتی جدول مسیریابی بینقص به نظر میرسد و خطا همچنان General failure است، مسدودسازی پایینتر از تصمیم مسیریابی رخ میدهد و کلاینت ارائهدهنده همان چیزی است که آنجا کار میکند.
پیش از جدول مسیریابی، خطا را بخوانید
ویندوز این خطا را زمانی برمیگرداند که واسطی برای ارسال پیدا نمیکند و هیچ چیزی درباره اینکه مقصد با بسته چه میکرد نمیگوید. دسترسپذیری، فایروالهای طرف دور و در دسترس بودن سرویس همه پرسشهای بعدیاند که هنوز به آنها نرسیدهاید.
پیکربندی کلاسیک این حالت یک مسیر میزبان است که یک آدرس LAN را به دروازه فیزیکی میفرستد تا از تونل عبور نکند. route add آن را میپذیرد، route print آن را نشان میدهد، و ping باز هم شکست میخورد، چون درایور فیلتر از پیش تصمیم گرفته که بسته اجازه خروج ندارد.
پیش از پذیرفتن این توضیح، تأیید کنید که مسیر واقعاً انتخاب میشود: شاخص واسط و متریک را بررسی کنید و مطمئن شوید که ورودی پس از اتصال دوباره کهنه نشده است. مسیری که به واسطی اشاره میکند که دیگر وجود ندارد، خطای مشابهی را به دلیلی بسیار کمجاذبهتر تولید میکند.
سه لایه، سه مالک متفاوت
لایهای برنده میشود که آخر از همه اجرا شود، و این سه به ترتیبی نیستند که بیشتر مردم فرض میکنند.
| Layer | What it decides |
|---|---|
| Routing table | Which interface and next hop should carry the packet |
| Client filter driver | Whether this packet is permitted to leave outside the tunnel at all |
| Client feature | Whether a named feature, such as LAN blocking, is active right now |
لایه میانی دلیل آن است که یک مسیر میتواند همزمان درست و بیفایده باشد. کلاینتهای ارائهدهنده یک فیلتر و قواعد فایروال نصب میکنند تا ترافیک بیرون تونل حذف شود، و همین سازوکاری است که کلید قطع اضطراری آنها را پیاده میکند. هیچ چیز در جدول مسیریابی در آن تصمیم مشارکت ندارد.
لایه سوم گزارشی عجیب را توضیح میدهد که مرتب میرسد: زیرشبکه محلی حتی پس از قطع کلاینت هم در دسترس نیست. سرویس هنوز در حال اجراست و فیلتر هنوز نصب است، پس «متصل نبودن» با «فیلتر نکردن» یکی نیست. پیش از هر نتیجهگیری، کلاینت را ببندید، نه اینکه فقط اتصال را قطع کنید.
چهکارهایی را به ترتیب امتحان کنید
با حذف قابلیتهایی شروع کنید که حذفشان ارزان و بازگرداندنشان آسان است. کشف LAN، که گاهی نامرئی بودن در LAN نامیده میشود، ترافیک به محدودههای آدرس خصوصی را مسدود میکند تا دستگاه از همسایگانش پنهان بماند. چاپگرها، سرورهای فایل محلی و خود روتر همه پشت آن کلید ناپدید میشوند. قابلیتهای حفاظت در برابر تهدید که DNS را فیلتر میکنند، قلابهای خودشان را نصب میکنند و گفته میشود دسترسپذیری محلی را تقریباً به همان شکل میشکنند.
هر دو را خاموش کنید، کاملاً از کلاینت خارج شوید و سپس آدرس را آزمایش کنید. این ترتیب، قابلیتی را که ترافیک را مسدود میکند از تونلی که آن را اشتباه مسیریابی میکند جدا میکند و دو دقیقه طول میکشد، نه یک بعدازظهر مسیرهای ایستا.
ping 192.168.1.50
tracert -d 192.168.1.50
route print -4
اگر پس از خاموش شدن قابلیتها آدرس پاسخ داد، شما با یک تصمیم سیاستی روبهرو هستید نه یک نقص: بین خاموش نگه داشتن قابلیت، افزودن یک استثنا، یا پذیرش اینکه دستگاه در شبکه محلی نامرئی بماند یکی را انتخاب کنید.
از مسیر استثنای خود کلاینت، بهصورت باریک استفاده کنید
وقتی قابلیتی باید روشن بماند، تونلزنی تقسیمشده خود کلاینت راه خروج پشتیبانیشده است. استثنا را تا جایی که الزام اجازه میدهد کوچک نگه دارید، که معمولاً یعنی یک آدرس میزبان برای یک سرور یا یک پیشوند برای یک بخش. قاعدهای که کل یک محدوده خصوصی را بپوشاند یک حفره دائمی است که هیچکس به یاد نمیآورد آن را اضافه کرده و هیچکس جرئت حذفش را ندارد.
سپس ابتدا با آدرس و بعد با نام بررسی کنید. اگر آدرس با یک پرش اول روی دروازه فیزیکی پاسخ داد، استثنا کار میکند. اگر نام هنوز شکست میخورد، به DNS رسیدهاید، چون حلکننده تونل ناحیه محلی را نمیشناسد و هیچ تغییری در مسیریابی آن را یاد نخواهد داد.
مسیر یا استثنا را نگه دارید، نه هر دو را، همراه با یادداشتی درباره اینکه کدام یک کار را انجام میدهد. دو سازوکار همپوشان یکدیگر را پنهان میکنند و نفر بعدی که این دستگاه را اشکالزدایی کند یکی از آنها را حذف میکند و هیچ تغییری نمیبیند.
وقتی کلاینت مانع است
برخی نسخهها ترافیک را به گونهای فیلتر میکنند که نه مسیر ایستا و نه استثنای کلاینت نمیتواند بر آنها چیره شود. وقتی یافته همین باشد، گزینههای صادقانه انتظار برای قابلیت عبور یا اتصال با یک کلاینت ساده OpenVPN با استفاده از پروفایل خود ارائهدهنده است، همان که پاسخ پشتیبانی فروشنده در گزارش اصلی توصیه کرده بود.
پیش از انجام این جایگزینی، معامله را درک کنید. یک پروفایل ساده مثل هر تونل معمولی رفتار میکند: مسیرهای خودش را نصب میکند و بقیه پشته را بازساخت نمیدهد، پس یک مسیر میزبان باریک همچنان همانطور که انتظار دارید رفتار میکند. آنچه از دست میدهید همه چیزهایی است که کلاینت برندشده پیرامون تونل پیاده کرده بود، از جمله کلید قطع اضطراری و فیلتر کردن DNS، و اینها باید آگاهانه بازتولید شوند یا بهعنوان غایب پذیرفته شوند.
هر چه انتخاب کنید، ثبت کنید که کدام لایه مالک مسدودسازی بود. بستهای که هرگز از دستگاه خارج نشد نتیجه فیلتر است و هیچ تغییری در مسیریابی نمیتواند فیلتر را تعمیر کند.