Я новичок в использовании MQTT, и я запустил брокера Mosquitto на моем Raspberry Pi.
Когда я пытаюсь подключиться к нему с моего ПК с Windows cmd, он работает нормально, я просто набираю mosquitto_sub -h raspberrypi -t "test/message"
, и он подписывается на эту тему и видит, что я публикую в ней.
Проблема заключается в подключении к нему моего телефона - я пробовал использовать несколько приложений, включая это: https://github.com/leonardocavagnis/MQTTClientSample_Android, и я могу подключиться к брокеру Raspberry Pi только по IP-адресу: tcp://<ip_address>:1883
работает нормально, но IP изменяется в моей локальной сети, поэтому Я хотел вместо этого использовать tcp://raspberrypi:1883
, чтобы не было проблем с подключением, но он тогда не подключается. В чем может быть проблема?
Если я вас правильно понял, то все устройства подключены к одному роутеру по Wi-Fi
В вашем телефоне нет клиента mDNS, поэтому он не может разрешать локальные имена хостов. В Windows и Raspbiean есть этот клиент.
Итак, если я понимаю, что статический IP-адрес на RPI - это единственный способ добиться стабильного адреса подключения для телефона и других конечных точек, таких как Wemos?
@JDAllen В Windows нет клиента mDNS, если что-то недавно не изменилось. (Единственный способ получить его - установить драйверы принтера Apple)
@PatrykLipka Заставить ваш маршрутизатор выдать Pi статический IP-адрес, вероятно, будет самым простым вариантом.
@hardillb, спасибо, я установил статический IP-адрес на Raspberry PI со значением 125 выше минимального, которое мой маршрутизатор динамически устанавливает для устройств, этого буфера должно быть достаточно
@hardillb Windows 10 имеет один .... по крайней мере, мой v20H2 (19042.867) разрешает их.
Что предоставляет службы DNS для вашей сети и использует ли их ваш телефон?