دليل إعداد وضع شبكة WSL mirrored

دليل إعداد وضع شبكة WSL2.6.0

متطلبات الإصدار

حالة الإصدار الحالي:

  • أحدث إصدار مستقر: 2.5.9 (يحتوي على عيوب في تهيئة الشبكة)
  • الإصدار الموصى به: 2.6.0 إصدار تجريبي (يدعم وضع mirrored الكامل)

تحليل مقارنة الأنماط

الميزةوضع bridge (تم التخلص منه)وضع mirrored (موصى به)
بنية نموذج البروتوكولنموذج بروتوكول مزدوجنموذج بروتوكول مشترك
توزيع عنوان IPIP مستقل (Windows+WSL)مشاركة IP المضيف
موارد المنفذاستخدام مستقلمنفذ مشترك (يجب تجنب التعارض)
أداء الشبكةأثقل نسبيًاخفيف الوزن وفعال
تعقيد التكوينبسيطيحتاج إلى تكوين عميق لسياسة الجدار الناري

خطوات التكوين القياسية

1. إعداد وضع الشبكة

تعيين الوضع الأساسي من خلال تطبيق WSL Settings:

  1. افتح تطبيق الإعدادات
  2. اختر علامة التبويب “Network”
  3. اضبط وضع الشبكة على “Mirrored”
  4. قم بتطبيق التكوين وأعد تشغيل WSL

2. تكوين سياسة الجدار الناري

يجب تنفيذ تكوين السياسة الكامل من خلال PowerShell:

# تعريف GUID لجهاز WSL الافتراضي
$wslGuid = '{40E0AC32-46A5-438A-A0B2-2B479E8F2E90}'

# تكوين سياسة الجدار الناري (بالترتيب)
Set-NetFirewallHyperVVMSetting -Name $wslGuid -Enabled True
Set-NetFirewallHyperVVMSetting -Name $wslGuid -DefaultInboundAction Allow
Set-NetFirewallHyperVVMSetting -Name $wslGuid -DefaultOutboundAction Allow
Set-NetFirewallHyperVVMSetting -Name $wslGuid -LoopbackEnabled True
Set-NetFirewallHyperVVMSetting -Name $wslGuid -AllowHostPolicyMerge True

# التحقق من نتائج التكوين
Get-NetFirewallHyperVVMSetting -Name $wslGuid

3. التحقق من تعيين المنفذ

# مثال: التحقق من حالة اشغال منفذ 80
Get-NetTCPConnection -LocalPort 80

معالجة المشكلات الشائعة

المشكلة 1: لا يمكن إنشاء اتصال خارجي

  • خطوات الفحص: يجب أن تكون جميع الحقول في مخرجات Get-NetFirewallHyperVVMSetting بقيمة True/Allow
  • الحل: أعد تنفيذ تكوين سياسة الجدار الناري بالترتيب

المشكلة 2: تعارض المنافذ

  • طريقة التحقق: netstat -ano لعرض اشغال المنفذ
  • اقتراح المعالجة: أعِد تحرير منفذ Windows أولاً، أو عدّل منفذ الاستماع لخدمة WSL

طرق التحقق

  1. قم بتشغيل خدمة WSL (مثل Nginx/Apache)
  2. قم بالوصول من مضيف Windows إلى http://localhost:<port>
  3. قم بالوصول من جهاز شبكة المنطقة المحلية إلى http://<host-ip>:<port>

المراجع

  1. وثائق شبكة WSL الرسمية
  2. ملاحظات إصدار WSL 2.6.0