ไม่สามารถเชื่อมต่อกับซ็อกเก็ตที่ฟังใน 127.0.0.1 แต่ใช้ได้กับ 'localhost' ใน Windows 10


4

ฉันติดตั้ง Windows 10 Pro x64 เรียบร้อยแล้วและฉันพยายามเรียกใช้เซิร์ฟเวอร์ PostgreSQL มันใช้งานได้อย่างสมบูรณ์บน Windows 7 แต่ Windows 10 ทำงานผิดปกติจริงๆ: ถ้าฉันกำหนดค่า PostgreSQL ให้ฟัง127.0.0.1แล้วฉันไม่สามารถเชื่อมต่อกับมันได้โดยใช้ psql:

psql: could not connect to server: Permission denied (0x0000271D/10013)
        Is the server running on host "localhost" (127.0.0.1) and accepting
        TCP/IP connections on port 5432?
could not connect to server: Connection refused (0x0000274D/10061)
        Is the server running on host "localhost" (::1) and accepting
        TCP/IP connections on port 5432?

แต่ถ้าฉันเปลี่ยนเป็นฟังบน 192.168.0.108 (IP ของอินทราเน็ตของฉัน) ทุกอย่างก็ใช้ได้

>psql.exe --host=192.168.0.108 --username=test test
psql (9.4.0)

พฤติกรรมเดียวกัน (หมายถึง PostgreSQL ทำงานได้ดี) คือถ้าฉันบอกให้ฟังlocalhostเป็นชื่อแทนที่จะเป็น IP ถึงแม้ว่าในทั้งสองกรณี ( localhostหรือทั้งสอง127.0.0.1) มันฟังบน IP และพอร์ตเดียวกันทั้งหมด:

>netstat -abno | grep 5432 -A 1
  TCP    127.0.0.1:5432         0.0.0.0:0              LISTENING       3480
 [postgres.exe]
--
  TCP    [::1]:5432             [::]:0                 LISTENING       3480
 [postgres.exe]

C:\Windows\System32\drivers\etc\hostsไม่มีอะไรในของฉัน และฉันไม่คิดว่าปัญหานี้มีเฉพาะกับ PostgreSQL ฉันใช้มันเป็นตัวอย่างเท่านั้น ฉันมีบริการอื่น ๆ ที่ทำงานในเครื่องซึ่งมีปัญหาเดียวกัน - ไม่สามารถเชื่อมต่อกับซ็อกเก็ตในเครื่องได้เนื่องจากข้อผิดพลาดด้านการอนุญาต


และเพื่อยืนยันว่าคุณกำลังเข้าถึงพอร์ตจากช่องเดียวกันที่โฮสต์อยู่ใช่ไหม สิ่งหนึ่งที่ต้องดูคือ localhost binding จำนวนมากไม่ทราบว่าที่อยู่ใด ๆ ในบล็อก 127 สามารถทำงานเป็นย้อนกลับ localhostแต่ไม่ทั้งหมดของพวกเขาจะผูกพันกับชื่อ Bonjour / Avahi และบริการศูนย์ conf อื่น ๆ สามารถ map อยู่ย้อนกลับอื่น ๆ mybox.localที่ชื่อเหมือน นอกจากนี้ยังเป็นไปได้ว่า IPv6 กำลังก่อกวนน่านน้ำดังนั้นควรพิจารณาปิดการใช้งานหากไม่จำเป็น
Frank Thomas

ใช่ฉันเข้าถึงได้จากกล่องเดียวกัน IPv6 เป็นผู้ต้องสงสัยของฉันด้วยฉันจึงลองปิดการใช้งาน IPv6 ผ่านรีจิสตรี (Services / TSCPIP6 / พารามิเตอร์, DisabledComponents key) และผ่านการตั้งค่าอะแดปเตอร์เครือข่าย แต่ก็ไม่ได้ช่วยอะไร
Extesy

คุณมีไฟร์วอลล์ที่ทำงานอยู่หรือไม่? ลองปิดการใช้งานชั่วคราวและดูว่ามันส่งผลกระทบต่อสถานการณ์หรือไม่ ไม่เช่นนั้นทุกอย่างที่คุณแสดงจะตรวจสอบได้ดี
Frank Thomas

ฉันมี KIS2016 แล้ว พยายามปิดการใช้งานอย่างเต็มที่ไม่กี่นาที ไม่ได้ช่วยอะไรเช่นกัน
Extesy
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.