ما هو النفق المنقسم (Split Tunneling)؟
النفق المنقسم إعداد يجعل جزءاً من حركة جهازك يمر عبر الـ VPN، ويترك الباقي يخرج من اتصالك العادي مباشرة. يُتخذ القرار بحسب عنوان الوجهة، أو بحسب التطبيق، أو بحسب اسم النطاق. فائدته توفير البيانات وإبقاء الخدمات المحلية عاملة، وثمنه أن ما يخرج خارج النفق قد يكشف ما لا تريد كشفه.
كيف يقرر النظام طريق كل حزمة
كل نظام تشغيل يحتفظ بجدول توجيه. لكل حزمة يبحث النظام عن أطول بادئة عنوان تطابق وجهتها، ويرسلها عبر الواجهة المسجّلة لتلك البادئة. والمسار الافتراضي، أي 0.0.0.0/0، يلتقط كل ما لم يطابق شيئاً أدق منه.
- في النفق الكامل يضع برنامج الـ VPN المسار الافتراضي على الواجهة الافتراضية، فتدخل النفق كل حزمة إلا الحزم المتجهة إلى خادم الـ VPN نفسه.
- في النفق المنقسم يبقى المسار الافتراضي على البطاقة الحقيقية، ويضيف البرنامج مسارات لبادئات بعينها فقط عبر النفق.
في WireGuard يظهر الفرق في سطر واحد. هذا الإعداد يرسل عبر النفق شبكتين داخليتين فقط، وكل ما عداهما يخرج من الاتصال العادي:
AllowedIPs = 10.20.0.0/16, 192.168.50.0/24
وتصف معايير IPsec الشيء نفسه بلغة السياسات في RFC 4301. فكل مدخل في قاعدة بيانات سياسة الأمان يحدد للحزمة أحد ثلاثة مصائر: الحماية عبر النفق، أو التمرير دونه، أو الإسقاط. والنفق المنقسم سياسة تحمي بعض الحركة وتمرّر بعضها.
وبعض البرامج لا تحذف المسار الافتراضي الأصلي في النفق الكامل، بل تضيف مسارين يغطي كل منهما نصف العناوين: 0.0.0.0/1 و128.0.0.0/1. ولأنهما أدق من 0.0.0.0/0 فإنهما يغلبانه، ويعود المسار الأصلي وحده حين يتوقف النفق.
ثلاث طرق للتقسيم
- بحسب عنوان الوجهة. الطريقة الأصلية، وتعمل بجدول التوجيه كما سبق. دقيقة ورخيصة، لكنها لا تعرف شيئاً عن التطبيق الذي أرسل الحزمة.
- بحسب التطبيق. يحدد المستخدم تطبيقات تدخل النفق أو تُستثنى منه. على أندرويد يتيح النظام ذلك لبرامج الـ VPN بقوائم تطبيقات مسموحة أو مستثناة. وعلى أنظمة الحاسوب يحتاج عادةً إلى برنامج يتدخل في الشبكة على مستوى أعمق.
- بحسب اسم النطاق. يراقب البرنامج إجابات DNS، ويضيف مساراً للعنوان الذي يعود لاسم معيّن. هذه الطريقة أقل دقة، لأن شبكات توزيع المحتوى تخدم مواقع كثيرة من العناوين نفسها، ولأن العنوان قد يتغير بين طلب وآخر.
ولكل طريقة صورة معكوسة: بدلاً من قائمة بما يدخل النفق، قائمة بما يُستثنى منه وكل ما عداها يدخله. والقائمة المعكوسة أكثر أماناً حين تكون الحماية هي الأصل، لأن أي تطبيق جديد يدخل النفق تلقائياً.
النفق الكامل والنفق المنقسم
| نفق كامل | نفق منقسم | |
|---|---|---|
| ما يمر بالنفق | كل حركة الجهاز | ما تحدده القواعد فقط |
| استهلاك بيانات النفق | كل ما يستهلكه الجهاز، بما فيه التحديثات | الحركة المختارة وحدها |
| الطابعة والشبكة المنزلية | قد يتعذر الوصول إليها | تبقى متاحة |
| ما يراه مزوّد الإنترنت | اتصالاً مشفّراً واحداً | النفق، ومعه كل ما خرج خارجه |
| خطر التسريب | أقل | أعلى، ويتوقف على دقة القواعد |
المخاطر
- تسريب DNS. إن بقي خادم الأسماء خارج النفق، فطلب اسم موقع تفتحه عبر النفق يخرج من اتصالك العادي. يرى مزوّد الإنترنت الاسم، ويرى خادم الأسماء موقعك الحقيقي. الشرح في تسريب DNS.
- عنوانان في متصفح واحد. تذكر وثيقة متطلبات WebRTC (RFC 8828) أن النفق المنقسم أهم حالة قلق عندها. فالمتصفح قد يكتشف عنوان الـ VPN العام وعنوان مزوّد الإنترنت معاً، ويكشفهما للموقع.
- موقعان لحساب واحد. إن فتحت الخدمة نفسها من تطبيق داخل النفق ومن متصفح خارجه، رأت الخدمة حسابك يتصل من بلدين في الوقت نفسه. وقد يبدو ذلك لأنظمة الحماية سلوكاً مريباً.
- جسر بين شبكتين. يشرح دليل NIST لشبكات IPsec الخاصة (SP 800-77 Rev. 1) في القسم 7.2.1.2 أن الجهاز المخترق قد يصير معبراً من الإنترنت إلى شبكة الشركة عبر نفقها. لذلك يمنع كثير من الشركات النفق المنقسم على أجهزة الموظفين.
لماذا تقبله الشركات أو ترفضه
يذكر دليل NIST نفسه أسباباً لتفضيله: يُبقي حركة الموظف الشخصية خارج شبكة الشركة، ويخفف الضغط على اتصالها بالإنترنت. وقد تكون للشركة أسباب قانونية كي لا تتعامل مع حركة لا تخصها. ويرى الدليل أن الهاتف حالة خاصة، إذ يمكن أن يقتصر النفق على تطبيق العمل وحده.
كيف تفحص أي حركة تمر أين
اسأل النظام عن الواجهة التي ستحمل حزمة إلى عنوان معيّن. على لينكس:
ip route get 1.1.1.1
وعلى ماك:
route -n get 1.1.1.1
وعلى ويندوز في PowerShell:
Find-NetRoute -RemoteIPAddress 1.1.1.1
ثم افحص من جهة المواقع:
- افتح أداة عنوانك من متصفح يُفترض أنه داخل النفق، ثم من متصفح يُفترض أنه خارجه. يجب أن يظهر عنوانان مختلفان كما خططت.
- افحص تسريب DNS من المتصفح الذي داخل النفق. يجب أن تكون خوادم الأسماء الظاهرة تابعة لجهة النفق، لا لمزوّد الإنترنت عندك.
- افحص تسريب WebRTC من المتصفح نفسه، فهو الموضع الذي يظهر فيه العنوانان معاً.
كيف تقسّم بأمان
- ابدأ بالسؤال الصحيح. حدّد ما يجب أن يخرج من النفق وما يجب أن يبقى محلياً، قبل أن تختار طريقة التقسيم. واكتب القائمة، فالقواعد التي تُضاف على عجل تُنسى ثم تُفاجئك.
- اجعل الخدمة الواحدة على طريق واحد. كل ما يخص حساباً معيّناً، تطبيقه وموقعه، يخرج من المكان نفسه.
- أدخل DNS في النفق لكل اسم تريد فتحه عبر النفق. وإن تعذّر ذلك، فالنفق الكامل أسلم.
- لا تنسَ IPv6. قاعدة تغطي IPv4 وحده تترك حركة IPv6 تخرج من الاتصال العادي. التفاصيل في تسريب IPv6.
- للحسابات المالية استخدم النفق الكامل ما دامت تعمل، ولا تقسّم إلا لما لا يحمل حساباً أو بيانات حساسة.
التقسيم في syriaproxy
تطبيقاتنا وملف WireGuard نفق للجهاز كله، أما إضافة كروم وإيدج فتمرّر المتصفح وحده مع منع تسريب العنوان عبر WebRTC. وبروكسي SOCKS5 أو HTTP أو HTTPS يمرّر البرنامج الذي تضبطه فيه فقط. ولأن الرصيد يُحتسب بالغيغابايت، فما يبقى خارج النفق لا يُحتسب منه.
أسئلة شائعة
هل النفق المنقسم أقل أماناً؟
الحركة التي تمر بالنفق محمية بالقدر نفسه. لكن ما يخرج خارجه يسير كما يسير دون VPN، وأخطاء القواعد تكشف أحياناً ما ظننته داخل النفق.
هل يعمل مفتاح القطع مع النفق المنقسم؟
يتوقف على التطبيق. في الغالب يحمي ما يُفترض أن يمر بالنفق فقط، ولا يمنع الحركة المستثناة لأنها مسموح لها بالخروج أصلاً. الشرح في مفتاح القطع.
لماذا تتوقف الطابعة عن العمل حين أشغّل الـ VPN؟
لأن النفق الكامل يوجّه حتى عناوين شبكتك المنزلية إلى الخادم البعيد. بعض البرامج تستثني الشبكة المحلية بخيار خاص، وهو نوع محدود من التقسيم.
هل أستطيع تمرير موقع واحد فقط عبر النفق؟
نعم بالتقسيم بحسب النطاق، أو بتشغيل الموقع في متصفح مضبوط على بروكسي. والطريقة الثانية أدق، لأن التقسيم بالنطاق يعتمد على عناوين قد تتغير.
افحص متصفحك الآن بأداة فحص تسريب WebRTC المجانية.