دليل إعداد وضع الشبكة WSL mirrored
دليل إعداد وضع الشبكة WSL2.6.0
Categories:
متطلبات الإصدار
حالة الإصدار الحالي:
- الإصدار المستقر الأحدث: 2.5.9 (يحتوي على عيوب في إعداد الشبكة)
- الإصدار الموصى به: 2.6.0 النسخة التجريبية (يدعم وضع mirrored الكامل)
تحليل مقارنة الوضع
| الميزة | وضع bridge (معلق) | وضع mirrored (موصى به) |
|---|---|---|
| هيكلة نموذج البروتوكولات | نموذج بروتوكولات مزدوج | نموذج بروتوكولات مشترك |
| توزيع عناوين IP | IP مستقل (Windows+WSL) | مشاركة IP المضيف |
| موارد المنفذ | استخدام مستقل | مشاركة المنفذ (تجنب التعارض) |
| أداء الشبكة | أثقل نسبيًا | خفيف وفعال |
| تعقيد الإعداد | بسيط | يتطلب إعدادًا أعمق لسياسة الجدار الناري |
خطوات الإعداد القياسية
1. إعداد وضع الشبكة
إعداد الوضع الأساسي من خلال تطبيق WSL Settings:
- افتح تطبيق الإعدادات
- اختر علامة التبويب “Network”
- اضبط وضع الشبكة على “Mirrored”
- طبق الإعداد وأعد تشغيل 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
طرق التحقق
- ابدأ خدمة WSL (مثل Nginx/Apache)
- قم بالوصول من مضيف Windows إلى
http://localhost:<port> - قم بالوصول من جهاز شبكة محلية إلى
http://<host-ip>:<port>