แก้ไขข้อผิดพลาดของ AnyConnect ที่ „เริ่มต้นระบบย่อยการเชื่อมต่อไม่สำเร็จ“
ความล้มเหลวเกิดขึ้นก่อนที่ข้อมูลรับรองใด ๆ จะออกจากเครื่อง ตรวจสอบบริการของเอเจนต์ แฟล็ก HTTP แบบออฟไลน์ แล้วจึงตรวจสอบ Hyper-V หรือ ICS ที่ยึดอะแดปเตอร์อยู่
คุณคลิกเชื่อมต่อ แล้วกล่องโต้ตอบตอบกลับแทบจะทันที: เริ่มต้นระบบย่อยการเชื่อมต่อไม่สำเร็จ ไม่มีอะไรไปถึงเกตเวย์ จึงไม่มีการแลกเปลี่ยนใบรับรอง ไม่มีข้อมูลรับรอง และไม่มีการเลือกกลุ่มอุโมงค์ที่ปลายอีกด้าน นั่นหมายความว่าบันทึกของคอนเซนเทรเตอร์จะแสดงเซสชันว่าง และฝ่ายสนับสนุนจะขอภาพหน้าจอของกล่องโต้ตอบที่ไม่เคยมีอะไรที่เป็นประโยชน์เลย ให้ทำงานกับปลายทางแทน ตามลำดับที่กำหนด และหยุดที่ขั้นตอนแรกที่เปลี่ยนผลลัพธ์
เวลาคือหลักฐานที่มีค่าที่สุดที่คุณมี และการบันทึกก็ไม่มีค่าใช้จ่าย เขียนว่าข้อผิดพลาดปรากฏก่อนหรือหลังการขอข้อมูลรับรอง และเริ่มขึ้นหลังการอัปเกรด การอัปเดต Windows หรือเอเจนต์ความปลอดภัยใหม่หรือไม่ คำตอบสามข้อนี้มักลดรายชื่อผู้สมัครลงครึ่งหนึ่งก่อนที่คุณจะแตะการตั้งค่าใด ๆ
อ่านเวลาให้ดีก่อนจะเปลี่ยนอะไร
จุดล้มเหลวสามจุดดูคล้ายกันและไม่เหมือนกัน หากกล่องโต้ตอบปรากฏในจังหวะที่คุณกดเชื่อมต่อ ไคลเอนต์ไม่สามารถเริ่มโครงสร้างพื้นฐานของตัวเองได้ และนั่นคือสิ่งที่ข้อความนี้ชี้ หากปรากฏหลังจากคุณพิมพ์ข้อมูลรับรอง แสดงว่าถึงกลุ่มอุโมงค์แล้วและปัญหาอยู่ไกลออกไป หากอุโมงค์ขึ้นแล้วล้มลง ระบบย่อยเริ่มต้นได้ดีและคุณกำลังไล่บั๊กที่ต่างออกไปเลย การสับสนทั้งสามแบบทำให้เสียเวลาช่วงบ่ายไปกับการติดตั้งใหม่ที่ไม่ช่วยอะไร
มีเพียงกรณีแรกเท่านั้นที่อยู่ในขอบเขตนี้ ข้อความถูกสร้างขึ้นก่อนการตัดสินใจด้านเครือข่ายใด ๆ ดังนั้นที่อยู่เกตเวย์ผิด ใบรับรองหมดอายุ หรือรหัสผ่านแย่จะไม่ทำให้เกิดข้อความนี้
ขั้นตอนที่ 1: ยืนยันว่าบริการของเอเจนต์ทำงานอยู่
หน้าต่างที่คุณคลิกเป็นเพียงส่วนหน้า งานจริงเกิดขึ้นในบริการ Cisco AnyConnect Secure Mobility Agent ซึ่งลงทะเบียนเป็น vpnagent. หากบริการนั้นหยุดหรือถูกปิดใช้งาน GUI จะไม่มีอะไรให้คุยด้วย และรายงานความล้มเหลวในการเริ่มต้นนี้พอดี ตรวจสอบสถานะและชนิดการเริ่มต้นจากพรอมต์ PowerShell ที่ยกสิทธิ์:
Get-Service vpnagent | Select-Object Name, Status, StartType
sc.exe qc vpnagent
net start vpnagent
ตัวติดตั้งที่เคารพชนิดการเริ่มต้นที่ตั้งไว้ด้วยมือก่อนหน้านี้คือสาเหตุปกติที่ทำให้ลงเอยด้วยการปิดใช้งาน ดังนั้นให้ตรวจสอบ StartType แทนที่จะเพียงกด Start หากบริการเริ่มและหยุดภายในไม่กี่วินาที ให้อ่านบันทึก System เพื่อหาบันทึกของ Service Control Manager ก่อนคลิกซ่อมแซม:
Get-WinEvent -FilterHashtable @{LogName="System"; ProviderName="Service Control Manager"} -MaxEvents 40
ไดรเวอร์ที่ถูกบล็อก ไฟล์ที่ถูกกักกัน หรือไดรเวอร์ตัวกรองจากผลิตภัณฑ์ความปลอดภัยของบุคคลที่สามจะระบุชื่อตัวเองในเหตุการณ์เหล่านั้น การซ่อมแซมจะติดตั้งทับไฟล์ที่ถูกบล็อกเดิมและไม่เปลี่ยนอะไร นี่จึงเป็นเหตุผลที่บันทึกเหตุการณ์ต้องมาก่อน
ขั้นตอนที่ 2: ล้างสถานะออฟไลน์ที่สแตก HTTP รายงาน
ไคลเอนต์ดาวน์โหลดโปรไฟล์และประเมินนโยบายผ่านคอมโพเนนต์ HTTP ของ Windows ดังนั้นแฟล็กออฟไลน์ที่ตั้งไว้ในการตั้งค่าอินเทอร์เน็ตของผู้ใช้จึงสามารถทำให้การเริ่มต้นล้มเหลวได้ในขณะที่เบราว์เซอร์ทุกตัวยังโหลดหน้าเว็บได้ ตรวจสอบค่าดังกล่าวโดยตรง:
Get-ItemProperty "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name GlobalUserOffline
ค่า 1 หมายความว่าสแตก WinINet กำลังบอกผู้เรียกว่าเครื่องไม่มีการเชื่อมต่อ สถานะนี้มักถูกตั้งโดยรายการเมนู Work Offline ใน Internet Explorer หรือสคริปต์อัตโนมัติ ตั้งค่ากลับเป็น 0 ออกจากระบบแล้วเข้าใหม่ และลองเชื่อมต่ออีกครั้งก่อนจะเปลี่ยนอย่างอื่น
หากคุณได้รับเครื่องนี้มาและไม่สามารถบอกได้ว่าทำไมแฟล็กจึงถูกตั้ง ให้บันทึกไว้ในตั๋ว อาจมีสิ่งอื่นบนเครื่องตั้งไว้โดยเจตนา และมันจะกลับมาอีกครั้งเมื่อเข้าสู่ระบบครั้งถัดไป
ขั้นตอนที่ 3: ปลดปล่อยอะแดปเตอร์เสมือนจาก Hyper-V หรือ ICS
บทบาทของ Windows สองอย่างสามารถยึดชิ้นส่วนที่ไคลเอนต์ต้องใช้ในการสร้างอะแดปเตอร์ของตนได้ Hyper-V คืออย่างแรก เมื่อบริการของสวิตช์เสมือนทำงาน การสร้างอะแดปเตอร์อาจล้มเหลวในแบบที่ปรากฏเป็นข้อผิดพลาดนี้ การหยุดบริการเป็นการวินิจฉัย ไม่ใช่การแก้ไข:
Get-Service vmms, vmcompute | Stop-Service
Get-NetAdapter | Where-Object InterfaceDescription -like "*Hyper-V*"
หากไคลเอนต์เชื่อมต่อได้เมื่อบริการเหล่านั้นหยุดอยู่ แสดงว่าความขัดแย้งได้รับการยืนยัน และตอนนี้คุณรู้แล้วว่าต้องเจรจาอะไรกับเจ้าของโฮสต์ Hyper-V เริ่มบริการเหล่านั้นใหม่ภายหลัง เว้นแต่เครื่องจะไม่ต้องการ virtualization อีก
การแชร์การเชื่อมต่ออินเทอร์เน็ตคือเจ้าของรายที่สอง หากมีการแชร์การเชื่อมต่อใด ๆ ไคลเอนต์อาจล้มเหลวก่อนจะสร้างอุโมงค์ด้วยซ้ำ ยืนยันด้วย Get-Service SharedAccess และหากทำงานอยู่และตั้งเป็นอัตโนมัติ ให้ไล่ดูอะแดปเตอร์เพื่อหาการเชื่อมต่อที่แชร์ และปิดการแชร์เฉพาะบนอะแดปเตอร์นั้น
ยังมีคำอธิบายที่ถูกกว่าซึ่งต้องตัดออกก่อน เครื่องที่ไม่มีการเข้าถึงอินเทอร์เน็ตที่ใช้งานได้เลยมักแสดงข้อความนี้แทนข้อผิดพลาดเรื่องการเข้าถึง ดังนั้นให้ยืนยันว่า Test-NetConnection ไปยังที่อยู่เกตเวย์และไปยังโฮสต์สาธารณะนั้นสำเร็จทั้งคู่ก่อนโทษไคลเอนต์
ตรวจสอบ แล้วย้อนกลับสิ่งที่คุณไม่จำเป็นต้องทำ
การตรวจสอบไม่ใช่โล่สีเขียวในถาดระบบ ยืนยันว่าอะแดปเตอร์มีอยู่ มีที่อยู่ และส่งผ่านทราฟฟิกได้: Get-NetAdapter -Name "Cisco AnyConnect*" ควรแสดงว่าทำงานอยู่ ipconfig /all ควรแสดงที่อยู่ที่ได้รับและเซิร์ฟเวอร์ DNS และคำขอจริงไปยังชื่อภายในควรแก้ไขผ่านอุโมงค์ไม่ใช่ผ่านตัวแก้ไขชื่อภายในเครื่อง
เก็บรายการสั้น ๆ ของทุกการเปลี่ยนแปลง พร้อมค่าที่พบและค่าที่ตั้ง หากการเชื่อมต่อทำงานหลังขั้นตอนที่สาม ให้คืนค่าบริการ Hyper-V และทดสอบอีกครั้งก่อนปิดตั๋ว เพราะวิธีเลี่ยงที่ปิด virtualization อย่างเงียบ ๆ จะถูกย้อนกลับโดยผู้ดูแลระบบคนถัดไปที่สังเกตเห็น
หากไม่มีขั้นตอนใดขยับข้อผิดพลาดได้ ให้หยุดเปลี่ยนปลายทาง รวบรวมเวอร์ชันไคลเอนต์ สถานะของบริการ เวลาจากด้านบนของหน้านี้ และชุดวินิจฉัยที่ไคลเอนต์สร้างได้ แล้วส่งมอบพร้อมลำดับที่คุณลองจริง ชุดนั้นมีค่าสำหรับวิศวกรคนถัดไปมากกว่าภาพหน้าจอของกล่องโต้ตอบ และเป็นสิ่งเดียวที่แสดงว่าระบบย่อยล้มเหลวก่อนหรือหลังสัมผัสเครือข่าย