ไคลเอนต์ Python ของ Paho มีเมธอด proxy_set ที่มีเอกสารกำกับ กำหนดค่าไคลเอนต์นั้นก่อนเชื่อมต่อกับโบรกเกอร์ MQTT:

client.proxy_set(proxy_type=socks.SOCKS5,
                 proxy_addr='203.0.113.10',
                 proxy_port=1080)

การทำเช่นนี้ถือว่าไคลเอนต์ Paho ที่เข้ากันได้และการสนับสนุน SOCKS ที่จำเป็นมีอยู่แล้ว ปลายทางเป็นเพียงตัวอย่าง สำหรับโบรกเกอร์ที่เข้าถึงได้จากสาธารณะบนเส้นทางพร็อกซีสาธารณะที่ได้รับอนุญาต รายการพร็อกซี SOCKS5 เสนอโฮสต์และพอร์ตที่เป็นตัวเลือก ตรวจสอบว่าโหนดอนุญาตปลายทางจริงของโบรกเกอร์ เมธอดนี้จัดทำเอกสารชนิดพร็อกซีที่รองรับและส่งต่อการพร็อกซีผ่าน PySocks

โบรกเกอร์ยังคงมีชื่อโฮสต์ พอร์ต ข้อกำหนด TLS และการพิสูจน์ตัวตน MQTT ของตัวเอง บัญชีพร็อกซีไม่ได้กลายเป็นชื่อผู้ใช้ที่ส่งไปยังโบรกเกอร์ เช่นเดียวกัน การตั้งค่าข้อมูลรับรองของโบรกเกอร์ไม่ได้พิสูจน์ตัวตนของฮอปพร็อกซี

ตรวจสอบการขนส่งของการเชื่อมต่อและปลายทางที่พร็อกซีอนุญาตเมื่อการตั้งค่าการเชื่อมต่อล้มเหลว พร็อกซีที่ขนส่งการท่องเว็บไม่ได้อนุญาตพอร์ต TCP ของโบรกเกอร์โดยอัตโนมัติ

คงลูปเครือข่าย MQTT ให้ทำงานตามที่ API ของ Paho กำหนดหลังการตั้งค่าการเชื่อมต่อ การสร้างเส้นทางพร็อกซีเป็นขั้นตอนเดียว มันไม่ได้ขับเคลื่อน keepalive, callback และการตอบรับของ MQTT ด้วยตัวเอง

บทความที่เกี่ยวข้อง