Подключаться к сайту в локальной сети, не зная IP
Я создаю встроенное устройство (на основе RPi), которое будет подключаться к локальной сети. Я хотел бы, чтобы это устройство могло настраивать устройство через веб-страницу (почти так же, как многие маршрутизаторы).
Я хотел бы, чтобы пользователь набрал [http://my-device-config] (или какой-либо другой фиксированный адрес) в веб-браузере и отправил его на страницу конфигурации без необходимости знать IP-адрес устройства.
Пользователь предпримет следующие шаги:
- Пользователь подключает устройство к сети / включает устройство.
- Пользователь вводит адрес "config" в браузер и переходит на страницу конфигурации. (Не требуется настройка сети / поиск IP и т. Д.)
По результатам исследований я считаю, что Avahi (/Bonjour/Zeroconf) может сделать это возможным, однако мне неясно, по каким следующим вопросам:
- Является ли Avahi самым простым способом сделать это?
- Будет ли это работать, если мое устройство - это единственное устройство в локальной сети, на котором работает Avahi? (т.е. нет необходимости устанавливать программное обеспечение на любые другие компьютеры в сети).
- Будет ли это работать на разных платформах (osx/*nix/windows)?
- Будет ли это работать через браузеры?
Спасибо за любую помощь / понимание.
1 ответ
Решение
- Это самый простой и самый совместимый, но не достаточно для вашего случая.
- Краткий ответ - НЕТ. Более длинный ответ - обычно Apple включает в себя все, Linux часто поставляется с Avahin On, мир Windows не будет двигаться, если вы не настроите его так. Но альтернативы еще хуже.
- Кстати, так и будет. Avahi - это реализация с открытым исходным кодом (читай мир linux/bsd), в то время как у Apple есть собственные проприетарные вещи (они начали целую историю с zeroconf), а в мире Windows есть собственная реализация zeroconf. Вам также понадобится, чтобы никто не использовал домен.local в конкретной локальной сети - существует определенная ненулевая вероятность того, что в сетях, принадлежащих компании, будет.local, уже заполненный сетью Microsoft.
- Хм, теоретически да - Avahi - это, в сущности, низкоуровневый DNS с немногими другими составляющими низкого уровня. Так что, если в вашей системе есть DNS-преобразователь, и он может иметь плагин, который тянет под хуками клиент / сервер Avahi - тогда браузер должен работать хорошо. В течение последних нескольких лет у меня не было побочных эффектов на машинах Linux с Firefox и другим сетевым оборудованием (например, настройка принтера через веб-сервер с указанием avahi на принтере). Адрес для них выглядит как http://my-device.local/ или http://thatprinterfromfloor5.local/ т. Е. What.local.