Как использовать DNS-имя в локальной сети для запроса веб-сервера ESP32 с устройства Android?

Я хотел бы использовать DNS-имя вместо IP-адреса, когда я запрашиваю свой сервер ESP32 (который управляет освещением) в моей локальной сети, а не использовать vIP, назначенный DHCP.

Поэтому я попробовал библиотеку DNS для ESP32, и она работает только тогда, когда я ввожу имя DNS в браузере на своем ПК, но не на устройстве Android.

Я искал, почему на устройствах Android возникает эта проблема, но не нашел решения. Итак, мой вопрос, каковы мои варианты? Первое, что приходит мне на ум (но это сложное нестандартное мышление и обходной путь), — это использование какой-либо общедоступной бесплатной серверной службы, такой как Heroku, откуда я получу веб-страницу с некоторым Javascript, который будет искать мой сервер ESP32. в моей локальной сети (не уверен, что это возможно). Я хотел бы, чтобы мое решение работало в любой локальной сети без настройки маршрутизатора или настройки устройства Android.

, 👍-2

Обсуждение

Итак, вы настроили ESP в качестве DNS-сервера и указали свой браузер на ПК на этот DNS-сервер? В чем именно заключалась ваша проблема с соответствующей настройкой устройства Android? Можете ли вы установить ESP в качестве DNS-сервера в конфигурации маршрутизатора? Некоторые браузеры предоставляют надстройки для обнаружения mDNS., @chrisl


1 ответ


-2

Да, mDNS хорошо работает с ПК, но когда вы пытаетесь использовать его на Android, он терпит неудачу, потому что Android запрашивает Интернет напрямую, не заглядывая в локальную сеть. Если вы хотите идентифицировать устройство в локальной сети, вы можете попробовать сканировать локальную область в этом конкретном октете, например (192.168.1.xxx). На вашем устройстве Android вы сможете получить IP-адрес вашего устройства, а затем легко получите свой сетевой идентификатор, а затем вы можете попробовать сканировать через сеть. Или гораздо лучшим подходом будет использование диспетчера Wi-Fi, хотя он не решает вашу проблему напрямую, но да, он поможет вам динамически обмениваться учетными данными Wi-Fi, и в конце вы получите IP-адрес устройства. HTML-страница находится в самой библиотеке.

,