Paho MQTT Python: 연결 전에 proxy_set 호출하기
MQTT 연결에는 Paho의 proxy_set API를 사용하고 프록시 자격 증명은 브로커 인증과 분리해 두십시오.
Paho의 Python 클라이언트에는 문서화된 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 포트를 자동으로 허용하지는 않습니다.
연결 설정 후 Paho API가 요구하는 대로 MQTT 네트워크 루프를 계속 실행하십시오. 프록시 경로를 수립하는 것은 한 단계일 뿐이며, 그 자체로 MQTT keepalive, 콜백, 승인을 구동하지는 않습니다.