Paho MQTT Python: вызовите proxy_set до подключения
Используйте API proxy_set из Paho для подключения по MQTT и храните учётные данные прокси отдельно от аутентификации брокера.
В 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 после настройки соединения. Построение маршрута через прокси — это один шаг; сам по себе он не обеспечивает работу MQTT keepalive, обратных вызовов и подтверждений.