تطبيق VPN للآيفون على جهاز Mac بشريحة Apple Silicon: ما الذي يعمل فعلاً
تشغّل Apple الآن موفّرات أنفاق الحزم من تطبيقات iOS على شرائح Apple Silicon، لكن طلباً ناجحاً واحداً لا يثبت التوافر ولا تدفّق الحساب ولا التغطية.
يُثبّت أحدهم نسخة الآيفون من عميل VPN على جهاز Mac من سلسلة M، فيفتح ويتصل، فيقرّر الفريق أن مسألة المنصّة قد حُسمت. ليست محسومة. الفارق بين المحسوم والمجرّد العامل هنا هو الفرق بين امتداد تطبيق داخل جلسة مستخدم وامتداد نظام بسياق عالمي. تدعم Apple فعلاً موفّرات أنفاق الحزم في نموذج تطبيقات iOS على Mac، وتُدرج هذا الترتيب منفصلاً عن macOS الأصلي وMac Catalyst. معنى هذا الدعم أضيق ممّا يبدو. إنه يقول إن الترتيب مسموح، لا إن تطبيقاً معيناً يؤديه جيداً، ولا إن النفق يغطي ما تفترضه.
ثلاثة ترتيبات، جدول واحد
ثلاثة ترتيبات تهمّ على جهاز Mac، وهي غير قابلة للتبادل. عميل macOS الأصلي يشحن امتداد نظام، يعمل في سياق عالمي ويمكن أن يكون حاضراً قبل أن يسجّل أي شخص الدخول. تطبيق الآيفون على Apple Silicon يشحن امتداد تطبيق، يعمل داخل جلسة المستخدم وينتهي بانتهائها. يقع Mac Catalyst في عائلة التغليف نفسها التي تنتمي إليها نسخة الهاتف، لكنه هدف مختلف بصفّ نشر خاص به.
المقارنة أدناه هي الجزء الجدير بالحفظ من إرشادات النشر لدى Apple، لأنها تجيب عن معظم أسئلة التصميم قبل مكالمة مع مورّد.
| Arrangement | Provider packaging | Session context | Typical distribution |
|---|---|---|---|
| iOS app on Apple Silicon | App extension | User session only | Mac App Store |
| Native macOS client | System extension | Global, pre-login possible | Developer ID, notarised |
| Mac Catalyst | App extension | User session only | Mac App Store |
اقرأ عمود التغليف قبل صفحة التسويق: فهو يتنبّأ بما يحدث عند تسجيل الخروج بموثوقية أكبر بكثير من أي قائمة ميزات.
ما يثبته طلب ناجح واحد
صفّ تطبيقات iOS على Mac ترتيب مدعوم فعلاً لا حيلة محاكٍ، ولهذا يعود السؤال دائماً. وهو يرث أيضاً التوزيع عبر متجر Mac App Store، فالتطبيق الذي لم يشترك ناشره أبداً في توافر Mac لن يظهر مهما كانت وثائق المطوّر متسامحة.
الاتصال العامل يثبت أن طلباً واحداً من تطبيق واحد بلغ وجهته. وهو لا يحصي محلّل أسماء النطاقات في المتصفح، ولا التطبيقات المستثناة، ولا عائلة العناوين الثانية، ولا الأجهزة المحلية التي ما زال المستخدم يتوقع الوصول إليها. نفق الحزم يحمل ما تقوله مساراته ونطاقه، وهذا النطاق يأتي من إعداد التطبيق لا من وجود النفق.
الفجوة عادةً في التغطية لكل تطبيق
العميل الذي يوجّه كل شيء سهل الوصف وسهل الاختبار. أما الذي يتضمّن قائمة محدّدة من التطبيقات فيحتاج إلى احترام تلك القواعد في عملية النشر هذه، لا في نسخة Mac الأصلية وحدها. الوصول إلى الأجهزة المحلية، واستثناءات النفق المنقسم، وأي شيء يعتمد على عنصر في شريط القوائم لم تملكه نسخة الهاتف أبداً، تصطدم بالجدار نفسه.
اطلب النطاق كتابةً، ثم اختبر الحالة الثانية لا الأولى. أي شخص يستطيع أن يعرض متصفحاً يبلغ الإنترنت عبر النفق.
أين يفترق الاثنان في التشغيل
عمر الجلسة هو الفرق الأحدّ وأقلّ ما يظهر في عرض توضيحي. توثّق Apple امتدادات التطبيقات بأنها تعمل في سياق مستخدم وتنتهي عند تسجيل المستخدم الخروج، فجهاز Mac يعيد الإقلاع إلى نافذة دخول لا نفق له حتى يسجّل أحدهم الدخول. وإذا كان الشرط يشمل جهازاً يجب حمايته قبل المصادقة، فلا يمكن لنسخة الهاتف تلبيته مهما كُتب الملف الشخصي.
كل ما عدا ذلك تجميلي نسبياً: حضور في شريط القوائم، وكيف يُعرض DNS، وهل يجوز للتطبيق أن يخرج بينما يبقى النفق قائماً. تلك فروق استخدام حقيقية، وليست قرارات معمارية، فرتّبها بعد سؤال الجلسة.
قرّر بترتيب ثابت
رتّب الأسئلة عمداً: التغطية غير المراقَبة أولاً، ونطاق كل تطبيق ثانياً، والتوزيع ثالثاً، وتلميع الواجهة أخيراً. لا يجيب عن الأول إلا عميل أصلي بامتداد نظام، وMDM مع ملف تعريف مُدار هو سبيله إلى الجهاز. تطبيق iOS على Apple Silicon جواب معقول حين يجلس شخص إلى الجهاز ويسجّل الدخول ويريد النفق لتلك الجلسة.
قبل الالتزام، اسأل الناشر ثلاثة أسئلة محددة. هل موفّر نفق الحزم مدعوم في نشر تطبيقات iOS على Mac، وهل تنطبق هناك قواعد لكل تطبيق، وماذا يحدث عند تسجيل الخروج. المورّد الذي يجيب عن الثلاثة في رسالة واحدة يعرف سطح نشره؛ والذي يجيب عن الأول فقط يصف تطبيقاً يُفتح على Mac.
ثم تحقّق على الجهاز الذي ستدعمه، بالحساب والبوابة التي ستستخدمها فعلاً. نسخة هاتف تتصل ببوابة اختبار على حاسوب محمول واحد دليل، لا نشر.