ما هو قاطع الاتصال (Kill Switch)؟
قاطع الاتصال (Kill Switch) إعداد يمنع كل حركة شبكة لا تمر عبر نفق VPN. فإن تعطّل النفق انقطع الإنترنت عن الجهاز، بدل أن تعود البرامج بصمت إلى الاتصال العادي بعنوانك الحقيقي. هو لا يحسّن النفق نفسه، بل يحدّد ما يحدث حين يفشل.
ماذا يحدث حين يتعطل النفق دون قاطع
يعمل النفق بتعديل جدول التوجيه في نظام التشغيل. يضيف مساراً يرسل الحركة إلى واجهة النفق بدل بطاقة الشبكة، وحين تُزال هذه الواجهة تُزال مساراتها معها ويعود المسار الافتراضي القديم.
البرامج المفتوحة لا تعرف بما حدث. تعيد الاتصال تلقائياً خلال ثوانٍ، فتخرج طلباتها عبر الشبكة العادية بعنوانك الحقيقي، ومعها استعلامات الأسماء. وهذه أكثر الحالات التي يحدث فيها ذلك:
- تعطّل برنامج النفق، أو إغلاق النظام له لتوفير البطارية أو الذاكرة.
- تحديث البرنامج أو النظام أثناء الاتصال.
- الانتقال بين الشبكات، كالخروج من مدى Wi-Fi إلى بيانات الهاتف.
- الثواني الأولى بعد تشغيل الجهاز، قبل أن يبدأ النفق.
حين يكون الخادم هو المتوقف
لا يعني كل عطل أن الحركة ستتسرّب. بروتوكول WireGuard لا يملك حالة «اتصال» بالمعنى المعتاد، فواجهته تبقى قائمة ولو توقف الخادم. وكل حزمة تدخل الواجهة تخضع لجدول «توجيه المفاتيح» الموصوف في ورقة WireGuard.
تُشفَّر الحزمة للنظير الذي تطابق عناوينه المسموح بها وجهتها. وإن لم تطابق أي نظير أُسقطت، وأُبلغ البرنامج المرسل برسالة ICMP بأن الوجهة غير قابلة للوصول.
لذلك مع AllowedIPs = 0.0.0.0/0 وخادم متوقف، تُرسل الحزم مشفّرة إلى خادم لا يجيب، ولا يخرج شيء بنص واضح. الخطر الحقيقي حين تُزال الواجهة نفسها، أو حين يعيد برنامج آخر كتابة جدول التوجيه.
كيف يُبنى قاطع الاتصال
الطريقة الأولى قواعد جدار ناري تمنع كل حزمة خارجة إلا ثلاثة أنواع: ما يمر بواجهة النفق، والحزم المشفّرة المتجهة إلى الخادم، والحركة الداخلية في الجهاز. هذا مثال من صفحة الدليل wg-quick(8)، يُضاف إلى قسم [Interface]:
PostUp = iptables -I OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT
PreDown = iptables -D OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT
يرفض السطر الأول كل حزمة لا تخرج عبر واجهة النفق، ولا تحمل العلامة التي يضعها WireGuard على حزمه المشفّرة، وليست موجّهة إلى عنوان محلي. والسطر الثاني يزيل القاعدة حين تُطفئ الواجهة بنفسك. وتنبّه صفحة الدليل إلى أن معظم حركة DHCP تمر رغم ذلك، وإلى أن IPv6 يحتاج قواعد مماثلة بالأداة ip6tables.
الطريقة الثانية عزل كامل عبر نطاقات الشبكة (network namespaces) في لينكس. تبقى البطاقات الفعلية في نطاق، وتعمل البرامج في نطاق لا يحوي إلا واجهة WireGuard. تذكر الورقة نفسها أن هذا الترتيب يمنع أي تسرّب لحزم غير مشفّرة، لأن البرامج لا ترى طريقاً آخر أصلاً.
الطريقة الثالثة إعداد يوفّره النظام أو التطبيق الرسمي. في ويندوز يضيف تطبيق WireGuard قواعد جدار ناري حين يكون للنفق نظير واحد عنوانه المسموح /0، كما تشرح وثائقه. وفي أندرويد يوجد خياران في إعدادات VPN: Always-on VPN وBlock connections without VPN، موصوفان في وثائق أندرويد للمطوّرين.
صيغ أخرى تصادفها
بعض التطبيقات تعرض قاطعاً على مستوى البرامج: تختار برامج معيّنة، فيغلقها التطبيق إن انقطع النفق. هذه الصيغة تتصرف بعد الانقطاع لا قبله، فقد تخرج الحزم الأولى قبل إغلاق البرنامج. ولا تحمي البرامج التي لم تخترها.
وحين يعمل النفق على الراوتر، يصبح القاطع قاعدة تمرير في جداره الناري: لا تخرج حركة أجهزة البيت إلى الإنترنت إلا عبر واجهة النفق. فإن سقط النفق فقدت الأجهزة كلها الاتصال معاً، دون إعداد خاص على أي منها.
مقارنة بين الطرق
| الطريقة | النظام | ما تحميه | ما يجب الانتباه له |
|---|---|---|---|
| قواعد يضيفها تطبيق النفق | ويندوز، لينكس، ماك | كل الحركة ما دامت القواعد موجودة | إن أزالها التطبيق حين يتعطل زالت الحماية |
| قواعد PostUp وPreDown | لينكس | حركة IPv4 ما دامت الواجهة قائمة | IPv6 يحتاج قواعد إضافية، وDHCP يمر |
| نطاقات الشبكة | لينكس | عزل تام للبرامج داخل النطاق | إعداد يدوي، ولا يشمل ما يُشغَّل عمداً في النطاق الفعلي |
| خيار WireGuard لويندوز | ويندوز | كل الحركة عدا DHCP وNDP وDNS إلى الخوادم المضبوطة | يعمل مع نظير واحد عنوانه المسموح /0 |
| حظر الاتصالات بدون VPN | أندرويد | كل التطبيقات، حتى قبل اتصال النفق | التطبيقات التي تربط نفسها بشبكة محددة تفقد الاتصال |
كيف تختبره بنفسك
- صِل النفق، وافتح أداة العنوان المذكورة في آخر الصفحة لتسجّل عنوان الخروج.
- اقطع الطريق إلى الخادم دون أن تطفئ النفق من زر التطبيق. أنهِ عملية التطبيق من مدير المهام، أو انتقل من Wi-Fi إلى بيانات الهاتف.
- حدّث صفحة الأداة. النتيجة الصحيحة فشل التحميل، لا ظهور عنوانك الحقيقي.
- كرّر الاختبار مع فحص تسريب DNS ومع IPv6، فالقاطع الذي يغطي IPv4 وحده يترك ثغرتين.
- أعد تشغيل الجهاز والنفق مضبوط على التشغيل التلقائي، وتأكد ألا يمر شيء قبل اتصال النفق.
إن ظهر عنوانك الحقيقي في الخطوة الثالثة، فالقاطع غير مفعّل أو لا يغطي هذه الحالة. راجع إعداداته، أو استخدم إحدى طرق النظام الموصوفة أعلاه.
ما الذي تبحث عنه في أي تطبيق
- القطع على مستوى النظام. جدار ناري أو إعداد في النظام، لا منطق داخل عملية التطبيق، كي تبقى الحماية إن تعطّل التطبيق.
- تغطية كاملة. IPv4 وIPv6 واستعلامات الأسماء معاً.
- العمل من لحظة الإقلاع. الحماية التي تبدأ بعد فتح التطبيق تترك فجوة في البداية.
- استثناء اختياري للشبكة المحلية. الطابعة ومشاركة الملفات تحتاجه، والأصل أن يكون مغلقاً.
- سلوك معروف عند الإطفاء اليدوي. حين تطفئ النفق بنفسك يجب أن تعرف هل يبقى القطع قائماً أم يزول معه.
- حالة واضحة. يجب أن تعرف أن الانقطاع سببه القاطع، لا عطل في شبكتك.
قاطع الاتصال في syriaproxy
تطبيقنا لأندرويد يعمل مع خياري النظام المذكورين، وفي شاشة الحساب سطر «قاطع الاتصال» يفتح إعدادات VPN في النظام مباشرة. وWireGuard متاح لآيفون وآيباد وماك والراوتر، وشرح البروتوكول في صفحة مستقلة. أما بروكسي SOCKS5 وHTTP فيخص البرنامج المضبوط فيه، ولا يغيّر مسار بقية الجهاز.
أسئلة شائعة
هل يقطع الإنترنت كله عن الجهاز؟
نعم حين يتعطل النفق، وهذا هو المقصود. يعود الاتصال حين يعود النفق، أو حين تطفئ القاطع بنفسك.
هل أحتاجه مع بروكسي مضبوط في برنامج واحد؟
البروكسي لا يغيّر جدول التوجيه، فلا يوجد ما يقطعه القاطع. البرنامج يفشل عادةً إن لم يصل إلى البروكسي، ما لم يكن مضبوطاً على الرجوع إلى الاتصال المباشر.
هل يبطئ قاطع الاتصال الإنترنت؟
لا بصورة ملحوظة. قواعد الجدار الناري بسيطة وتُفحص بسرعة لكل حزمة. ما يلاحظه المستخدم هو الانقطاع حين يفشل النفق فقط.
اعرف عنوانك الآن قبل قطع النفق وبعده، بأداة عنوانك المجانية.