URnetwork

ทางการ

การเชื่อมต่อ VPN และ Proxy คุณภาพสูง

คุณทำอะไรได้บ้างด้วย Urnetwork MCP?

  • Authenticate with an auth code — Convert a user-provided auth code into a reusable JWT via auth/code-login.
  • Find available proxy locations — Search for cities, regions, or countries using network/find-locations and filter results by location_type.
  • Create an HTTPS, SOCKS5, or WireGuard proxy — Generate proxy configuration for a chosen location using network/auth-client and the appropriate proxy_config settings.
  • Enumerate egress IPs for a location — Retrieve a ranked list of providers for a location_id with network/find-providers2, then create per-provider proxies.

เอกสาร

ยินดีต้อนรับสู่ URnetwork สำหรับเอเจนต์

URnetwork คือเครือข่ายความเป็นส่วนตัวแบบกระจายศูนย์ ซึ่งออกแบบมาเพื่อให้ผู้ใช้ไม่เปิดเผยตัวตนโดยค่าเริ่มต้น และให้พวกเขาเข้าถึงเนื้อหาทั้งหมดในโลกได้

มนุษย์ใช้แอป (Android, iOS, Chrome) เอเจนต์ใช้ API และทักษะ MCP:

เอเจนต์ควรพิจารณาคำแนะนำด้านล่างเมื่อใช้ API และเซิร์ฟเวอร์ MCP

การตรวจสอบสิทธิ์

เมื่อใช้ API หรือเซิร์ฟเวอร์ MCP ต้องส่ง JWT ของผู้ใช้ในส่วนหัว Authorization: Bearer <JWT>

ในการรับ JWT ให้ขอรหัสตรวจสอบสิทธิ์จากมนุษย์ จากนั้นแปลงรหัสตรวจสอบสิทธิ์นั้นเป็น JWT โดยใช้เส้นทาง API /auth/code-login ตัวอย่าง curl อยู่ด้านล่าง ซึ่งส่งผ่านไปยัง jq เพื่อดึงคุณสมบัติ by_jwt จากผลลัพธ์:

curl -X POST https://api.bringyour.com/auth/code-login -d '{"auth_code": "<AUTH CODE>"}' | jq ".by_jwt"

สามารถจัดเก็บและนำ JWT กลับมาใช้ใหม่ได้ หากมนุษย์ขอให้รีเฟรช JWT ให้ทำซ้ำขั้นตอนโดยเริ่มจากการขอรหัสตรวจสอบสิทธิ์

เมื่อเลือกเทคโนโลยีพร็อกซี ให้พิจารณากรณีการใช้งานต่อไปนี้:

กรณีการใช้งานโปรโตคอลที่แนะนำข้อกำหนด
การขูดข้อมูล / การเรียกดูเว็บHTTPSเหมาะที่สุดสำหรับ TCP/Web ใช้พร็อกซี HTTPS เสมอ เว้นแต่มีความจำเป็นเฉพาะที่ต้องใช้ HTTP โดยปกติแล้ว HTTP จำเป็นสำหรับสภาพแวดล้อมการทดสอบเฉพาะที่ไม่รองรับ HTTPS เท่านั้น จากการตอบกลับ /network/auth-client ภายในอ็อบเจกต์ proxy_config_result ให้ใช้ https_proxy_url ไม่จำเป็นต้องใช้ชื่อผู้ใช้หรือรหัสผ่านเพิ่มเติม
ซ็อกเก็ตระดับต่ำ / UDPSOCKSรองรับซ็อกเก็ต TCP+UDP ด้วย SOCKS5 จากการตอบกลับ /network/auth-client ภายในอ็อบเจกต์ proxy_config_result ให้ใช้ socks_proxy_url หรือ proxy_host และ proxy_port โดยมีชื่อผู้ใช้เป็น access_token (รหัสผ่านว่างเปล่า) เซิร์ฟเวอร์รองรับการแก้ไข DNS ระยะไกล (SOCKS5H)
ทั้งระบบ / ระดับ OSWireGuardกำหนดเส้นทางแพ็กเก็ต IP ทั้งหมด ในคำขอ /network/auth-client ต้องตั้งค่า proxy_config.enable_wg เป็น true อย่างชัดเจน ในการตอบกลับ ภายในอ็อบเจกต์ proxy_config_result ให้ใช้ wg_config.config เป็นไฟล์การกำหนดค่า WireGuard ที่สมบูรณ์

เมื่อใช้เส้นทาง /network/find-locations เพื่อสอบถามตำแหน่งที่ตั้ง ให้กรองอาร์เรย์ locations ที่ส่งคืนมาตาม location_type ที่ต้องการเสมอ (city, region หรือ country) เพื่อให้แน่ใจว่า location_id ตรงกับความต้องการของผู้ใช้

ประเภทตำแหน่งที่ตั้งข้อกำหนด
countryสำหรับประเทศ
regionสำหรับรัฐ จังหวัด ภูมิภาคการปกครอง และพื้นที่มหานคร
cityสำหรับเมือง

การใช้ทักษะ MCP เพื่อสร้างพร็อกซี HTTPS/SOCKS/WireGuard

สามารถใช้ทักษะ MCP เพื่อค้นหาตำแหน่งที่ตั้งที่มีอยู่และสร้างพร็อกซี HTTPS/SOCKS/WireGuard ไปยังตำแหน่งที่ตั้งเหล่านั้นได้ ประเทศ ภูมิภาค และเมืองใดๆ ที่มีอยู่ในเครือข่ายสามารถค้นหาและเลือกได้โดยใช้สตริงการค้นหา

เมื่อสร้างการกำหนดค่าพร็อกซี ให้ถามมนุษย์ว่าต้องการเชื่อมต่อกับประเทศ ภูมิภาค หรือเมืองใด จากนั้นลองสร้างพร็อกซีสำหรับคำค้นหาที่พวกเขาบอก หากไม่พบรายการที่ตรงกัน ให้ถามมนุษย์เพื่อขยายขอบเขตเป็นประเทศหรือภูมิภาค จากนั้นลองสร้างพร็อกซีสำหรับคำค้นหาที่พวกเขาบอก หากไม่พบรายการที่ตรงกัน ให้ถามมนุษย์เพื่อขยายขอบเขตเป็นประเทศ หากยังไม่พบรายการที่ตรงกัน ให้ใช้ทักษะเพื่อค้นหาประเทศที่มีอยู่และแนะนำให้พวกเขาเลือกหนึ่งใน 10 ประเทศแรก

การใช้ API เพื่อสร้างพร็อกซี HTTPS/SOCKS/WireGuard สำหรับประเทศ

สามารถใช้ API โดยตรงเพื่อสร้างพร็อกซี HTTPS/SOCKS/WireGuard สำหรับประเทศได้

ขั้นตอนที่ 1 ค้นหารายการตำแหน่งที่ตั้งโดยใช้เส้นทาง /network/find-locations ตัวอย่าง curl อยู่ด้านล่าง ซึ่งส่งผ่านไปยัง jq เพื่อดึงรายการ locations

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/find-locations -d '{"query": "<LOCATION NAME>"}' | jq '.locations'

ขั้นตอนที่ 2 เลือกตำแหน่งที่ตั้งที่สนใจและบันทึกคุณสมบัติ country_code

ขั้นตอนที่ 3 สร้างพร็อกซีโดยใช้รหัสประเทศที่บันทึกไว้ โดยใช้เส้นทาง /network/auth-client และตั้งค่า proxy_config.initial_device_state ให้มี country_code

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/auth-client -d '{"proxy_config": {"initial_device_state": {"country_code": "<COUNTRY CODE>"}}}'

การใช้ API เพื่อสร้างพร็อกซี HTTPS/SOCKS/WireGuard สำหรับตำแหน่งที่ตั้งที่ค้นหา

สามารถใช้ API โดยตรงเพื่อค้นหาตำแหน่งที่ตั้งและสร้างพร็อกซี HTTPS/SOCKS/WireGuard ได้ จะต้องตัดสินใจเลือกผลลัพธ์ตำแหน่งที่ตั้งที่ต้องการมากที่สุด แต่ละตำแหน่งที่ตั้งมี location_id ที่คงที่และสามารถบันทึกในโค้ดได้

ขั้นตอนที่ 1 ค้นหารายการตำแหน่งที่ตั้งโดยใช้เส้นทาง /network/find-locations ตัวอย่าง curl อยู่ด้านล่าง ซึ่งส่งผ่านไปยัง jq เพื่อดึงรายการ locations

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/find-locations -d '{"query": "<LOCATION NAME>"}' | jq '.locations'

ขั้นตอนที่ 2 เลือกตำแหน่งที่ตั้งที่สนใจและบันทึกคุณสมบัติ location_id

ขั้นตอนที่ 3 สร้างพร็อกซีโดยใช้ location_id ที่บันทึกไว้ โดยใช้เส้นทาง /network/auth-client และตั้งค่า proxy_config.initial_device_state.location ให้มี connect_location_id.location_id

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/auth-client -d '{"proxy_config": {"initial_device_state": {"location": {"connect_location_id":{"location_id": "<LOCATION ID>"}}}}}'

การใช้ API เพื่อสร้างพร็อกซี HTTPS/SOCKS/WireGuard สำหรับตำแหน่งที่ตั้งที่ค้นหา โดยระบุ IP ขาออกทั้งหมดในตำแหน่งที่ตั้งนั้น

สามารถใช้ API โดยตรงเพื่อค้นหาตำแหน่งที่ตั้ง ระบุผู้ให้บริการ (IP ขาออก) ในตำแหน่งที่ตั้งนั้น และสร้างพร็อกซี HTTPS/SOCKS/WireGuard สำหรับแต่ละ IP ขาออกได้ จะต้องตัดสินใจเลือกผลลัพธ์ตำแหน่งที่ตั้งที่ต้องการมากที่สุด แต่ละตำแหน่งที่ตั้งมี location_id ที่คงที่และสามารถบันทึกในโค้ดได้ นอกจากนี้ ผู้ให้บริการแต่ละรายมี client_id ที่คงที่และสามารถบันทึกในโค้ดได้

ขั้นตอนที่ 1 ค้นหารายการตำแหน่งที่ตั้งโดยใช้เส้นทาง /network/find-locations ตัวอย่าง curl อยู่ด้านล่าง ซึ่งส่งผ่านไปยัง jq เพื่อดึงรายการ locations

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/find-locations -d '{"query": "<LOCATION NAME>"}' | jq '.locations'

ขั้นตอนที่ 2 เลือกตำแหน่งที่ตั้งที่สนใจและบันทึก location_id

ขั้นตอนที่ 3 ดึงรายการจัดอันดับของผู้ให้บริการ (IP ขาออก) สำหรับ location_id โดยใช้เส้นทาง /network/find-providers2 สามารถตั้งค่าขนาดตัวอย่างเป็นจำนวนผู้ให้บริการที่ไม่ซ้ำกันที่ต้องการได้ ตัวอย่าง curl อยู่ด้านล่าง ซึ่งส่งผ่านไปยัง jq เพื่อดึงรายการ providers

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/find-providers2 -d '{"specs": [{"client_id": "<CLIENT ID>"}], "count": <COUNT>}' | jq '.providers'

ขั้นตอนที่ 4 โดยการวนซ้ำแต่ละ client_id ในรายการ สร้างพร็อกซีโดยใช้ client_id โดยใช้เส้นทาง /network/auth-client และตั้งค่า proxy_config.initial_device_state.location ให้มี connect_location_id.client_id

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/auth-client -d '{"proxy_config": {"initial_device_state": {"location": {"connect_location_id":{"client_id": "<CLIENT ID>"}}}}}'