عميلك يرسل ping إلى الخادم، والخادم لا يستطيع إرسال ping إلى العميل، ومع ذلك فالنفق ينقل الحزم بوضوح في كل من العبارتين. الاختلاف ليس في المسار بل في أول حزمة في كل اختبار: إحداهما رد على تدفق يتتبعه Windows أصلاً، والأخرى طلب وارد جديد لم تسمح به أي قاعدة. هذا الاختلاف يفسّر معظم تقارير ping أحادي الاتجاه ويشير مباشرة إلى القاعدة التي عليك كتابتها. اختباران في اتجاهين متعاكسين يفصلان الحالتين في نحو دقيقة.

اتجاهان، قراران مختلفان

عندما يرسل العميل طلب الصدى، يرى جدار حماية Windows اتصالاً صادراً قرّر السماح به. يعود الرد داخل ذلك التدفق القائم، فيقبله المحرّك الذي يتتبّع الحالة دون الرجوع إلى أي قاعدة واردة خاصة بـ ICMP. هذا هو معنى الترشيح القائم على الحالة عملياً، والقاعدة التي لم يكتبها أحد ليست طرفاً في الأمر. لذا فنجاح العميل لا يقول شيئاً عن سياسة الوارد.

عندما يرسل الخادم الطلب أولاً، لا تطابقه أي حالة قائمة. يعامل Windows الحزمة كاتصال وارد جديد ويسأل سياسة الوارد، وهي لا تنص افتراضياً على أي إجراء لطلبات الصدى القادمة من مصادر عشوائية.

إذن أثبت نجاح العميل أن ICMP الصادر ومسار العودة يعملان. لكنه لم يختبر قرار الوارد قط، والاستنتاج الطبيعي بأن جدار الحماية سليم معقول وخاطئ. ولهذا يتكرر الخطأ في التذاكر التي تحتوي أصلاً على الدليل.

تتبّع الحزمة حتى تختفي

تأكّد من العناوين قبل تغيير أي شيء: استخدم عنوان النفق الذي يحمله العميل فعلاً، وتحقّق من أن الخادم يوجّه إليه لا إلى عنوان شبكة محلية خلف العميل. الفشلان يبدوان متطابقين من سطر أوامر الخادم، لأن كليهما ينتهي بمهلة. المكان الذي تموت فيه الحزمة هو الحقيقة الوحيدة التي تحدد ما يجب تغييره.

إذا وصل الطلب إلى واجهة النفق ولم يخرج شيء، فجدار الحماية المحلي هو السبب المرجح. وإذا لم يصل إلى الواجهة أبداً، فالجواب في المنبع: مسار على الخادم، أو سياسة صادرة، أو تسليم الأقران في VPN نفسه.

التقط على واجهة النفق في العميل بينما يرسل الخادم ping. رؤية الطلب يصل دون رد بجانبه هي الدليل الذي يبرر كتابة قاعدة في Windows. ورؤية لا شيء على الإطلاق تدفعك إلى المنبع، والقاعدة المضافة في تلك الحالة لا تجعل الجهاز إلا أكثر تسامحاً مع حزمة لم تصل قط. وفي الحالين يكلّف الالتقاط أقل من التخمين الذي يحل محله.

احصر قاعدة واحدة بدل فتح ICMP

حدّد المحوّل وفئته الحالية قبل كتابة أي شيء، لأن كليهما يظهر في النطاق الذي أنت على وشك تحديده. هذا الاسم المستعار هو اسم واجهة Windows، وهو ليس بالضرورة اسم ملف تعريف VPN الذي استوردته. الأوامر أدناه تسرد الموجود ثم تعرض قاعدة محدودة معاينةً دون تطبيقها.

Get-NetConnectionProfile
Get-NetAdapter | Where-Object Status -eq 'Up'
New-NetFirewallRule -DisplayName "VPN server echo" -Direction Inbound -Protocol ICMPv4 -IcmpType 8 -RemoteAddress 10.63.0.1 -InterfaceAlias "Office VPN" -Profile Private -Action Allow -WhatIf

ICMPv4 من النوع 8 هو طلب الصدى، وهو الرسالة الوحيدة التي يحتاج الخادم إلى جواب عنها. احصره في عنوان النفق الخاص بالخادم وفي واجهة النفق، ثم اترك ملف التعريف كما هو حال المحوّل فعلاً. إعادة تسمية شبكة لتلائم مثالاً تغيير منفصل له عواقبه.

ما لا تغطيه القاعدة

صدى IPv6 بروتوكول مختلف بنوع رسالة مختلف، فقاعدة ICMPv4 لا تقول عنه شيئاً، والنفق الذي يحمل العائلتين يحتاج قاعدته الخاصة بالعائلة الأخرى. ولا تفتح هذه القاعدة شيئاً آخر: فـ RDP ومشاركة الملفات وكل خدمة أخرى ما زالت تعتمد على سياستها. وهذا هو جوهر حصر قاعدة واحدة ضيقة بدل تمكين سماح عريض بـ ICMP. السماح العريض هو الإصلاح السهل وهو الأطول بقاءً، لأن أحداً لا يلاحظه بعد ذلك.

على جهاز مُدار يمكن أن تُستبدل القاعدة عند تحديث السياسة التالي، فعلى مالك السياسة إجراء التغيير المكافئ لا على مسؤول محلي. اكتب النية في التذكرة إلى جانب الأمر، لأن التحديث سيمحو الأمر ويُبقي المتطلب كما هو. الاثنان ليسا الأثر نفسه، وواحد منهما فقط يبقى.

اقرأ النتيجة في الاتجاه الصحيح

بعد تطبيق القاعدة، أرسل ping من الخادم وتأكد من وصول رد إلى العميل، ثم أرسل ping من مصدر يجب أن يبقى مستبعداً وتأكد من أنه لا يصل. أعد اختبار الوصول على عائلة العناوين الأخرى إذا كان النفق يحمل واحدة.

Get-NetFirewallRule -DisplayName "VPN server echo" | Get-NetFirewallAddressFilter
ping 10.63.4.17
ping -6 fd00:63::17

طباعة القاعدة التي سرت فعلاً أنفع من الوثوق بالأمر الذي أنشأها، لأن المعاينة وقاعدة مطبقة حالتان مختلفتان. إذا أظهر مرشّح العناوين المصدر الذي قصدته وظل المصدر المستبعد ينتهي بمهلة، فالقاعدة تفعل بالضبط ما يقوله نطاقها. ping ناجح صادر من العميل ما كان ليثبت ذلك أبداً، ولهذا ينتمي اتجاه كل اختبار في السجل إلى جانب نتيجته. احتفظ بالاتجاهين في التذكرة، وإلا فسيعيد القارئ التالي الاختبار الذي لا يمكن أن يفشل.

مقالات ذات صلة