Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การแก้ไขปัญหา >> ข้อผิดพลาด Windows

แก้ไข: "An attempt was made to access a socket in a way forbidden by its access permissions"

บางผู้ใช้รายงานว่าเจอข้อผิดพลาด "an attempt was made to access a socket in a way forbidden by its access permissions" เมื่อพยาามรันคำสั่ง ipconfig/renew ใน CMD เพื่อซ่อมแซมการเชื่อมต่อเครือข่าย ผู้ใช้อื่นรายงานว่าปัญหานี้เกิดขึ้นเมื่อพยาามเริ่มต้นเซิร์ฟเวอร์ Apache อย่างไรก็ตาม เกือบทุกคนที่เจอปัญหานี้รายงานว่าปัญหาเริ่มขึ้นหลังจากที่มีการติดตั้ง Windows Update อัตโนมัติ

แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions

สาเหตุของข้อผิดพลาด "attempt was made to access a socket..."

เราสืบสวนปัญหานี้จากรายงานของผู้ใช้และวิธีแก้ไขที่พวกเขาใช้ พบว่ามีหลายสถานการณ์ที่สามารถก่อให้เกิดปัญหานี้ได้:

  • ไคลเอนต์ VPN บล็อกการเชื่อมต่อ localhost - ผู้ใช้หลายคนพบว่า VPN เป็นสาเหตุ การปิด VPN แล้วปัญหาหายไป
  • ไฟร์วอลล์ของบริษัทอื่นบล็อกการเชื่อมต่อ - หากมีไฟร์วอลล์ภายนอก อาจเป็นสาเหตุบล็อกการเชื่อมต่อ SMTP โดย McAfee และ Avast ถูกยืนยันว่าเป็นสาเหตุหลัก
  • แอปพลิเคชันพยาามเปิดพอร์ตที่ใช้งานอยู่แล้ว - หากพยาามใช้แอปที่ตั้งค่าเปิดพอร์ตที่เปิดอยู่แล้วและถูกใช้โดยบริการอื่น
  • คุณสมบัติความปลอดภัยของ Windows 10 - เริ่มจาก Windows 10 Microsoft ได้เพิ่มคุณสมบัติป้องกันไม่ให้ผู้ใช้สร้างพอร์ตสุ่มให้บริการบางอย่าง อาจเกิดขึ้นหากใช้สคริปต์หรือแอปที่พัฒนาเอง
  • กระบวนการอื่นกำลังฟังที่พอร์ตที่ต้องการ - ข้อขัดแย้งนี้เกิดบ่อยเมื่อพยาามเริ่มต้น Apache Web Server หรือเข้าถึง SQL Server บน Hostgator แบบระยะไกล

หากคุณกำลังเผชิญปัญหานี้ บทความนี้จะให้รายการขั้นตอนแก้ไขที่ผู้ใช้คนอื่นใช้สำเร็จ ลองทำตามวิธีต่อไปนี้ตามลำดับจนกว่าจะแก้ปัญหาได้

วิธี 1: ปิดใช้งาน Internet Connection Sharing

Internet Sharing บน Windows ใช้ช่วงพอร์ตหลายช่วงที่ไม่ได้รายงานใน Netstat หรือเครื่องมือคล้ายๆ กัน ผู้ใช้หลายคนรายงานว่าปิด Internet Connection Sharing แล้วปัญหาหายไปอย่างถาวร มี 2 วิธีในการปิด:

ปิดผ่าน Control Panel

  1. กด Windows + R พิมพ์ ncpa.cpl แล้ว Enter เพื่อเปิด Network Connections
  2. แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions
  3. ในหน้าต่าง Network Connections คลิกขวาที่การเชื่อมต่อที่ใช้งานอยู่ เลือก Properties
  4. แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions
  5. ไปที่แท็บ Sharing ยกเลิกเครื่องหมายถูกที่ Allow other network users to connect through this computer's Internet connection
  6. แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions
  7. รีสตาร์ทคอมพิวเตอร์และตรวจสอบว่าปัญหาหายไปหรือยัง

ปิดบริการ Internet Connection Sharing

  1. กด Windows + R พิมพ์ services.msc แล้ว Enter เพื่อเปิด Services
  2. แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions
  3. หา Internet Connection Sharing (ICS) คลิกสองครั้ง
  4. ที่แท็บ General เปลี่ยน Startup type เป็น Disabled
  5. แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions
  6. รีสตาร์ทคอมพิวเตอร์และตรวจสอบอีกครั้ง

วิธี 2: ถอนการติดตั้ง AV ของบริษัทอื่น หรือเพิ่มไว้ในรายการข้อยกเว้น

ผู้ใช้หลายคนระบุว่า 3rd party security suites ควรตรวจสอบว่ากำลังรบกวนการเชื่อมต่อ SMTP หรือไม่ McAfee, BitDefender, และ Avast ถูกยืนยันว่าบล็อกพอร์ตบางพอร์ตที่ localhost ใช้ ซึ่งเป็นพฤติกรรมมาตรฐานเพื่อป้องกันการโจมตีเมล

ไฟร์วอลล์ที่คุ้มครองเกินไปอาจก่อให้เกิดข้อผิดพลาดนี้ แก้ไขได้โดยเพิ่มการเชื่อมต่อที่ถูกบล็อกเข้า Whitelist ในการตั้งค่า AV ขั้นตอนจะแตกต่างกันไปตามโปรแกรม

แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions

หากยังไม่แน่ใจว่าการเชื่อมต่อไหนถูกบล็อก ให้ลองถอนการติดตั้ง AV ภายนอกชั่วคราวดูว่าปัญหาหายหรือไม่

หมายเหตุ: การปิด Real-time protection ของ AV จะไม่ช่วย เพราะกฎการบล็อกยังคงทำงานอยู่

หากตัดสินใจถอนการติดตั้ง AV สามารถทำตามคำแนะนำ ที่นี่ หากวิธีนี้ไม่ได้ผล ให้ไปวิธีถัดไป

อัปเดต: ไคลเอนต์บล็อก IP เช่น PeerBlock อาจบล็อก IP ที่เกี่ยวข้องโดยอัตโนมัติ ผู้ใช้รายงานว่าสร้างกฎข้อยกเว้นหรือถอนการติดตั้งซอฟต์แวร์บล็อก IP แล้วปัญหาหาย

วิธี 3: เพิ่มข้อยกเว้นใน Windows Firewall

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

  1. กด Windows + R พิมพ์ firewall.cpl แล้ว Enter เปิด Windows Defender Firewall
  2. แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions
  3. คลิก Allow an app or feature through Windows Defender Firewall
  4. แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions
  5. คลิกปุ่ม Change settings
  6. แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions
  7. หาแอปที่ก่อให้เกิดข้อผิดพลาด ติ๊ก Private และ Public ให้เปิดใช้งาน
  8. แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions

    หมายเหตุ: หากไม่พบโปรแกรมในรายการ ให้คลิก Allow another app และ Browse เลือกเอง

    แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions
  9. รีสตาร์ทคอมพิวเตอร์และตรวจสอบว่าข้อผิดพลาดหายไปหรือยัง

หากยังเจอข้อผิดพลาด ให้ไปวิธีถัดไป

วิธี 4: รีสตาร์ท Internet Information Services (IIS)

ผู้ใช้รายงานว่าแก้ปัญหาได้โดยรีสตาร์ท Internet Information Services (IIS) จาก Command Prompt ที่เปิดด้วยสิทธิ์ Admin

คำเตือน: การรีสตาร์ท IIS จะทำให้บริการอินเทอร์เน็ตทั้งหมดหยุดทำงานรวมถึง FTP, SMTP, NNTP และข้อมูลในแอปพลิเคชันที่จัดการการเชื่อมต่อจะหายไป

  1. กด Windows + R พิมพ์ cmd แล้ว Ctrl + Shift + Enter เพื่อเปิด CMD แบบ Admin
  2. แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions
  3. ใน CMD พิมพ์คำสั่งด้านล่างและกด Enter:
    iisreset
  4. รอจนบริการอินเทอร์เน็ตหยุดและเริ่มใหม่เสร็จ แล้วลองทำซ้ำสิ่งที่ก่อให้เกิดข้อผิดพลาด
  5. แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions

หากยังเจอข้อผิดพลาด ให้ไปวิธีถัดไป

วิธี 5: ใช้ System Restore Point ก่อนหน้า

หลังจากลองวิธีอื่นไม่ได้ ผู้ใช้บางคนแก้ปัญหาได้โดยคืนสถานะระบบไปยังจุดก่อนหน้าที่มี Restore Point

หากคุณเพิ่งเจอข้อผิดพลาดนี้และมี Restore Point ที่สร้างก่อนปัญหาเกิดขึ้น ขั้นตอนด้านล่างจะช่วยแก้ปัญหาได้:

  1. กด Windows + R พิมพ์ rstrui แล้ว Enter เปิด System Restore Wizard
  2. แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions
  3. ที่หน้าจอแรก เลือก Choose a different restore point คลิก Next
  4. แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions
  5. ติ๊ก Show more restore points เลือก Restore Point ที่มีวันที่ก่อนปัญหาเกิด คลิก Next
  6. แก้ไข:  An attempt was made to access a socket in a way forbidden by its access permissions
  7. คลิก Finish Windows จะรีสตาร์ทและคืนสถานะระบบ ตรวจสอบว่าปัญหาหายไปหรือยัง

วิธี 6: ตัดการเชื่อมต่อ VPN

ผู้ใช้บางคนพบว่า VPN เป็นสาเหตุ ทำให้การเชื่อมต่อ localhost บางอย่างล้มเหลว

ลองตัดการเชื่อมต่อ VPN ดู หากข้อผิดพลาดหายไป แสดงว่า VPN เป็นสาเหตุ ควรเปลี่ยน VPN ตัวอื่นหรือปิด VPN ขณะทำงานที่ก่อให้เกิดข้อผิดพลาด