كيفية إصلاح "خدمة WinRM لا تستطيع معالجة الطلب لأن عنصر wsman:ConnectionRetry في DeliverTo غير صالح".
الوصف
This error occurs in Microsoft Windows environments when using Windows Remote Management (WinRM) for event forwarding, remote scripting, or WS-Management sessions. It specifically indicates a schema validation failure within the SOAP request payload sent to the WinRM service.
الـ DeliverTo element in the WS-Eventing or WS-Management XML structure defines how and where notifications or responses should be delivered. Inside this structure, the wsman:ConnectionRetry element tells the service how many times or how frequently it should attempt to reconnect if a connection fails.
تقوم خدمة WinRM بإلقاء هذا الخطأ بسبب سببين رئيسيين:
- Invalid Value Data Types: القيمة المقدمة داخل
<wsman:ConnectionRetry>لا تتوافق العلامات مع نوع بيانات XML المتوقع (مثل عدد كامل أو تنسيق مدة محددة). - Schema Mismatch (WS-Management Version Compatibility): يستخدم تطبيق العميل الذي ينشئ الطلب تنفيذًا قديمًا أو غير قياسيًا لبروتوكول WS-Management الذي يقدم عناصر بناءً على الجملة لا يمكن لخدمة WinRM المتلقية لويندوز تحليلها أو رفضها صراحة.
إصلاحات خطوة بخطوة
اعتماداً على ما إذا كنت تقوم بتشغيل اشتراك الحدث، أو تنفيذ نصوص PowerShell المخصصة، أو إدارة أدوات المراقبة التابعة لجهات خارجية، استخدم الطرق التالية لحل المشكلة.
الطريقة 1: تعديل أو إزالة معيار ConnectionRetry في اشتراكات الأحداث
إذا كنت تستخدم Windows Event Forwarding (WEF) ، فغالباً ما يتم تعريف عنصر إعادة المحاولة داخل تكوين الاشتراك.
- افتح PowerShell كمدير
- تصدير تكوين الاشتراك الحالي إلى ملف XML عن طريق تشغيل:
wecutil gs "YourSubscriptionName" /f:xml > C:\subscription.xml - افتح
C:\subscription.xmlباستخدام Notepad أو محرر XML. - ابحث عن
<wsman:ConnectionRetry>العلامة. - Verify its value. If it contains invalid characters, symbols, or letters, change it to a valid integer (for example,
5) - إذا لم تكن المعلمة مطلوبة بشكل صارم من خلال سير العمل الخاص بك، قم بحذف المعلمة بأكملها.
<wsman:ConnectionRetry>...</wsman:ConnectionRetry>حجب من الملف. - حفظ وإغلاق الملف.
- تحديث الاشتراك في ويندوز باستخدام ملف XML المعدل:
wecutil ss /c:C:\subscription.xml
الطريقة 2: تحديث وكلاء المراقبة أو برامج الإدارة من طرف ثالث
إذا حدث هذا الخطأ عندما يقوم خادم لينكس أو أداة مراقبة (مثل Nagios أو Zabbix أو SolarWinds) أو نظام احتياطي بالاتصال بجهاز ويندوز الخاص بك ، فإن برنامج العميل يرسل عناوين XML مشوهة.
- تحديد البرنامج الذي يبدأ الاتصال عن بعد مع جهاز ويندوز
- تحقق من وثائق البائع WinRM compatibility patches.
- قم بتحديث وكيل الإدارة أو SDK أو أداة سطر الأوامر على جانب العميل إلى أحدث إصدار.
- إذا كنت تستخدم كتابة Python مخصصة (على سبيل المثال ، من خلال
pywinrm), تأكد من تحديث مكتباتك, حيث أن الإصدارات القديمة لديها أخطاء تنسيق مع بعض إضافات WS-Man.
الطريقة 3: إعادة تشغيل وإعادة تعيين تكوين خدمة WinRM
يمكن أن يسبب مستمعون WinRM الفاسدين أو سياسات التكوين المتضاربة أخطاء في التحليل. يضمن إعادة تعيين الخدمة تطبيق المعايير القياسية.
- اضغط على Windows Key + X و إختاري Terminal (Admin) أو Command Prompt (Admin).
- أوقف خدمة WinRM عن طريق كتابة:
net stop winrm - إعادة تعيين معايير تكوين WinRM الافتراضية إلى إعدادات المصنع:
winrm quickconfig -q - تحقق من حالة المستمعين للتأكد من نظافتهم:
winrm e winrm/config/listener - إعادة تشغيل خدمة WinRM:
net start winrm
الطريقة 4: تعديل قيم سجل WSman Retry (بالنسبة للبيئات المتقدمة)
إذا كانت سياسات المجموعة أو تكوينات السجل تدفع إعدادات توصيل WS-Management الصارمة أو الفاسدة، يمكنك التحقق من السجل.
- اضغط Windows Key + R ، نوع
regedit, وأضرب Enter لفتح محرر السجل - انتقل إلى المسار التالي:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\ - ابحث عن أي مفاتيح فرعية تتعلق بـ
ClientأوServiceالتكوينات التي تحدد ملفات تعريف إعادة التجربة المخصصة. - تأكد من عدم وجود قيم سلسلة (
REG_SZ) يتم تعيينها عندما تكون قيم DWORD متوقعة لعد محاولات إعادة. - أغلق محرر السجل وإعادة تشغيل الكمبيوتر لتطبيق التغييرات
قد يكون هناك بعض الأخطاء. Learn Microsoft