ลูกค้ารายหนึ่งของฉันประสบปัญหาเมื่อพยายามอัปเดตพีซีเครื่องใหม่ที่ใช้ Windows 10 1607 และ Windows Server 2016 จากเซิร์ฟเวอร์ WSUS ภายใน (ใช้งาน Windows Server 2012 R2) คอมพิวเตอร์ที่ใช้ Windows 10 จะแสดงในคอนโซล WSUS แต่เมื่อค้นหาการอัปเดต ไคลเอ็นต์จะใช้เวลานานในการค้นหาและส่งคืนข้อผิดพลาด 0x8024401c .
มีปัญหาบางอย่างในการติดตั้งการอัปเดต แต่เราจะลองอีกครั้งในภายหลัง หากคุณยังคงเห็นสิ่งนี้อยู่และต้องการค้นหาเว็บหรือติดต่อฝ่ายสนับสนุนเพื่อขอข้อมูล สิ่งนี้อาจช่วยได้:(0x8024401c)
ตามรายการรหัสข้อผิดพลาดของ Windows Update ข้อผิดพลาด 0x8024401C หมายถึงการหมดเวลาตอบสนองของไคลเอ็นต์:WU_E_PT_HTTP_STATUS_REQUEST_TIMEOUT — สถานะ HTTP 408 — เซิร์ฟเวอร์หมดเวลารอคำขอ
ใน Windows 10 WindowsUpdate.log ใหม่ ข้อผิดพลาดที่เกี่ยวข้องกับการหมดเวลาของ WSUS จะได้รับการลงทะเบียนเป็นครั้งคราว
2017-08-29 11:14:21:870 816 1244 WS WARNING: There was an error communicating with the endpoint at 'https://dub-wsus:8530/ClientWebService/client.asmx'.
2017-08-29 11:14:21:870 816 1244 WS WARNING: There was an error receiving the HTTP reply.
2017-08-29 11:14:21:870 816 1244 WS WARNING: The operation did not complete within the time allotted.
2017-08-29 11:14:21:870 816 1244 WS WARNING: The operation timed out
หน้า https://dub-wsus:8530/ClientWebService/client.asmx พร้อมใช้งานและเปิดได้สำเร็จบนฝั่งไคลเอ็นต์ และดูเหมือนว่าเซิร์ฟเวอร์ WSUS หรือไคลเอ็นต์ไม่มีเวลาเพียงพอที่จะดำเนินการบางอย่าง ดังนั้น ไคลเอ็นต์ถูกตัดการเชื่อมต่อเนื่องจากการหมดเวลา ในระหว่างการค้นหาครั้งแรก ไคลเอนต์อาจได้รับรายการอัปเดตจำนวนมากเกินไป และเกินขีดจำกัดของเวิร์กโฟลว์ IIS บางประการ
เพื่อแก้ปัญหากับไคลเอนต์ ฉันต้องติดตั้งการอัปเดต KB3159706 บนเซิร์ฟเวอร์ WSUS ของฉันก่อน (ต้องติดตั้ง Wndows Server 2012 R2 Update 1 บนเซิร์ฟเวอร์)
ใน KB 3159706 (อัปเดตเปิดใช้งานข้อกำหนดการถอดรหัส ESD ใน WSUS ใน Windows Server 2012 และ Windows Server 2012 R2) ให้ใส่ใจกับการดำเนินการด้วยตนเองที่จะดำเนินการหลังจากติดตั้งการอัปเดตแล้ว (หรือคอนโซล WSUS อาจไม่เปิดในครั้งต่อไป)
- เรียกใช้คำสั่ง
“C:\Program Files\Update Services\Tools\wsusutil.exe" postinstall /servicing
- ตรวจสอบว่า .NET Framework 4.5 -> การเปิดใช้งาน HTTP ติดตั้งแล้ว
Get-WindowsFeature -Name NET-WCF-HTTP-Activation45
ถ้าไม่ ติดตั้ง: - หากใช้ SSL ใน WSUS ให้แก้ไข C:\Program Files\Update Services\WebServices\ClientWebService\Web.config ตามคำแนะนำในบทความ (ในกรณีของเรา เราไม่ต้องทำอย่างนั้น)
- แก้ไขไฟล์กำหนดค่า (C:\Program Files\Update Services\WebServices\ClientWebService\web.config) โดยแทนที่
<httpRuntime maxRequestLength="4096" />
ถึง<httpRuntime maxRequestLength="204800" executionTimeout="7200"/>
- เริ่มบริการ WSUS ใหม่โดยใช้ PowerShell:
Get-Service -Name WsusService | Restart-Service -Verbose
จากนั้นใช้ IIS Manager ทำการเปลี่ยนแปลงต่อไปนี้กับการตั้งค่า WsusPool (กลุ่มแอปพลิเคชัน -> WsusPool -> การตั้งค่าขั้นสูง )
- ขีดจำกัดหน่วยความจำส่วนตัว (KB) – 0 (ค่าก่อนหน้านี้คือ 1258015 ค่า 0 หมายความว่า การจำกัดการใช้หน่วยความจำโดยเวิร์กโฟลว์ WSUS จะถูกลบออก ดังนั้นบริการอาจใช้หน่วยความจำมากกว่า 1.2 GB)
- ความยาวของคิว – 25,000 (เพิ่มความยาวของคิวเป็นพูลจาก 10,000)
- ช่วงเวลาจำกัด (นาที) — 15 (เพิ่มเวลาในการรีเซ็ตตัวนับและรัน CPU Throttling จาก 5 เป็น 15 นาที)
- บริการไม่พร้อมใช้งาน — TcpLevel (ด้วยค่าก่อนหน้า HttpLevel ข้อผิดพลาด HTTP 503 ถูกส่งกลับไปยังไคลเอนต์ ตอนนี้การเชื่อมต่อหลุด)
จากนั้นเปลี่ยนค่าของ Connection Time-out จาก 180 เป็น 320 ใน การดูแลระบบ WSUS -> การตั้งค่าขั้นสูง .
ตอนนี้รีสตาร์ท IIS:
IISReset
เราเพิ่มระยะหมดเวลาและทรัพยากรของเซิร์ฟเวอร์ ซึ่งจำเป็นสำหรับไคลเอนต์ Windows 10 เพื่อค้นหาและตรวจสอบการอัปเดตบนเซิร์ฟเวอร์ WSUS Update วันรุ่งขึ้น ลูกค้าทุกคนสามารถค้นหาและติดตั้งการอัปเดตที่จำเป็นได้