Computer >> คอมพิวเตอร์ >  >> ระบบ >> Windows 8

แก้ไข:แอพ Windows Modern ไม่ทำงานผ่านการเชื่อมต่อ VPN

คุณอาจเคยเจอแอป Windows 8สมัยใหม่บางตัว (แอปเมโทร) ไม่เห็นอินเทอร์เน็ต (ล้มเหลวในการเชื่อมต่อกับเซิร์ฟเวอร์ ฯลฯ) เมื่อใช้การเชื่อมต่อ VPNบางประเภท ให้กับผู้ให้บริการอินเทอร์เน็ต อย่างไรก็ตาม ตามกฎแล้ว ปัญหานี้ไม่ได้เกิดขึ้นกับแอป Metro ทั้งหมด กล่าวคือ แอปบางตัวใช้งานได้ (โดยปกติคือแอป Metro มาตรฐาน) และบางแอปก็ใช้ไม่ได้ ในขณะเดียวกัน แอปพลิเคชัน Windows แบบคลาสสิกก็ทำงานกับอินเทอร์เน็ตได้โดยไม่มีปัญหาใดๆ

หากคุณวางเราเตอร์ฮาร์ดแวร์ที่เริ่มต้นการเชื่อมต่อ VPN กับผู้ให้บริการก่อนคอมพิวเตอร์ ปัญหาจะไม่เกิดขึ้น หมายความว่าปัญหาเกิดขึ้นเฉพาะใน Windows 8 ซึ่งต้องตั้งค่าอุโมงค์ข้อมูล VPN เอง

ปัญหาค่อนข้างเก่า แต่ไม่มีวิธีแก้ปัญหาของ Microsoft อย่างเป็นทางการ (อย่างน้อยฉันก็หาไม่เจอ) ในบทความนี้ เราจะตรวจสอบสาเหตุที่ปรากฏขึ้นและวิธีแก้ไข

อย่างที่คุณทราบ แอพ Modern Windows 8 นั้นแตกต่างจากแอพ Windows แบบคลาสสิก ในบริบทนี้ เราสนใจในข้อเท็จจริงที่ว่ามันทำงานในสภาพแวดล้อมที่แยกออกมาพร้อมการเข้าถึง ลูปแบ็ค อินเทอร์เฟซคอมพิวเตอร์ ปิดการใช้งาน โดยค่าเริ่มต้น. เนื่องจากอินเทอร์เฟซทันเนลทั้งหมด (pptp, l2tp, pppoe ) ซึ่งใช้ VPN เป็นอินเทอร์เฟซแบบวนรอบ เมโทรแอปส่วนใหญ่ไม่สามารถส่งทราฟฟิกเครือข่ายไปยังพวกเขาได้ และด้วยเหตุนี้จึงทำให้เข้าถึงอินเทอร์เน็ตได้ เช่นเดียวกับเซิร์ฟเวอร์พร็อกซี่ท้องถิ่น (จากตัวลบโฆษณาที่ง่ายที่สุด เช่น Privoxy ไปจนถึงพร็อกซีเซิร์ฟเวอร์ที่เต็มเปี่ยม)

เพื่อให้แอป Metro เข้าถึงเครือข่ายได้อย่างสมบูรณ์ คุณต้องเพิ่ม privateNetworkClientServer ไปที่รายการ APPX เมื่อพัฒนาแอปพลิเคชันใน Visual Studio การเข้าถึงนี้จะเปิดใช้งาน แต่หลังจากเผยแพร่แอปใน Windows Store แล้ว นักพัฒนาจะต้องเปิดใช้งานคุณลักษณะนี้ด้วยตนเองในไฟล์ Manifest

แม้ว่าอินเทอร์เฟซอุโมงค์ข้อมูลบน Windows จะเป็นลูปแบ็ค คุณจะต้องขอให้นักพัฒนาแก้ไขแอปหรือใช้วิธีแก้ปัญหาชั่วคราวเพื่อให้แอป Metro ทำงานได้อย่างถูกต้อง

เพื่อใช้วิธีแก้ปัญหาชั่วคราว เราจะใช้พร็อกซีเซิร์ฟเวอร์ HTTP/HTTPS ฟรี Fiddler ใช้สำหรับเว็บแอปแก้ไขจุดบกพร่องและตรวจสอบการรับส่งข้อมูล HTTP ทั้งหมดระหว่างคอมพิวเตอร์และเซิร์ฟเวอร์อินเทอร์เน็ต (โดยเฉพาะอย่างยิ่ง สามารถใช้เพื่อรับลิงก์โดยตรงเพื่อดาวน์โหลดไฟล์ APPX การติดตั้งของแอป Metro จาก Windows Store)

  • ดาวน์โหลด Fiddler Web Debugger จากหน้าเว็บนี้ (https://www.telerik.com/download/fiddler) สำหรับ Windows 8 หรือใหม่กว่า คุณจะต้องมี Fiddler for .Net 4 . (ควรจะมี .NETv4 Framework ติดตั้งอยู่ในคอมพิวเตอร์ของคุณ)
  • ติดตั้ง Fiddler ด้วยการตั้งค่ามาตรฐาน
  • ตามค่าเริ่มต้น Modern Apps ไม่สามารถแก้ไขจุดบกพร่องโดยใช้ Fiddler ได้ เนื่องจากทำงานเป็นพร็อกซีเซิร์ฟเวอร์ในเครื่องคอมพิวเตอร์ของคุณ (Metro Apps ไม่สามารถส่งปริมาณการใช้งานผ่านอินเทอร์เฟซพร็อกซีในเครื่องโดยค่าเริ่มต้น) คุณสามารถลบข้อจำกัดนี้ (Loopback Restriction) ในคอนเทนเนอร์ของโปรแกรม AppContainers สำหรับแอพ Metro บางตัวโดยใช้ส่วนขยาย Fiddler — Windows 8 AppContainer Loopback Utility (enableloopbackutility.exe) ดาวน์โหลดและติดตั้งส่วนขยายนี้
  • หลังจากติดตั้งยูทิลิตี้แล้ว ให้เริ่ม Fiddler และใน Tools เมนูเลือก Win8 Loopback Exemptions (คุณสามารถทำเช่นเดียวกัน ถ้าคุณคลิกปุ่ม Windows 8 ปุ่มแรกในแถบเครื่องมือ) แก้ไข:แอพ Windows Modern ไม่ทำงานผ่านการเชื่อมต่อ VPN  
  • ก่อนดำเนินการขั้นตอนต่อไป ตรวจสอบให้แน่ใจว่าได้สร้าง VPN ของคุณแล้ว (หรือเริ่มต้นพร็อกซีเซิร์ฟเวอร์ในเครื่อง)
  • เลือกแอป Windows 8 Metro ซึ่งการรับส่งข้อมูลควรผ่าน Fiddler และการจำกัดการเข้าถึงแบบวนซ้ำที่จะถูกลบออก หากคุณต้องเลือกแอปทั้งหมด ให้คลิก ยกเว้นทั้งหมด และบันทึกการกำหนดค่า (บันทึกการเปลี่ยนแปลง ). แก้ไข:แอพ Windows Modern ไม่ทำงานผ่านการเชื่อมต่อ VPN เคล็ดลับ . อย่างที่คุณเห็น หน้าต่างนี้ระบุไว้ว่าด้วยเหตุผลด้านความปลอดภัยและความน่าเชื่อถือ Windows จึงบล็อกแอป Metro ไม่ให้ส่งปริมาณข้อมูลเครือข่ายไปยังเครื่องคอมพิวเตอร์ AppContainer Loopback Exemption Utility ปิดใช้งานข้อจำกัดนี้สำหรับการดีบักและการทดสอบ
  • ย่อ Fiddler ให้เล็กสุด (อย่าปิด!) และตรวจสอบการเข้าถึงเครือข่ายจากแอป Metro
สำคัญ . หากคุณติดตั้งแอปใหม่ที่ทันสมัย ​​คุณจะต้องเพิ่มลงในรายการการยกเว้นลูปแบ็คด้วยตนเอง

Fiddler ไม่เหมาะสำหรับการใช้งานอย่างมีประสิทธิผลในสภาพแวดล้อมขององค์กรเนื่องจากความไม่สะดวกบางประการในการปรับใช้และการจัดการ แต่เนื่องจากเป็นวิธีแก้ปัญหาชั่วคราวที่ช่วยให้ทำงานกับแอป Metro ในการกำหนดค่า VPN ได้ จึงมีประโยชน์มาก

ดังนั้นเราจึงได้พิจารณาวิธีใช้ Fiddler เพื่อให้แอป Metro เข้าถึงอินเทอร์เน็ตผ่านการเชื่อมต่อ VPN หรือพร็อกซีเซิร์ฟเวอร์ในเครื่องได้