Я недавно купил умный термостат, который подключается к моему Wi-Fi. Я могу управлять устройством через приложение на моем телефоне.

Приложение оставляет желать лучшего, и я бы хотел написать свои сценарии на моем настольном ПК для подключения к устройству, чтобы контролировать и регистрировать данные с него.

Я могу видеть MAC-адрес и IP-адрес устройства в списке подключенных устройств в интерфейсе администратора маршрутизатора, но не могу определить, какой порт использует устройство для связи с приложением на моем телефоне.

Если бы существовало настольное приложение для устройства, я бы просто использовал fiddler для отслеживания трафика, но, видя, что приложение находится на моем телефоне, я не знаю альтернативы.

Я пробовал несколько сканеров портов и сканировал все порты на IP-адресе устройства, но безрезультатно.

Как я могу узнать, как приложение взаимодействует с устройством, чтобы перепроектировать его?

Дополнительные детали: приложение от производителя на Android, и я хотел бы общаться с устройством с ПК с Windows.

Изменить: я попытался, следуя инструкциям здесь: https://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/ConfigureForAndroid, чтобы перенаправить трафик моего телефона через Fiddler. Используя браузер на моем телефоне, я вижу, что трафик регистрируется в фиддлере, но при использовании приложения термостата ничего не регистрируется. Странный.

1 ответ1

0

Чтобы выяснить, какой порт используется в вашем приложении, вы можете либо прослушивать подключения к своим устройствам, пока вы используете приложение (ссылка в комментарии от Saaru Lindestøkke), либо установить эмулятор терминала на свой телефон Android и использовать команду netstat .

netstat -lt перечисляет все порты, которые ваше устройство или программное обеспечение прослушивает и ожидает TCP-соединений (netstat -lu делает то же самое для UDP-соединений).

netstat -lt

netstat -t выводит список всех текущих соединений TCP. используйте эту команду при использовании приложения, чтобы увидеть используемые порты из этого конкретного приложения. (netstat -u для UDP)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .