اپ چاپگر شما فهرست خالی نشان می‌دهد، اپ دوربین گزارش می‌دهد که دستگاهی پیدا نشد، و دکمهٔ پخش در یک اپ ویدیویی می‌چرخد تا تسلیم شود. نماد VPN در نوار وضعیت است، گوشی آنتن کامل دارد و سافاری صفحه‌ها را بی‌مشکل بارگذاری می‌کند، پس هیچ چیز در اتصال خراب به نظر نمی‌رسد. سپس تنظیمات خود اپ را باز می‌کنید و چیزی برای تغییر پیدا نمی‌کنید.

دقیقاً به همین دیوار با یک چاپگر برچسب در شبکهٔ خانگی برخوردم: به اپ هرگز دسترسی به شبکهٔ محلی داده نشده بود، و پروفایلی که آزمایش می‌کردم یک تونل کامل بود که هر بستهٔ خطاب‌شده به 192.168.1.0/24 را می‌بلعید. دو دروازهٔ مستقل بسته بود، و باز کردن یکی نشانه را برطرف نمی‌کرد.

دو دروازه بین یک اپ و یک چاپگر

دروازهٔ اول تصمیمی دربارهٔ حریم خصوصی است که به سیستم‌عامل تعلق دارد نه به اپ. iOS تصمیم می‌گیرد آیا اپ می‌تواند ترافیک را به نشانی‌های شبکهٔ محلی بفرستد، و نخستین بار که اپ تلاش می‌کند از کاربر می‌پرسد. دروازهٔ دوم جدول مسیریابی است. بسته‌ای که به 192.168.1.50 نشانه رفته یا از Wi-Fi به سمت چاپگر خارج می‌شود یا وارد تونل می‌شود، و این انتخاب در پروفایل VPN نوشته شده است.

دو دروازه به شکل‌های متفاوت شکست می‌خورند، و همین تشخیص را ممکن می‌کند. اجازهٔ ردشده فراخوانی سوکت خود اپ را می‌کشد، پس اپ چیزی برای گزارش ندارد و به یک وضعیت خالی عمومی برمی‌گردد. مشکل مسیریابی شبیه پایان مهلت به نظر می‌رسد، چون بسته‌ها گوشی را ترک کرده‌اند و جایی در آن سوی دیگر مرده‌اند. همان صفحهٔ خالی، تعمیر متفاوت.

پیش از دست زدن به VPN وضعیت اجازه را بخوانید

تنظیمات، سپس حریم خصوصی و امنیت، سپس شبکهٔ محلی را باز کنید. هر اپی که درخواست دسترسی کرده با یک کلید در آنجا دیده می‌شود. اپل بخش‌هایی از این صفحه را میان iOS 14 تا iOS 18 جابه‌جا و تغییر نام داده است، پس اگر مورد آنجا نیست که انتظار دارید، در میدان جست‌وجوی تنظیمات واژهٔ شبکهٔ محلی را بنویسید به‌جای جست‌وجو در درخت.

چیزی که بیشتر مردم را می‌گیرد درخواست یک‌باره است. iOS وقتی اپ نخستین بار شبکهٔ محلی را لمس می‌کند می‌پرسد، و فقط همان‌وقت. اگر «اجازه نده» را بزنید، درخواست در اجرای بعدی برنمی‌گردد؛ کلید تنها راه بازگشت است و در آغاز خاموش است. نصب دوبارهٔ اپ تصمیم را بازنشانی می‌کند، و به همین دلیل برخی بحث‌های عیب‌یابی ادعا می‌کنند نصب دوباره کشف را درست کرده است. بله، با پاک کردن رد.

روی iPhone نظارت‌شده یا مدیریت‌شده کلید گاهی خاکستری است. یک بار دادهٔ ترجیحات حریم خصوصی که MDM می‌فرستد می‌تواند دسترسی به شبکهٔ محلی را از پیش تعیین یا قفل کند، و کلید قفل‌شده‌ای که خاموش است یعنی تعمیر یک تغییر سیاست است نه تغییر گوشی. اپل این درخواست و کلید هر اپ را اینجا مستند کرده است: support.apple.com/en-us/102229.

بررسی کنید تونل واقعاً چه چیزی را مسیریابی می‌کند

تونل کامل 0.0.0.0/0 را برمی‌دارد و همراه با آن هر محدودهٔ خصوصی را. بسته‌های 10.x و 172.16.0.0/12 و 192.168.x.x به سرور می‌روند، که معمولاً آن‌ها را دور می‌ریزد یا به زیرشبکهٔ خودش ترجمه می‌کند، پس چاپگر حتی پس از دادن اجازه هم دست‌نیافتنی می‌ماند. تونل تقسیم‌شده برعکس عمل می‌کند، اما تنها برای محدوده‌هایی که پروفایل فهرست می‌کند.

پروفایل‌های IKEv2 که با Apple Configurator ساخته می‌شوند یا به‌صورت .mobileconfig توزیع می‌شوند این را به‌صورت تنظیم ارسال همهٔ ترافیک به‌همراه، در حالت تقسیم‌شده، فهرستی صریح از شبکه‌های محلی که باید کنار گذاشته شوند بیان می‌کنند. اپ‌های کلاینت ساخته‌شده بر NEPacketTunnelProvider همین تصمیم را از طریق includedRoutes بیان می‌کنند. هیچ‌یک از این دو از نوار وضعیت دیده نمی‌شود، و هر دو چیزی را که اپ انتظار دیدنش را دارد بازنویسی می‌کنند.

این آزمونی است که به کار می‌برم. با VPN متصل، صفحهٔ مدیریت روتر را با نشانی LAN آن در سافاری باز کنید. اگر سایت‌های عمومی بارگذاری می‌شوند در حالی که آن صفحه پایان مهلت می‌دهد، محدودهٔ خصوصی شما درون تونل است. اگر صفحه بارگذاری می‌شود، ترافیک محلی هنوز از Wi-Fi بیرون می‌رود و مانع جای دیگری است.

نشانه را به دروازه نسبت دهید

دو اپ روی یک گوشی می‌توانند اختلاف داشته باشند، چون اجازه برای هر اپ و مسیرها برای هر پروفایل داده می‌شود. پیش از تغییر هر چیزی مقایسه کنید چه چیزی شکست می‌خورد: الگو معمولاً خودش دروازه را نام می‌برد.

What you seeGateNext step
Device list stays empty, Local Network switch is offPermissionEnable the switch, force-quit the app, reopen it
Switch is on, router page times out, public sites loadRoutingExclude the local range in the profile, or move to a split tunnel
Both pass, direct IP works, discovery stays emptyLink-local multicastEnter the device address by hand, or check profile discovery support
Works by IP address, never by name such as printer.localName resolutionFix mDNS reachability or use the numeric address
Everything fails with the VPN off, on hotel Wi-FiClient isolationChange network, do not change permissions

ردیف mDNS شایستهٔ یک یادداشت است. ترافیک کشف برای Bonjour و بیشتر پروتکل‌های پخش به‌صورت چندپخشی به 224.0.0.251 و ff02::fb با دامنهٔ پیوند محلی می‌رود، و تونل مسیریابی‌شده آن را حمل نمی‌کند. به همین دلیل دستگاه می‌تواند به اتصال مستقیم پاسخ دهد بدون این‌که هرگز در فهرستی دیده شود.

عملیات را بیازمایید نه نماد را

پس از تغییر کلید شبکهٔ محلی، اپ را از تغییردهندهٔ اپ‌ها به‌اجبار ببندید و دوباره باز کنید. فرایند در حال اجرا می‌تواند وضعیت ردشدهٔ پیش از تغییر را نگه دارد، و اپی که همچنان فهرست خالی برمی‌گرداند یکسان دیده می‌شود چه اجازه کار کرده باشد چه نه. سپس یک کنش مشخص انجام دهید، مثل چاپ یک صفحهٔ آزمایشی یا شروع یک ویدیو، به‌جای انتظار برای پر شدن فهرست دستگاه‌ها.

پروفایل VPN را در طول مقایسه ثابت نگه دارید. اگر کشف تنها پس از قطع اتصال شروع به کار کند، فهمیده‌اید که تونل مقصر است نه اجازه. در هر تلاش یک متغیر را تغییر دهید، وگرنه دور بعدی چیزی به شما نمی‌گوید.

به این ترتیب درستش کنید

ترتیب زیر همانی است که اکنون دنبال می‌کنم، چون هرگز گوشی را در وضعیتی نیمه‌تغییریافته رها نمی‌کند که آزمون بعدی ناخوانا باشد.

  1. تأیید کنید که اپ زیر حریم خصوصی و امنیت، شبکهٔ محلی فهرست شده و کلیدش روشن است.
  2. به‌اجبار ببندید، اپ را دوباره باز کنید و یک بار عملیات واقعی را تکرار کنید.
  3. در حال اتصال صفحهٔ روتر را با نشانی LAN باز کنید تا ثابت شود محدودهٔ خصوصی از تونل می‌گذرد یا نه.
  4. اگر می‌گذرد، پروفایل را ویرایش کنید تا شبکه‌های محلی کنار گذاشته شوند، یا از صاحب پروفایل بخواهید این کار را بکند.
  5. اگر کلید خاکستری است، دستگاه را مدیریت‌شده بدانید و درخواست را به مدیر بفرستید.

معمولاً فقط یکی اعمال می‌شود. اگر هیچ‌کدام نتیجه را تغییر نداد، مظنون باقی‌مانده خود شبکه است، مثل جداسازی نقطهٔ دسترسی یا فهرست مجاز کلاینت که به نشانی‌های Wi-Fi گره خورده، و جدول تناظر بالا نشان می‌دهد کدام.

مقالات مرتبط