# ข้อผิดพลาดพร็อกซี SOCKS5: รหัสตอบกลับ, ไม่มีการรองรับ และ DNS

> ข้อผิดพลาด SOCKS5 อธิบาย: ไม่มีการสนับสนุน SOCKS ใน requests, curl error 97, รหัสตอบกลับ 0x01 ถึง 0x08, และความแตกต่างระหว่าง socks5 กับ socks5h DNS พร้อมวิธีแก้ไข

- URL: https://crawlrelay.com/th/docs/errors/socks5-proxy-errors/
- อัปเดตล่าสุด: 2026-10-13
- Publisher: CrawlRelay (https://crawlrelay.com)

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

**คำตอบด่วน — SOCKS5 proxy errors หมายความว่าอย่างไรกับพร็อกซี?**

**ข้อผิดพลาด SOCKS5** มี 3 ประเภท: ไคลเอนต์ของคุณไม่มีการรองรับ SOCKS, เซิร์ฟเวอร์ปฏิเสธชื่อผู้ใช้และรหัสผ่านของคุณ, หรือเซิร์ฟเวอร์ไม่สามารถติดต่อเป้าหมายและคืนรหัสตอบกลับ กับ CrawlRelay ให้ติดตั้งการรองรับ SOCKS ก่อน (สำหรับ Python requests: `requests[socks]`) ใช้พอร์ต SOCKS5 และแนะนำให้ใช้ `socks5h://` เพื่อให้ DNS แก้ไขที่จุดออก แทนแก้ไขที่เครื่องของคุณ

## SOCKS5 proxy errors แบบสั้นๆ

| คุณลักษณะ | ค่า |
| --- | --- |
| ข้อผิดพลาด | SOCKS5 proxy errors |
| ประเภท | ข้อผิดพลาดโปรโตคอลหรือไคลเอนต์ SOCKS5 |
| ส่งโดย | เซิร์ฟเวอร์ SOCKS5 (รหัสตอบกลับ) หรือไลบรารีไคลเอนต์ของคุณ (ไม่รองรับ) |
| กำหนดไว้ใน | SOCKS5: RFC 1928; username/password authentication: RFC 1929 |
| ลองใหม่อีกครั้งไหม? | ขึ้นอยู่กับรหัสตอบกลับ |
| ตรวจสอบก่อน | ยืนยันว่าไคลเอนต์รองรับ SOCKS5 พร้อมการรับรอง จากนั้นอ่านรหัสตอบกลับ |

## SOCKS5 proxy errors หมายความว่าอย่างไร?

SOCKS5 ที่กำหนดใน RFC 1928 ส่งต่อการเชื่อมต่อ TCP โดยไม่อ่าน HTTP การรับรองโดยชื่อผู้ใช้และรหัสผ่านเป็นการแลกเปลี่ยนเล็ก ๆ แยกต่างหาก กำหนดใน RFC 1929 หลังรับรองแล้ว ไคลเอนต์ขอการเชื่อมต่อไปยังโฮสต์และพอร์ต และเซิร์ฟเวอร์ตอบด้วยรหัสตอบกลับหนึ่งไบต์

รหัสตอบกลับ `0x00` หมายถึงสำเร็จ รหัส `0x01` ถึง `0x08` อธิบายความล้มเหลว ตั้งแต่ล้มเหลวทั่วไปของเซิร์ฟเวอร์ถึงประเภทที่อยู่ไม่รองรับ ไคลเอนต์แปลรหัสเหล่านี้เป็นข้อความของตนเอง

## a SOCKS5 error เป็นอย่างไรใน Python, curl, Node.js และเบราว์เซอร์?

ข้อผิดพลาดเดียวกันนี้แสดงผลแตกต่างกันในแต่ละเครื่องมือ นี่คือข้อความที่ต้องค้นหาในบันทึกของคุณ:

- **Python requests ไม่มี PySocks:** `InvalidSchema: Missing dependencies for SOCKS support.`
- **curl, รหัสรับรองถูกปฏิเสธ:** `curl: (97) User was rejected by the SOCKS5 server`
- **ตอบกลับ 0x01:** 'general SOCKS server failure'
- **ตอบกลับ 0x04 / 0x05:** 'ไม่สามารถเข้าถึงโฮสต์' / 'การเชื่อมต่อถูกปฏิเสธ' โดยเป้าหมาย
- **ตอบกลับ 0x08:** 'ประเภทที่อยู่ไม่รองรับ'

## อะไรเป็นสาเหตุของ a SOCKS5 error?

โอกาสสูงสุดอันดับแรก:

- **ไม่มีการติดตั้งรองรับ SOCKS** ในไลบรารีไคลเอนต์
- **รหัสรับรองผิดหรือไม่ได้เข้ารหัส URL**
- **พอร์ต HTTP ที่ใช้สำหรับ SOCKS** หรือพอร์ต SOCKS ที่ใช้กับ HTTP
- **เป้าหมายที่ปฏิเสธหรือไม่สามารถเข้าถึง** จากจุดออก
- **DNS ท้องถิ่นกับ `socks5://`**: ไคลเอนต์แก้ไขชื่อโฮสต์เอง ซึ่งอาจล้มเหลวหรือคืนที่อยู่ภูมิภาคผิด

## ฉันวินิจฉัย a SOCKS5 error ทีละขั้นตอนอย่างไร?

1. ยืนยันการรองรับ SOCKS: ใน Python, `pip show pysocks`; ใน Node.js ใช้แพ็กเกจตัวแทน SOCKS
2. ทดสอบ curl ด้านล่างกับพอร์ต SOCKS5 และ `--socks5-hostname`
3. อ่านรหัสตอบกลับหรือข้อความ
4. เปรียบเทียบ `socks5://` และ `socks5h://` สำหรับเป้าหมายเดียวกัน

*ทดสอบ URL ที่ล้มเหลวด้วย curl (พอร์ต HTTP, โหมดละเอียด)*

```bash
# Use the URL that fails; with https://api.ipify.org instead, you test the gateway alone.
# "HTTP/1.1 200 Connection established" first, then the site's own status: the site answered.
curl -v -x http://USERNAME:PASSWORD@gw.crawlrelay.com:7777 https://TARGET_URL

# Same test through the SOCKS5 port, with DNS resolved at the exit
curl -v --socks5-hostname gw.crawlrelay.com:7778 --proxy-user USERNAME:PASSWORD https://TARGET_URL
```

## ฉันจะแก้ไข a SOCKS5 error อย่างไร?

- **ติดตั้งการรองรับ:** `pip install "requests[socks]"`; ใน Node.js ใช้ตัวแทนพร็อกซี SOCKS
- **ใช้พอร์ต SOCKS5** สำหรับ URL `socks5h://` และพอร์ต HTTP สำหรับ URL `http://`
- **แนะนำ `socks5h://`** เพื่อให้จุดออกแก้ไข DNS ซึ่งตรงกับสิ่งที่ผู้เยี่ยมชมท้องถิ่นได้รับ
- **สำหรับรหัสตอบกลับ 0x04 หรือ 0x05** ให้ทดสอบเป้าหมายโดยไม่ใช้พร็อกซี อาจจะล่มหรือปฏิเสธ
- **สำหรับเบราว์เซอร์** ใช้พอร์ต HTTP: Chromium ไม่รองรับการรับรอง SOCKS5

*Python requests ผ่าน SOCKS5 (ติดตั้ง pip ด้วย "requests[socks]")*

```python
import requests

# socks5h:// sends the hostname to the proxy, so DNS resolves at the exit
proxy = "socks5h://USERNAME:PASSWORD@gw.crawlrelay.com:7778"
r = requests.get("https://api.ipify.org", proxies={"http": proxy, "https": proxy}, timeout=(10, 30))
print(r.status_code, r.text)
```

## ฉันควรลองใหม่หลังจาก a SOCKS5 error ไหม?

ลองเฉพาะกรณีล้มเหลวที่ฝั่งเป้าหมาย เช่น โฮสต์ไม่สามารถเข้าถึงหรือการเชื่อมต่อถูกปฏิเสธ และลองใหม่เพียงครั้งเดียวบนจุดออกใหม่ ส่วนล้มเหลวเรื่องรับรองและไม่มีการรองรับไคลเอนต์จะเกิดซ้ำจนกว่าคุณจะแก้ไขการตั้งค่า

## SOCKS5 proxy errors มีผลอย่างไรกับ CrawlRelay?

CrawlRelay ให้บริการ SOCKS5 บนพอร์ตของตัวเองด้านล่าง พร้อมชื่อผู้ใช้และรหัสผ่านรูปแบบเดียวกับพอร์ต HTTP การกำหนดเป้าหมายและเซสชั่นทำงานเช่นเดียวกันทั้งสองพอร์ต

เกตเวย์: `gw.crawlrelay.com`, พอร์ต 7777 (HTTP, HTTPS ผ่าน CONNECT) และพอร์ต 7778 (SOCKS5). รูปแบบชื่อผู้ใช้: `USERNAME-country-{cc}-state-{state}-city-{city}-zip-{zip}-asn-{asn}-session-{id}-ttl-{minutes}`. ที่เกี่ยวข้อง: [ไม่สามารถเชื่อมต่อกับ proxy](https://crawlrelay.com/th/docs/errors/cannot-connect-to-proxy/) · [คู่มือ curl](https://crawlrelay.com/th/docs/curl/) · [คู่มือ Python](https://crawlrelay.com/th/docs/python/).

## SOCKS5 proxy errors: คำถามที่นักพัฒนาถาม

### ความแตกต่างระหว่าง socks5:// กับ socks5h:// คืออะไร?

ด้วย `socks5://` ไคลเอนต์ของคุณจะแปลงชื่อโฮสต์เป็นที่อยู่ IP เองและส่ง IP ไปยัง proxy แต่กับ `socks5h://` จะส่งชื่อโฮสต์ไป และฝั่ง proxy จะทำการแปลง ใช้ `socks5h://` สำหรับขูดข้อมูล: DNS จะเกิดขึ้นที่ทางออก ดังนั้นคุณจะได้คำตอบตามภูมิภาคเดียวกับที่ผู้เยี่ยมชมท้องถิ่นได้รับ

### ฉันควรใช้ SOCKS5 หรือ HTTP proxy สำหรับการขูดข้อมูล?

สำหรับหน้าเว็บ ทั้งสองแบบใช้งานได้ และ HTTP proxy ง่ายกว่า: ทุกไลบรารี HTTP และเบราว์เซอร์รองรับพร้อมการตรวจสอบสิทธิ์ ใช้ SOCKS5 กับโปรโตคอลที่ไม่ใช่ HTTP หรือกับเครื่องมือที่รองรับ SOCKS เท่านั้น เบราว์เซอร์ที่ใช้ Chromium ไม่สามารถตรวจสอบสิทธิ์กับ SOCKS5 ได้ จึงควรใช้พอร์ต HTTP แทน

### ทำไม curl ถึงบอกว่า 'ผู้ใช้ถูกปฏิเสธโดยเซิร์ฟเวอร์ SOCKS5'?

เซิร์ฟเวอร์ SOCKS5 ปฏิเสธการแลกเปลี่ยนชื่อผู้ใช้และรหัสผ่าน ตรวจสอบข้อมูลรับรอง เข้ารหัส URL ตัวอักขระพิเศษ และยืนยันว่าคุณใช้พอร์ต SOCKS5 ชื่อผู้ใช้และรหัสผ่านเดียวกันต้องใช้ได้กับพอร์ต HTTP ถ้าบัญชียังใช้งานได้

## ข้อผิดพลาดพร็อกซีอื่นๆ ในเอกสารอ้างอิงนี้

- [401 Unauthorized vs 407](https://crawlrelay.com/th/docs/errors/401-unauthorized/)
- [403 Forbidden](https://crawlrelay.com/th/docs/errors/403-forbidden/)
- [407 Proxy Authentication Required](https://crawlrelay.com/th/docs/errors/407-proxy-authentication-required/)
- [429 Too Many Requests](https://crawlrelay.com/th/docs/errors/429-too-many-requests/)
- [502 Bad Gateway](https://crawlrelay.com/th/docs/errors/502-bad-gateway/)
- [503 Service Unavailable](https://crawlrelay.com/th/docs/errors/503-service-unavailable/)
- [504 Gateway Timeout](https://crawlrelay.com/th/docs/errors/504-gateway-timeout/)
- [Cannot connect to proxy (ProxyError)](https://crawlrelay.com/th/docs/errors/cannot-connect-to-proxy/)
- [Connection reset by peer (ECONNRESET)](https://crawlrelay.com/th/docs/errors/connection-reset/)
- [ERR_PROXY_CONNECTION_FAILED](https://crawlrelay.com/th/docs/errors/err-proxy-connection-failed/)
- [ERR_TUNNEL_CONNECTION_FAILED](https://crawlrelay.com/th/docs/errors/err-tunnel-connection-failed/)
- [Read timed out (ReadTimeout)](https://crawlrelay.com/th/docs/errors/read-timeout/)
- [SOCKS5 proxy errors](https://crawlrelay.com/th/docs/errors/socks5-proxy-errors/)
- [SSL: CERTIFICATE_VERIFY_FAILED](https://crawlrelay.com/th/docs/errors/ssl-certificate-verify-failed/)
- [SSL: WRONG_VERSION_NUMBER](https://crawlrelay.com/th/docs/errors/ssl-wrong-version-number/)

**พร็อกซีเรซิเดนเชียลที่มีเอกสารอธิบายกรณีล้มเหลว** พร็อกซีเรซิเดนเชียล CrawlRelay จาก US$0.50/GB, ปริมาณข้อมูลที่ไม่หมดอายุ [ดูราคา](https://crawlrelay.com/th/pricing/) · [เริ่มต้นอย่างรวดเร็ว](https://crawlrelay.com/th/docs/)

---

CrawlRelay: CrawlRelay คือพร็อกซีเรซิเดนเชียลหมุนเวียนพร้อมพร็อกซีมือถือ 4G/5G สำหรับนักพัฒนา เหมาะกับสแครปเปอร์และระบบจัดการข้อมูล AI: เติมเงินจ่ายตามการใช้งานจาก US$0.50/GB จ่ายด้วยคริปโต ไม่ต้องอัปโหลดบัตรประชาชน ไม่ต้อง KYC — ไม่ต้องใช้บัตรประชาชน ไม่ต้องถ่ายเซลฟี่ ไม่ต้องใช้เอกสาร จ่ายด้วยคริปโต
